PowerReplication ユーザーズガイド V3.0 - Microsoft(R) Windows(R) 2000, Microsoft(R) Windows Server(TM) 2003 - |
目次
索引
![]() ![]() |
第2章 PowerReplicationの機能と仕組み | > 2.2 レプリケーションサービスの機能 |
PowerReplicationにおける競合について説明します。
差分同期を行う場合、同期実行から次の同期実行の間にマスタとレプリカで同じキー値のレコードを更新、追加、または削除を行うと、データベース間の整合性が保てない状態になります。このような状態を「競合」といいます。
運用形態が共用で「競合」が発生すると、マスタまたはレプリカの更新情報が破棄されます。
マスタグループ定義の作成時に[競合解消ルール]を選択することによって、更新情報を破棄する条件を設定できます。これによって、単純な競合は解消できますが、1回のトランザクション区間内で複雑な追加、更新、削除を行うと、競合が解消できない場合があります。
競合が発生しないように、利用者プログラムおよび運用を設計してください。
なお、同じキー値の同一レコードでも、マスタとレプリカで異なる項目を更新した場合は、競合は発生しません。
競合が発生すると、詳細メッセージ情報ファイルに詳細情報が出力されます。出力内容の詳細は、"付録F 詳細メッセージ情報ファイルの出力形式"を参照してください。
また、マスタグループ定義およびレプリカグループ定義の作成時に[競合検出を行う]を設定した場合、競合が発生したことをイベントビューア(アプリケーションログ)に警告として通知されます。
競合の発生条件には、以下の三つがあります。
データを更新することによって発生する競合です。
反映先に更新を反映しようとしているデータが、前回の同期で反映したデータから変更されている場合に競合が発生したと判断します。
レコードを追加することによって発生する競合です。
反映先に追加しようとしているレコードがすでに反映先のデータファイルに存在している場合に競合が発生したと判断します。
レコードを削除することによって発生する競合です。
反映先で削除しようとしているレコードが存在しない場合、または更新情報ファイルの削除前のレコードと反映先の現レコードが一致しない場合に競合が発生したと判断します。
目次
索引
![]() ![]() |