Faqs

Syniti DR -機能(レプリケーション)

ミラーリング時の更新サイクルはどのくらいですか?

デフォルト値は60秒です。変更可能ですが、30秒~5分が推奨値となっております。

リフレッシュ実行中にソースに更新があった場合はどうなりますか?

リフレッシュ完了後にミラーリングモードに移行し、更新分が差分レプリケーションされます。

レプリケーション定義を一括で作成する方法はありますか?

予めソース・ターゲットの接続設定を済ませたうえで「マルチレプリケーション作成」を選択することで可能です。

ターゲット→ソースへのリフレッシュは可能ですか?

リフレッシュはソース→ターゲット方向のみサポートしております。

シンクロナイゼーション(双方向)における処理シーケンスを教えてください。

以下の流れとなります。

ソースのトランザクションログを検索⇒ターゲットのトランザクションログを検索⇒ソースからターゲットへの更新処理⇒ターゲットからソースへの更新処理

ミラーリングの真っ最中にスケジュールリフレッシュの時間になった場合はどのような挙動になりますか?

ミラーリングプロセス終了後にリフレッシュされます。強引に割り込むことはありません。

ミラーリング・シンクロナイゼーションの処理速度を上げる方法はありますか?

Data Replicator Option画面にある「Thread Execution Factor」の値を増やすことで処理速度の向上が期待できます。

シンクロナイゼーション時に双方の同じレコードを更新した場合にはどうなりますか?

下記のオプションから選択可能です。
・ソースDBを優先する
・ターゲットDBを優先する
・TimeStampの早いほうを優先する(先勝ち)
・カスタムスクリプト(上記3つ以外の挙動を設定したい場合など)
なお、「TimeStampの遅いほうを優先(後勝ち)」としたい場合には、カスタムスクリプトの記述が必要となります。

ソースDBとターゲットDBで文字コードが異なっていても大丈夫?

問題ありません。DBMotoで文字コード変換を吸収します。
DBMoto内部ではUnicodeで処理され、双方のDBに対して文字コード変換を行います。

スケジュール機能はありますか?

はい、あります。
リフレッシュを定期的に実行するリフレッシュスケジュール、ミラーリングを実行する日時を制限するミラーリングスケジュールの設定が可能です。
スケジュールは時・分・秒、年・月・日・曜日単位で細かく設定でき、複数設定も可能です。

DB障害が発生してレプリケーションが停止した際の復旧が心配です。データの不整合が発生してしまうのでは?

DBMotoは最後に更新したトランザクションIDを常に保持しておりますので、DB障害復旧後には、障害発生前の最後のトランザクションIDからレプリケーションを再開します。よって通常はデータの不整合が発生することはまずありません。

ミラーリングでソースに対してレコードの更新や削除を行った際に、ターゲット側にレコードが存在しなかった場合にはどのような挙動になりますか?

エラーメッセージ「ターゲットにレコードが存在しません」をログファイルに出力し、更新時にはターゲットに対して登録処理が行われます。オプション設定変更により登録処理を行わないようにもできます。

DBMotoで使用する通信の種類とポートを教えてください。

TCP/IPで通信し、DB で使用するデフォルトポートを使用します。例えばOracleの場合はデフォルトで1521を使用します。

マルチシンクロナイゼーションにおいて、ソースとターゲットの複数で同じタイミングで同一レコードの更新をかけた場合、どのサーバのレコードが優先されますか?

ソースとターゲットで同一レコードの更新があった場合の挙動は以下から選択可能です。
・ソースDBを優先する
・ターゲットDBを優先する
・TimeStampの早いほうを優先する
・カスタムスクリプト(上記3つ以外の挙動を設定したい場合など)
さらにターゲットの複数サーバで同一レコードの更新があった場合には、TimeStampの早いほうが優先されます。