DBAtlas · データベース運用アトラス

Oracle GoldenGate Microservices: Oracle → Oracle 一方向レプリケーション

Oracleレベル: 上級所要時間: 3~5 時間

GoldenGate 21c または 23ai/26ai Microservices を使って、PDB のスキーマを別のデータベースへ継続的に (数秒の遅延で) レプリケートします。最終的に、ソースでは Integrated Extract と Distribution Path が、ターゲットでは Parallel Replicat が稼働します。ターゲットのスキーマは一貫性のある SCN からの初期ロードで作成され、heartbeat でエンドツーエンドの遅延を測定します。Data Guard との違い: 物理コピーではなく行レベル (論理) のレプリケーションであり、ターゲットはオープンで書き込み可能で、バージョンやプラットフォームが異なっていても構いません。ソースとターゲットはシングルインスタンスでも RAC でも構いません。日常運用と障害対応には GoldenGate 運用ガイドを使用します。

構成: ソース DB サーバー (OGG ソース deployment) + ターゲット DB サーバー (OGG ターゲット deployment)。RAC では GoldenGate をノード 1 に (または XAG でクラスタリソースとして)

開始前の確認

  • GoldenGate のライセンスと My Oracle Support/eDelivery へのアクセスがある。両サーバーに …/… (Oracle Database 用の Microservices ソフトウェア) が用意され、バージョンの動作保証 (OGG バージョン ↔ DB バージョン ↔ OS) を MOS の動作保証マトリックスで確認済み。
  • サーバーは …Oracle Linux / RHEL 7.9…Oracle Linux / RHEL ……。oracle ユーザーと oinstall グループが存在し (データベースサーバー)、unzip がインストールされている (ない場合は root で … -y install unzip)。GoldenGate 用に 4 GB 以上の空き RAM、ソフトウェア用に約 2 GB、trail ファイル用に REDO 生成量に応じた (1 日あたりの REDO 生成量 × 保持日数) ディスク領域がある。
  • ソースデータベースは CDB で ARCHIVELOG モード (そうでない場合はこのガイドで有効化します)。アーカイブログは Extract が処理するまで削除されないこと (RMAN の削除ポリシー)。ソースとターゲットの PDB がオープンしており、サービスがリスナーに登録されている。
  • レプリケートする … スキーマの表に主キー (または NULL を許可しない一意キー) がある。キーのない表ではすべての列がキーとして扱われ、更新が遅くなり、誤った行に一致するリスクが生じます。
  • スキーマ内で、GoldenGate がサポートしない、または特別な扱いが必要なデータ型/オブジェクトを確認済み (DBA_GOLDENGATE_SUPPORT_MODE)。
  • ソースからターゲットへ …/tcp (Receiver Server) が開放され、管理用に両サーバーで …~…/tcp が管理ネットワークに開放されている。サーバー同士が名前で解決でき…、SCAN 名 (…………, …………) が DNS で解決でき…、時刻は NTP で同期されている。
  • Integrated Extract の初回登録と初期ロードの間、ソースで長時間実行中のオープントランザクションがないこと。初期ロード用に負荷の少ない時間帯を計画済み。
  • RAC 側で Clusterware が正常で、oracle ユーザーで srvctl が動作する。GoldenGate ソフトウェアと deployment は 1 つのノード (…………, …………) にインストールする。ノード障害時の自動引き継ぎが必要な場合は、XAG + 共有 (ACFS) ディレクトリを計画済み (注記を参照)。

ガイドのフェーズ

  • ソースデータベースの準備 — ソースデータベースの状態を確認する · ARCHIVELOG モードを有効にする (必要な場合) · GoldenGate 用のデータベース設定 (ソース) · GoldenGate のキャプチャユーザーを作成する (ソース) · GoldenGate サービスを作成する (ソース RAC) · Data Pump ディレクトリを定義する (ソース PDB)
  • ターゲットデータベースの準備 — GoldenGate 用のデータベース設定 (ターゲット) · ggadmin ユーザーを作成する (ターゲット PDB) · GoldenGate サービスを作成する (ターゲット RAC) · Data Pump ディレクトリを定義する (ターゲット PDB)
  • GoldenGate ソフトウェアのインストール (両サーバー) — ディレクトリを作成する · インストールメディアを展開する · テンプレートから oggcore.rsp を準備する · GoldenGate ソフトウェアをインストールする (サイレント) · OGG_HOME 環境変数を定義する
  • Service Manager と deployment (oggca) — oggca のレスポンスファイルを作成する (ソース) · deployment を作成する (oggca、ソース) · Service Manager を systemd サービスとして登録する (ソース) · oggca のレスポンスファイルを作成する (ターゲット) · deployment を作成する (oggca、ターゲット) · Service Manager を systemd サービスとして登録する (ターゲット) …
  • ソース: 資格証明、trandata、heartbeat、Extract、Distribution Path — 資格証明ストアとデータベース接続を準備する (ソース) · スキーマレベルのサプリメンタルロギングを有効にする · heartbeat 表を作成する (ソース) · Integrated Extract を登録して追加する · Extract のパラメータファイルを作成する · Extract を起動する …
  • ターゲット: 資格証明、チェックポイント、Parallel Replicat — 資格証明ストアとデータベース接続を準備する (ターゲット) · heartbeat 表とチェックポイント表を作成する (ターゲット) · Parallel Replicat を追加する · Replicat のパラメータファイルを作成する
  • 初期ロードと Replicat の起動 — オープントランザクションを確認する (ソース) · 初期ロードの SCN を取得してエクスポートする (expdp) · ダンプファイルをターゲットにコピーする · ターゲットにインポートする (impdp) · SCN 以降から Replicat を起動する · Replicat を起動する
  • 検証と監視 — 全プロセスの状態を確認する (ソース) · 全プロセスの状態を確認する (ターゲット) · エンドツーエンドテスト: 行を挿入する (ソース) · エンドツーエンドテスト: 行と遅延を確認する (ターゲット) · 監視とメンテナンス
環境に合わせた手順プランを開く →