20 AlwaysOn可用性グループ内のデータベースの取得および配信要件の概要
Oracle GoldenGate for SQL Serverには、AlwaysOn可用性グループのプライマリ・データベース、および読取り専用、同期モードのセカンダリ・データベースのキャプチャ・サポート、およびプライマリ・データベースへの配信機能があります。
内容は次のとおりです。
ODBC接続
-
通常の手順に従って、プライマリ(取得/配信)またはセカンダリ(取得のみ)のレプリカ・データベースに接続するシステムDSNを作成します。
-
DSNで使用されている接続がAGリスナーへの接続である場合、キャプチャはプライマリ・データベースに対してのみ行われます。
サプリメンタル・ロギング
サプリメンタル・ロギングは、GGSCIを使用した通常の方法(ADD TRANDATA
)で、セカンダリ・レプリカ・データベースではなく、キャプチャの対象に含めるプライマリ・ソース・データベース表に対して有効化する必要があります。
-
Oracle GoldenGateがセカンダリ・レプリカ・ノードにインストールされている場合、
DBLOGIN
を使用して接続し、ADD TRANDATA
を実行するために、プライマリ・データベースに対する個別のDSNを作成する必要があります。 -
DBLOGIN
で使用するログインには、プライマリ・レプリカ・インスタンスのsysadmin
メンバーシップが必要です。 -
プライマリ・データベースのサプリメンタル・ロギングを有効にするときに、SQL Serverチェンジ・データ・キャプチャ・ジョブは自動的には作成されないため、フェイルオーバー後にセカンダリ・データベースがプライマリになった場合は、新しいプライマリのSQL Server CDCキャプチャ・ジョブを手動で作成する必要があります。新しいプライマリに対して次を実行してください。
EXECUTE sys.sp_cdc_add_job 'capture'
-
EXEC sys.sp_cdc_change_job
を使用してジョブのパラメータをデフォルト値から変更する場合は、新しいプライマリ・データベースにジョブを追加した後、新しいプライマリ・データベースのキャプチャ・ジョブに対してEXEC sys.sp_cdc_change_job
を再実行する必要もあります。
-
注意:
詳細は、AlwaysOnセカンダリ・レプリカのCDCキャプチャ・ジョブを有効にする方法に関するMicrosoftドキュメントを参照してください。動作要件と考慮事項
-
(CDC Extract)中間層のWindowsサーバーからExtractを実行する場合は、中間層サーバーの日付、時刻、およびタイムゾーンをプライマリ・データベース・サーバーと同じに設定します。
-
(CDC Extract) Extractが読取り可能なセカンダリ・データベースから読取り中のとき、Oracle GoldenGate CDCクリーンアップ・ジョブが使用されている場合は更新できません。したがって、セカンダリ・データベースに対して実行する場合は、Extractが
TRANLOGOPTIONS NOMANAGECDCCLEANUP
を使用して実行する必要があります。 -
(CDC Extract) Extractがプライマリ・データベースに対してキャプチャを行うように構成されている場合は、新しいプライマリへのフェイルオーバー時に、Oracle GoldenGate CDCクリーンアップ・ジョブを手動で作成してからExtractを起動します。これは、プライマリの各候補が使用可能になった後で、候補ごとに1回のみ実行する必要があります。これを行うには、以前のプライマリからジョブを記述し、新しいプライマリに対して実行します。
- (CDC Extract) Extractが読取り可能なセカンダリ・データベースからキャプチャするように構成されている場合、Extractはジョブが存在するかどうかのチェックを行うため、Extractを開始する前にSQL Server CDCキャプチャ・ジョブがセカンダリ・データベースに対して作成されている必要があります。SQL Server CDCキャプチャ・ジョブを作成するには、Extractが接続される可能性のある潜在的なセカンダリを、ある時点で書込み可能なプライマリ・データベースとして設定し、サプリメンタル・ロギングのもとで前述の手順を実行し、SQL Server CDCキャプチャ・ジョブを手動で追加します。