0

私は2つのサーバーを持っています。
パブリッシャ(サーバーA)にマージレプリケーションをインストールし、同じデータベース名で2つのサブスクリプションを追加しました。

- 1つはサイト運営者自身で、もう1つはサブスクライバ(サーバーB)にあります。レプリケーションはうまくいきます。 は、私は出版社が新しく接続されたデータベースに同期し続けるだろうと思ったが、残念ながら、それパブリッシャ上subscibedデータベース(サーバーA)を削除し、サーバーBから加入したデータベースのコピーによって

をそれを交換したいです期待どおりに動作しませんでした、それはスナップショットなどをaplying始めた。

コピーしたデータベースを変更して、パブリッシャが削除したデータベースとして再設定して同期を継続できるようにするものはありますか?購読しているデータベースをパブリッシャーサーバーにコピーする

答えて

0

データベースをパブリッシャとして構成するすべてのメタデータは、データベースに格納されます。したがって、データベースを削除すると、パブリケーションも削除されます。以前のサブスクリプションであったデータベースを移動してパブリッシャにするには、最初からやり直すのと同じ方法でデータベースを初期化し、パブリッシャとして構成する必要があります。

しかし、あなたがしようとしていることを模倣することができるいくつかのトリックがあります。すなわち、あなたのサブスクリプションをバックアップします。その後、サイト運営者からすべてのデータを削除して同期します。パブリケーションを削除しないでください。データベース内のデータだけを削除してください。同期によって削除がサブスクライバにもマージされますが、それがバックアップの理由です。

その時点で、サブスクライバに戻したサブスクリプションのバックアップを復元します。 「レプリケーション情報を保持する」が設定されていることを確認します。一度復元されると再び同期します。その結果、サブスクリプションバックアップの元のデータは、復元前に空だったパブリッシャにマージする唯一のデータになります。

私は個人的には実際に試していませんが、理論的にはうまくいくはずです。マージ・レプリケーション・スキームのバックアップとリストアについての詳細はこちらをご覧ください。

http://msdn.microsoft.com/en-us/library/ms152497.aspx

関連する問題