web-dev-qa-db-ja.com

双方向レプリケーション

少し問題があります...

私はこのケースを持っています:

  • 2つのサーバーインスタンス

  • 2データベース

  • 1テーブル(5列)

From server 1DB1にあるテーブルのすべての列を複製するパブリケーションを作成しました。

From server 2DB1にあるテーブルからすべての列をプルするサブスクリプションを作成しました。

しかし今、同じテーブルの列をserver 2からserver 1にパブリッシュする必要があります。また、同じDBにある必要があります...

ロジックを使用してserver 2およびサブスクリプションserver 1のパブリケーションを作成しようとしましたが、エラーが表示されます:

パブリッシャをサブスクライバとして選択し、パブリッシングデータベースと同じサブスクリプションデータベースを入力しました。別のサブスクリプションデータベースを選択します。

I need it to be A to B and B to A replication

誰かが私の問題を理解して、私に答えてくれることを願っています。

pS必要に応じて詳細情報を求めてください...

3
Nidzaaaa

あなたの説明から、双方向レプリケーションが必要であるかのように見えます。マージレプリケーション、双方向トランザクションレプリケーション、またはピアツーピアレプリケーションの使用を検討してください。

適切なレプリケーションの種類の選択 を読んで、アプリケーションの要件に最も適したレプリケーションの種類を確認することをお勧めします。

5

双方向のトランザクションレプリケーションを実装するためのステップバイステップガイドです。

これは、次のMSDNの説明に基づく要件を満たしている必要があります。

たとえば、2つのサーバー(サーバーAとサーバーB)がある場合、次の両方の条件に該当する場合、サーバーは双方向トランザクションレプリケーションにあると言います。

サーバーAのテーブルT1に加えられた変更は、サーバーBのテーブルT1に複製されます。

サーバーBのテーブルT1に加えられた変更は、サーバーAのテーブルT1に複製されます。

ただし、これは実装や保守が簡単ではなく、T-SQLを使用せずに適切に管理することはできません。 SSMSのGUIは、多くの場合、ユーザーが実行できる機能に欠陥があります。

レプリケーションを使用する必要がありますか?よりシンプルなソリューションが理想的です...おそらくSql Serverエージェントのジョブで十分でしょうか、それともSSISパッケージでも十分でしょうか?

2