1

2つのMS SQL Server 2008 R2の間にトランザクションレプリケーションがあります。SQL Server 2008 R2のレプリケーションに関する問題(サブスクライバによる配布)

ハードドライブが故障してサーバーが再起動されました。
複製が自動的に継続します。しかし、このようなエラーが発生してから1時間後に:

The subscription(s) have been marked inactive and must be reinitialized. NoSync subscriptions will need to be dropped and recreated. 

ログリーダーエージェントが動作し、ディストリビューターにトランザクションを送信します。 しかし、代理店は加入者との同期ができなくなりました。

また、購読者は代理店に変更を送信することができます。すべての競合は販売代理店によって解決されました。

サブスクリプションの再初期化を除いてレプリケーションが動作する別の方法であるかどうかを知りたいですか?

このエラーは、おそらくディスク障害ではないことがわかりました。
我々は新しい外部キーを追加しました:

だから、それがあった:

Publisher Table1 Table2 Table3 
Subscriber Table1 Table2 Table3 

Table1Table2複製していました。 Table3 - そうではありません。
パブリッシャとサブスクライバのそれぞれに外部キーTable2_Table3を追加しました。

この後私たちが@ Remus Rusanuの回答に対する私たちのコメントで説明したようにエラーを受け取るようになりました。

答えて

0

ディストリビューターエージェントはどのようなエラーを報告しましたか?エラーは、レプリケーションモニタのサブスクリプションの詳細に表示されます。またMSrepl_errorsに誤り自身のため見ることができます:

contains rows with extended Distribution Agent and Merge Agent failure information. This table is stored in the distribution database.

+0

我々は削除し、複製を受けていないテーブルの外部キーの指示の競合に加入者DBのエラーを持っています。また、操作を強制したり削除したりもしませんでした。おそらく競合を解決するために、すべての削除操作は初期化されたレプリケーション自体でした。 –

関連する問題