1

2 つの MS 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 の回答へのコメントで説明したように、エラーが発生し始めました。

4

1 に答える 1

0

ディストリビューター エージェントが報告したエラーは何ですか? エラーは、レプリケーション モニターのサブスクリプションの詳細に表示されます。でエラーを自分で探すこともできますMSrepl_errors

拡張されたディストリビューション エージェントおよびマージ エージェントのエラー情報を含む行が含まれます。このテーブルは、ディストリビューション データベースに格納されます。

于 2010-12-15T21:18:26.187 に答える