1

レプリケーション関連の問題、

私は自分のアーキテクチャを説明しています。

私は、そのtransactinal複製プロセスを作成しました

  1. 2以下に示すテーブルベンダースクリプトのパブリッシャー、
  2. ディストリビューター
  3. 2人の加入者

データレプリケーションの設定は次のようになります。

テーブルベンダーは、ディストリビューターを介して2つのパブリッシャーから2つのサブスクライバーに複製されます。

レプリケーション中に、ディストリビューターデータベースで次のようにエラーが発行されました:

ここで、何が起こらなければならないか

Pub1(pubsテーブルベンダーを作成します)–>ディストリビューターに(ベンダー)データを挿入します。->サブスクライバーによるプル

私のために今起こっていることは、

Pub1(pubsテーブルベンダーを作成します-完了)->ディストリビューターデータベースでエラーをスローします

レプリケーション-レプリケーション配布サブシステム:エージェントabc-serv1 \ PRD01-star-star Billing-PROD-VREPL1\REPL01-25が失敗しました。PRIMARYKEY制約「PK_vendors」の違反。オブジェクト'dbo.vendors'に重複するキーを挿入できません。

パブリッシャーからディストリビューターへの操作中にエラーが発生します。

4

1 に答える 1

0

トランザクション レプリケーションを使用する場合、パブリッシャーの主キーをサブスクライバーで維持する必要があります。指定されたキー値を持つレコードがサブスクライバーに既に存在するかのように聞こえます。

トポロジの説明から、2 つの別個のパブリケーションがあります。

そう:

  • サブスクライバー 1 はパブリケーション 1 を受け取ります
  • サブスクライバ 2 がパブリケーション 2 を受信

クロスオーバーはありますか。つまり、サブスクライバー 2 もパブリケーション 1 を受信できますか? その場合、両方のパブリッシャーでキー範囲を管理するか、マージ レプリケーションなどの代替レプリケーション テクノロジを使用しない限り、プライマリ キーの競合が発生します。

于 2010-06-28T08:02:56.833 に答える