0

私たちの会社では、さまざまな都市で多くの DB サーバーを使用しています。あるサーバーのデータを別のサーバーと同期する必要がある場合があります。たとえば、テーブルの「監視」値では、「ステータス」と「日付」が非常に頻繁に更新される場合があります。私の問題は、これらの値がサーバー A で更新されたときに、サーバー B でも更新する必要があることです。

  • Update Monitor set(date='2013-06-13') その後
  • 「更新監視セット(状態=4)」

    サーバー A では両方の値の更新が成功しますが、サーバー B (通常は負荷が最も高い) では、約 1 秒かかることがあります。date0.03% のケースは値のみを更新し、まだstatus古いです。高負荷のDBサーバーで可能ですか?

4

1 に答える 1

1

それぞれが実行しているボックス、ログ、およびワークロードを見ずに説明するのは困難です。テーブルと行のロック、ネットワークによってドロップされた要求、未完了のトランザクションなど、サーバー "B" がデータを失う原因となることが何千もあります。正確に調べるには、ロギングをオンにして、「A」と「B」のリクエストを比較する必要があります。ただし、最初に行うことは、SQL ログでエラーを探すことです。

しかし、一般に、MS と Oracle で利用可能な既存のテクノロジを使用して、リージョン間でデータベースの同期を維持することは可能です。1 つのシナリオでは、マスター、中央データベースを使用してすべてのリクエストを受信します。次に、SSIS または WAN 経由の通常の DB 接続を使用して、挿入、更新、削除、クエリを地域の DB に配信します。

これは、SQL Server で利用できるテクノロジ ソリューションの概要ガイドです。

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

あなたはおそらく簡単な答えを探していたでしょうが、私はそれがないと思います.

于 2013-06-13T07:18:28.227 に答える