設定 EnterpriseDB (EDB) 訂戶節點的 Oracle GoldenGate CDC 擷取
在 EnterpriseDB (EDB) Postgres 雙向複製環境中,Oracle GoldenGate CDC Extract 可以從僅限專用訂戶的節點擷取變更,而不是直接從作用中資料庫節點擷取變更。此部署模型可減少生產系統上的擷取工作負載,同時為下游變更資料擷取提供合併來源。如需 EnterpriseDB Postgres Distributed 中雙向複製的詳細資訊,請參閱複製集。
Oracle GoldenGate 的 EnterpriseDB Postgres 雙向複製需要設定僅限訂戶的節點。僅限訂戶節點基本上是下游複製節點或 CDC 聚總節點,接收來自作用中雙向資料來源的變更,並提供 Oracle GoldenGate 可以從中擷取這些變更的專用資料庫。
對於說明,僅訂戶節點稱為主 3 ,活躍的雙向資料來源稱為主 1 和主 2 。
以下是要從僅限訂戶節點擷取的 Oracle GoldenGate CDC Extract 拓樸 (主要 3) :
- 主 1 和主 2 是使用雙向複製以主動 - 主動模式設定。
- 主 3 同時訂閱主 1 和主 2 。
- Oracle GoldenGate CDC Extract 是專門在僅限訂戶的節點上執行,主要 3 。
根據此拓樸,以下是每個節點的職責:
- 主 1 與主 2 :接受應用程式讀取與寫入
- 主要 3 :用於 Oracle GoldenGate CDC Extract 的僅限訂戶節點
雖然主 1 和主 2 節點接受應用程式的讀取和寫入,但主 3 旨在作為 Oracle GoldenGate CDC Extract 的僅訂閱者節點。它包含源自作用中節點的合併資料。
設定 Oracle GoldenGate CDC Extract 以在訂戶節點上執行作業
開始設定「CDC 擷取」之前,請考慮下列最佳實務:
- 在註冊 Oracle GoldenGate CDC Extract 之前,請先確定從主要 1 和主要 2 複製到主要 3 已完全同步。
- 定期監督複寫延遲 (主要至訂戶) 和 CDC Extract 延遲。
- 驗證
WAL保留和複製插槽狀況以防止資料遺失。
訂戶節點和 Oracle GoldenGate 端需要下列步驟,才能執行各種 DDL 和 DML 作業:
-
Peform DDL 作業:僅在「主要 1」和「主要 2」上執行所有 DDL 敘述句。這些變更會透過雙向複製自動複製到主 3。
-
啟用補充記錄日誌:順利複製 DDL 變更之後,請連線至「主要 3」並執行必要表格的 trandata 命令。這會啟用必要資料欄的補充日誌記錄功能,必須先擷取
UPDATE和DELETE作業的影像之前。 -
執行 DML 作業:只在「主要 1」或「主要 2」執行所有 DML 作業。請先確定「主要 3」已完全設定,再啟動任何 DML 活動。
-
設定複製插槽與發布:建立複製插槽並發布於主 3 。
-
新增表格至發布:執行任何 DML 作業之前,請先將所有必要表格新增至在「主要 3」建立的發布。只有包含在出版品中的表格會被「CDC 擷取」擷取。
注意:請確定未在主檔 1 和 (或) 主檔 2 上建立發布。
-
註冊並建立 CDC 擷取:連線至主要 3 並註冊 Extract,以在訂戶節點中建立複製槽位,然後新增「CDC 擷取」。如需註冊 PostgreSQL CDC Extract 的步驟,請參閱從管理從屬端註冊 PostgreSQL 的 Extract 。
注意:請確定 Extract 未連線至主要 1 或主要 2 。
-
設定 CDC 擷取:將「CDC 擷取」設定為僅連線至「主要 3」或訂戶節點。在此拓樸中,Extract 不能直接連線至「主要 1」或「主要 2」。
-
設定活動訊號 (選擇性,建議) :如果您使用活動訊號功能:
a. 在主 1 或 主 2 上建立活動訊號原始內建值表格。
b. 在複製至主 3 之後,將活動訊號表新增至主 3 上的發布。
c. 設定 Oracle GoldenGate 中 CDC Extract 的活動訊號,讓 CDC 管線維持作用中狀態並監控延遲。
注意:若要設定 Oracle GoldenGate 中 Extract 的活動訊號功能,請參閱新增活動訊號表格。另請參閱 Oracle GoldenGate Command Line Reference 手冊中的 ADD HEARTBEATTABLE 。
-
驗證已設定的處理:檢查複製槽位、發布及「CDC 擷取」處理是否存在,並如預期般運作。確定複寫延遲和 Extract 延遲正常。