ALLOWNONVALIDATEDKEYS

有效對象

GLOBALS

說明

使用 ALLOWNONVALIDATEDKEYS 可讓 Extract、Replicat 和 Admin Client 命令使用未驗證的主索引鍵或無效的索引鍵作為唯一 ID。此參數會覆寫 Oracle GoldenGate 所使用的金鑰選擇條件。如果啟用,Oracle GoldenGate 會使用 NON VALIDATED 和 NOT VALID 主索引鍵作為唯一 ID。

金鑰會因為物件重組或許多其他動作而變成無效,但如果您知道金鑰有效,ALLOWNONVALIDATEDKEYS 會儲存重新驗證金鑰的停機時間,特別是在測試環境中。不過,使用 ALLOWNONVALIDATEDKEYS 時,無論是在測試中還是實際執行中,您都接受目標資料可能無法透過複製正確維護的風險。如果索引鍵證明無效,且其定義的表格包含多筆具有相同索引鍵值的記錄,則 Oracle GoldenGate 可能會選擇錯誤的目標資料列進行更新。

若要在非作用中 DDL 複製的組態中啟用 ALLOWNONVALIDATEDKEYS,請停止所有處理作業、將 ALLOWNONVALIDATEDKEYS 新增至 GLOBALS 參數檔,然後重新啟動處理作業。若要再次停用 ALLOWNONVALIDATEDKEYS,請將它從 GLOBALS 檔案中移除,然後重新啟動程序。

若要在啟用 DDL 支援的組態中啟用 ALLOWNONVALIDATEDKEYS 功能,請執行下列步驟。

  1. 新增 ALLOWNONVALIDATEDKEYS 參數至 GLOBALS 參數檔。

  2. 使用下列 SQL 更新 DDL 綱要中的 GGS_SETUP 表格。

UPDATE <owner>.GGS_SETUP SET value='1' WHERE property='ALLOWNONVALIDATEDKEYS';
COMMIT;
  1. 重新啟動所有 Oracle GoldenGate 處理作業 (包括管理程式)。從此開始,Oracle GoldenGate 會選取未驗證或無效的主索引鍵作為唯一 ID。

若要在啟用 DDL 支援時停用 ALLOWNONVALIDATEDKEYS 功能,請執行下列步驟。

  1. 從 GLOBALS 參數檔移除 ALLOWNONVALIDATEDKEYS。

  2. 將您新增至 GGS_SETUP 表格的記錄更新為 0。

    UPDATE owner.GGS_SETUP SET value='0' WHERE property='ALLOWNONVALIDATEDKEYS';
    COMMIT;

    重新啟動所有 Oracle GoldenGate 處理作業。

預設

無 (已停用)

語法

ALLOWNONVALIDATEDKEYS