REGISTER EXTRACT
このコマンドは、Oracle DatabaseおよびPostgreSQLに適用されます。
Oracleデータベース
Oracleデータベースの場合は、REGISTER EXTRACT
を使用して、次の目的で、プライマリExtractグループをOracleデータベースに登録します。
-
統合キャプチャ・モードを有効にする
-
マルチテナント・コンテナ・データベースから統合Extractするためのオプションを指定する
REGISTER EXTRACT
は、データ・ポンプExtractには無効です。
Extractグループをデータベースから登録解除するには、UNREGISTER EXTRACT
コマンドを使用します。
PostgreSQL
このコマンドを使用すると、レプリケーション・スロットが接続済のソース・データベースに作成されます。このコマンドを使用すると、レプリケーション・スロットが移動または削除されるまで、PostgreSQLデータベースはトランザクション・ログをパージしません。ADD EXTRACT
コマンドを実行する前に、REGISTER EXTRACT
コマンドを実行する必要があります。Extractを登録する前に、DBLOGIN
を使用したデータベース接続が必要です。
Oracle GoldenGate 21.3以降のリリースでは、database_name
の入力は必須ではありません。
構文
Oracle:
REGISTER EXTRACT group-name
( | DATABASE
( [ CONTAINER container-list |
ADD CONTAINER container-list |
DROP CONTAINER container-list ]
[ SCN scn ]
[ SHARE ( AUTOMATIC | group-name | NONE ) ]
[ [NO]OPTIMIZED ]
)
Container-listは、PDB名のカンマ区切りのリスト(例: (pdbeast, pdbwest)
)やワイルドカード指定のPDB名(例: (pdb*またはpdb?)
)、またはその両方(例: (cdbnorth, pdb*)
)です。サポートされるワイルドカードは、?
と*
です。
OPTIMIZED
オプションにより、Extractの高速起動が向上します。デフォルト値はNOOPTIMIZED
です。OPTIMIZED
オプションは、アップストリームのマルチテナント以外の構成にのみ影響を与えます。
REGISTER EXTRACT Extract
REGISTER EXTRACT Extract with DATABASE database_name
レプリケーション・スロットは、指定したExtractグループ名のデータベースに作成されます。
-
DATABASE
[
CONTAINER (
container
[, ...]) |
ADD CONTAINER (
container
[, ...]) |
DROP CONTAINER (
container
[, ...])
]
-
オプションを指定しない
DATABASE
では、ExtractグループのCDB以外のデータベースからの統合キャプチャが可能になります。このモードでは、Extractは、論理変更レコード(LCR)の形式で変更データを受信するデータベース・ログマイニング・サーバーと統合します。ExtractはREDOログを読み取りません。Extractは、取得処理、変換およびその他の要件を実行します。DMLフィルタリングはログマイニング・サーバーによって実行されます。DATABASE
を指定してREGISTER EXTRACT
を使用する前に、dbms_goldengate_auth.grant_admin_privilege
プロシージャを使用して付与した権限で、すべてのExtractにDBLOGINコマンドを使用します。ダウンストリーム構成がある場合は、MININGDBLOGINコマンドも発行する必要があります。登録するソース・データベースがCDBデータベースで、Extractがデータをフェッチする場合は、CONTAINER=>'ALL
'パラメータでgrant_admin_privilege
をコールする必要があります。REGISTER EXTRACT
を使用した後で、ADD EXTRACT
をINTEGRATED TRANLOG
オプションとともに使用して、同じ名前のExtractグループを作成します。-
CONTAINER (
container
[, ...]
)
-
マルチテナント・コンテナ・データベース(CDB)の1つ以上のプラガブル・データベース(コンテナ)のリストに登録を適用します。1つ以上のプラガブル・データベースを、
CONTAINER (pdbeast, pdbwest)
のようにカッコで囲んだカンマ区切りリストとして指定します。プラガブル・データベースをリストする場合、これらはデータベース内に存在する必要があります。ワイルドカード*
と?
を使用して、プラガブル・データベースを指定することもできます。たとえば、CONTAINER (pdb*)
とします。 -
ADD CONTAINER (
container
[, ...]
)
-
指定したプラガブル・データベースを既存のExtractキャプチャ構成に追加します。1つ以上のプラガブル・データベースをかっこで囲んだカンマ区切りリストとして指定するか、ワイルドカードの
*
と?
を使用して指定します。例:ADD CONTAINER (pdbeast, pdbwest)
。このオプションを指定してREGISTER EXTRACT
を発行する前に、Extractグループを停止します。Oracleの場合、既存のExtractの特定のSCNでコンテナを追加することはサポートされなくなりました。
-
DROP CONTAINER (
container
[, ...]
)
-
指定したプラガブル・データベースを既存のExtractキャプチャ構成から削除します。1つ以上のプラガブル・データベースをかっこで囲んだカンマ区切りリストとして指定するか、ワイルドカードの
*
と?
を使用して指定します。たとえば、DROP CONTAINER (pdbeast, pdbwest)
です。drop container
オプションを実行した後のExtractの登録は、Extractが開始され、ExtractチェックポイントSCNよりも大きい削除されたプラガブル・データベースからコミット済トランザクションを読み取るまでは完全には発生しません。その後、Extractはコンテナを完全に削除し、メッセージとともに停止します。このオプションを指定して
REGISTER EXTRACT
を実行する前に、Extractグループを停止します。
-
-
SCN
system_change_number
-
Extractを登録して、過去の特定のシステム変更番号(SCN)でキャプチャを開始します。このオプションを指定しないと、キャプチャは
REGISTER EXTRACT
が発行された時点から開始します。指定したSCNは、ログ・ファイルのディクショナリ作成操作の開始SCNに対応している必要があります。次の問合せを発行して、すべての有効なSCN値を検索できます。SELECT first_change# FROM v$archived_log WHERE dictionary_begin = 'YES' AND standby_dest = 'NO' AND name IS NOT NULL AND status = 'A';
単独で使用する場合、SCN値はログ・ファイルのディクショナリ作成操作の開始SCNになります。
SHARE AUTOMATIC
またはSHARE
extract_name
と組み合せて使用した場合、指定したSCNはキャプチャ・セッションのstart_scn
になり、次の制限があります。-
現在のSCN以下になるようにしてください。
-
既存のキャプチャの最小値(最初のSCN)より大きくなるようにしてください。
-
-
{SHARE [
AUTOMATIC |
-
extract
| NONE]}
-
Extractを登録し、指定したSCNでクローンを作成する既存のLogMinerデータ・ディクショナリのビルドに戻ります。これにより、既存のディクショナリのビルドを利用したExtractの高速作成が可能になります。
SHARE
はCDBでは使用できません。次のコマンドがサポートされています。
REGISTER EXTRACT extract database SCN #### SHARE AUTOMATIC REGISTER EXTRACT extract database SCN #### SHARE extract REGISTER EXTRACT extract database SHARE NONE REGISTER EXTRACT extract database SCN #### SHARE NONE
または
REGISTER EXTRACT extract DATABASE SHARE NONE REGISTER EXTRACT extract DATABASE SCN #### SHARE NONE
一方、次のコマンドは、ダウンストリーム構成ではサポートされていません。
REGISTER EXTRACT extract DATABASE SHARE AUTOMATIC REGISTER EXTRACT extract DATABASE SHARE extract
-
AUTOMATIC
-
最も近い既存のキャプチャからクローンします。最適なクローン候補が見つからない場合は、新しいビルドが作成されます。
-
extract
-
指定したExtractで関連付けられているキャプチャ・セッションからクローンします。これが可能でない場合は、登録が完了しない旨のエラーが発生します。
-
NONE
-
新しいビルドをクローンまたは作成しないでください(これがデフォルトです)。
ダウンストリーム構成では、Extractへの登録時に
SHARE
句をSCN
句と組み合せて使用する必要があります。 -
例
-
REGISTER EXTRACT exte LOGRETENTION
-
REGISTER EXTRACT exte DATABASE
-
REGISTER EXTRACT exte DATABASE CONTAINER (pdbeast, pdbwest, pdbsouth)
-
REGISTER EXTRACT exte DATABASE ADD CONTAINER (pdbnorth)
-
REGISTER EXTRACT exte DATABASE DROP CONTAINER (pdbnorth)
-
REGISTER EXTRACT exte DATABASE SCN 136589
ディクショナリのビルドの開始SCNは136589です。
-
REGISTER EXTRACT exte DATABASE SCN 67000 SHARE extw
この場合の有効な開始SCNは67000で、必ずしも現在のSCNにはなりません。
-
REGISTER EXTRACT exte DATABASE CONTAINER (pdbeast, pdbeast, pdbsouth) SCN 136589