啟用表格層級補充記錄日誌

啟用補充記錄日誌是一種處理作業,Oracle GoldenGate 會設定來源資料庫表格層次記錄日誌,以支援來源 DML 作業的變更資料擷取,並視記錄日誌層次而定,以包括其他未變更的資料欄,這些資料欄在設定衝突偵測和解決方法的雙向複製等情況中是必要的。

PostgreSQL 中有四個層次的表格層次記錄日誌,等同於表格的 REPLICA IDENTITY 設定,其中包括 NOTHING、USING INDEX、DEFAULT 以及 FULL。

對於需要未壓縮歷程檔記錄和「衝突偵測與解決」的使用案例,Oracle GoldenGate 需要 FULL 記錄日誌,但如果表格的「主索引鍵」或「唯一索引」變更是在簡單的單向組態中複製,或者不需要完整影像之前或未壓縮記錄,則可接受 DEFAULT 層次。Oracle GoldenGate 不支援 NOTHING 和 USING INDEX 記錄日誌層次,而且不能以 ADD TRANDATA 設定。

以下是從「管理從屬端」發出 ADD TRANDATA 的語法。

DBLOGIN SOURCEDB *dsn_name* USERIDALIAS *alias_name*
ADD TRANDATA *schema*.*tablename* ALLCOLS

注意:對於具有主索引鍵或唯一索引的表格,必須提供 ALLCOLS 選項,才能設定表格的 FULL 記錄日誌,否則會設定 DEFAULT 記錄日誌。

不論是否指定 ALLCOLS,都會為沒有主索引鍵或唯一索引的表格設定 FULL 記錄日誌。

檢查補充日誌記錄的層次:

INFO TRANDATA *schema*.*tablename*