0

私たちの組織には、個別のグローバルサーバーに複製する非常に大規模なデータベースがあります。

私たちのデータベースでは、一部のテーブルに特定の地域専用のデータが含まれているため、それらの地域内にいるユーザーに専用情報への特権を提供します。

transactions_australia, transactions_dubai

)。

地域テーブルとは異なり、世界のすべての地域からの情報を含むグローバルテーブルがあります。

person, address, contacts

)。

私たちが直面している問題は、この情報に対する特権をユーザーに与えるときに、克服しようとしているセキュリティリスクを提示することです。

ヘッドプログラマーは、特定の地域のデータのみを別のデータベースに抽出できるクエリを介してグローバルテーブルに存在するデータを複製し、レポートの実行やデータの抽出が必要になるたびにこの複製を実行することを提案します。

11以上のテーブル(数十万のレコードを含む)のレコードを複製する時間は非常に長くかかり、データの整合性と同期の問題も危険であるため、このアプローチに完全には同意しません。

私はこの複製アプローチの代替案を探しています。

特定のサーバーへの条件付きレプリケーションを設定する方法はありますか?

例えば。

個人レコードが更新され、その個人がオーストラリア地域に属している場合、レコードはマスターサーバーで更新され、レプリケーションは対応するサーバーでのみ実行されます。

またはこれに代わるものはありますか?

ビューの使用について簡単に検討しましたが、ビューが目的のメインデータセットからのそのレベルの外挿を提供するとは思いません。

4

1 に答える 1

0

MySQL は選択的なレプリケーションを提供しますが、最小レベルの選択はテーブルです。これは、ほとんどの場合、純粋なデータベースの観点からは、ほとんどの場合テーブルが独立しているためです。特定の行によってレプリケーションを制限しようとすると、データの整合性が著しく損なわれ、データベース管理の悪夢になります。MySQL は、処理するように設計されているよりも多くのテーブルの使用に関する情報を必要とします。

ドキュメントの複製に関する章では、システム設定は、選択的なテーブルまたはデータベースの複製を制御するために説明されています。

于 2010-10-18T05:26:28.407 に答える