0

現在、マージ レプリケーションを使用しているパブリッシャーは 1 人、サブスクライバーは 4 人です。スキーマの変更により、誰かが「再初期化する前にサブスクライバーで変更をアップロードする」オプションをチェックせずに「すべてのサブスクリプションを再初期化」アクションを実行しました。最初のサーバーのレプリケーション エージェントが開始されたときに、データベースが消去されました。(すべてのテーブルが削除され、再作成されます) そして、最後に成功した同期以降のすべての変更が失われました。この時点で、レプリケーション スケジュールを完全に無効にすることにしました。私の質問は、「すべてのサブスクリプションを再初期化する」アクションを元に戻す方法はありますか? サブスクライバでのすべての変更が失われないようにすることが望ましいです。

前もって感謝します、

デビッド

4

1 に答える 1

0

再初期化アクションの前に、パブリッシャ データベースのバックアップを復元できました。(これは、現在のパブリッシャー データベースの別のバックアップを作成した後に行われました。) その後、再初期化アクションを含むデータベースからの再初期化アクション以降に行われた変更を、復元されたバックアップに手動で再適用しました。(Redgate sql データ比較を使用しました)。この時点で、レプリケーション プロセスを開始することができ、すべてが正常に機能しました。したがって、明らかにスナップショット情報は、それが適用されるデータベース内に完全に保存されます。

これを指摘してくれた Hilary Cotter に特に感謝します。

于 2012-06-18T08:36:16.743 に答える