最新のタイムスタンプの競合検出および解消の構成
DBMS_GOLDENGATE_ADM
パッケージのADD_AUTO_CDR
プロシージャを使用して、最新タイムスタンプの競合検出および解決を構成します。ADD_AUTO_CDR_COLUMN_GROUP
プロシージャでオプションの列グループを追加します。
Oracle Database 23c以降では、ADD_AUTO_CDR
プロシージャに非表示列を削除するオプションもあります。ADD_AUTO_CDR
プロシージャには、未使用の表または列を削除するためのフラグREMOVE_HIDDEN_COLUMNS
が含まれています。詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』のADD_AUTO_CDRプロシージャ
を参照してください
最新タイムスタンプの競合検出および解決では、行LCRのタイムスタンプ列が、対応する表の行のタイムスタンプと一致しない場合に、競合が検出されます。タイムスタンプがより遅い場合に行LCRが適用されます。その他の場合は行LCRが破棄され、表の行は変更されません。ADD_AUTO_CDR
プロシージャを実行すると、指定した表の各行に非表示のタイムスタンプ列が追加され、タイムスタンプの競合検出および解決が構成されます。ADD_AUTO_CDR_COLUMN_GROUP
プロシージャを使用して1つ以上の列グループを追加すると、列グループにタイムスタンプが追加され、列グループに対してタイムスタンプの競合検出および解決が構成されます。
DBMS_GOLDENGATE_ADM
パッケージのGRANT_ADMIN_PRIVILEGE
プロシージャを使用して、Oracle GoldenGate管理者を構成できます。
- Oracle GoldenGate管理者としてインバウンド・サーバー・データベースに接続します。
ADD_AUTO_CDR
プロシージャを実行して表を指定し、最新のタイムスタンプの競合検出および解決を構成します。ADD_AUTO_CDR_COLUMN_GROUP
プロシージャを実行して、表に1つ以上の列グループを指定します。- 表をレプリケートする各Oracle Databaseに対して前述のステップを繰り返します。
例8-9 表に対する最新タイムスタンプの競合検出および解決の構成
この例では、hr.employees
表に対して、最新タイムスタンプの競合検出および解決を構成します。
BEGIN
DBMS_GOLDENGATE_ADM.ADD_AUTO_CDR(
SCHEMA_NAME => 'HR',
TABLE_NAME => 'EMPLOYEES');
END;
/
例8-10 列グループの構成
この例では、HR.EMPLOYEES
表に対するタイムスタンプの競合解決のために、次の列グループを構成します。
-
JOB_IDENTIFIER_CG
列グループには、JOB_ID
、DEPARTMENT_ID
およびMANAGER_ID
列が含まれます。 -
COMPENSATION_CG
列グループには、SALARY
およびCOMMISSION_PCT
列が含まれます。
BEGIN
DBMS_GOLDENGATE_ADM.ADD_AUTO_CDR_COLUMN_GROUP(
SCHEMA_NAME => 'HR',
TABLE_NAME => 'EMPLOYEES',
COLUMN_LIST => 'JOB_ID, DEPARTMENT_ID, MANAGER_ID',
COLUMN_GROUP_NAME => 'JOB_IDENTIFIER_CG');
END;
/
BEGIN
DBMS_GOLDENGATE_ADM.ADD_AUTO_CDR_COLUMN_GROUP(
SCHEMA_NAME => 'HR',
TABLE_NAME => 'EMPLOYEES',
COLUMN_LIST => 'SALARY, COMMISSION_PCT',
COLUMN_GROUP_NAME => 'COMPENSATION_CG');
END;
/