私は2つのOracle 11gデータベースを持っています.本番とバックアップでは、一部のデータがMQメカニズムを介して複製され、残りのデータはまだ解決策が必要です. 基本的に、私が必要としているのは、本番データベースで非常に高速に更新されているテーブル内の列を同期的に複製する方法です。レプリケーションは瞬時に行う必要があるため、本番データベースがダウンした場合に備えて、そのすべての情報 (その列) を準備してバックアップで更新する必要があります。それは一方でです。一方、パフォーマンスは、レプリケーション中に本番環境で変更されるべきではありません。テーブルには数十万行が含まれる可能性がありますが、すべてを複製する必要はありません (データ IN とデータ OUT があります - データ OUT の場合のみ、その列をバックアップで複製する必要があります)。ビュー、トリガー、ストリームを具体化することを考えていました。トリガーの場合は...簡単ですが、そう言う人もいます' 推奨される方法ではありません。私はdbリンクとそのようなトリガーを行いました:
after update of column
for each row
update table@backup set column = :NEW.column...
マテリアライズドビューの場合...マテリアライズドビューのレコードを使用して、Production.tableで更新された最後の行のみをbackup.tableで実際に更新する方法がわからないため、解決策はまだ考えていません。
ストリームの場合..私はこれらに精通していません.列の変更のみを複製できるかどうか、またはテーブル全体を複製してから、バックアップ時に選択などを実行できるかどうかは本当にわかりません.
何か案は?どうもありがとう