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
Table1
とTable2
複製していました。 Table3
- そうではありません。
パブリッシャとサブスクライバのそれぞれに外部キーTable2_Table3
を追加しました。
この後私たちが@ Remus Rusanuの回答に対する私たちのコメントで説明したようにエラーを受け取るようになりました。
我々は削除し、複製を受けていないテーブルの外部キーの指示の競合に加入者DBのエラーを持っています。また、操作を強制したり削除したりもしませんでした。おそらく競合を解決するために、すべての削除操作は初期化されたレプリケーション自体でした。 –