新增 MongoDB 擷取

Extract 是針對來源資料來源連線和擷取或擷取資料執行的處理作業。瞭解如何新增 MongoDB 的 Extract。

新增擷取 (26ai)

在開始之前,請確認您:

在 MongoDB 中新增 Extract:

  1. 在 OCI GoldenGate 部署主控台導覽功能表中,選取擷取

  2. 在「擷取」頁面上,選取新增擷取

  3. 在「新增擷取」面板的擷取資訊頁面中,視需要完成下列欄位,然後選取下一步

    • 輸入長度不超過 8 個字元的程序名稱

    • 輸入描述 (選擇性),以協助您區分此處理與其他處理。

    • 從下拉式清單中選取來源

  4. 擷取選項頁面上,視需要完成下列欄位,然後選取下一步

    1. 若為擷取歷程檔

      1. 輸入 Extract 處理作業的名稱

      2. 輸入子目錄名稱,為產生的歷程檔設定自訂位置。

      3. 輸入歷程檔順序以設定歷程檔的起始號碼。

      4. 輸入歷程檔大小,以設定所產生歷程檔的大小上限。

      5. 選取一個加密設定檔。如果未建立加密設定檔,預設會選取本機公事包設定檔。

      6. 選取加密演算法

        • NONE

        • AES256

        • AES192

        • AES128

    2. 來源證明資料中,選取:

      1. 網域

      2. 別名

      3. 時間 / 地點開始

  5. 受管理選項頁面上,視需要完成下列選擇性欄位,然後選取下一步

    • 設定檔名稱

    • 對於部署狀況具有重大影響

    • 自動啟動

    • 自動重新啟動

      注意:新增設定檔並設定「自動啟動」和「自動重新啟動」選項,可讓您的部署在網路中斷後自動重新啟動。請參閱設定受管理處理作業以瞭解詳細資訊。

  6. 在「參數檔」頁面上,使用 TABLE source.*; 更新來源對應

    注意:這是來源資料庫 / 集合對應。TABLE *.*; 會從所有資料庫 / 集合擷取處理程序。

  7. 選取建立並執行以建立並啟動 Extract。如果您選取建立,則稍後可以從「擷取」頁面手動啟動「擷取」。

新增擷取 (21c)

  1. 在 OCI GoldenGate 部署主控台中,確定您位於「管理服務總覽」頁面,然後選取新增擷取 (加上圖示)。

  2. 在「新增擷取」頁面上,針對「擷取」類型選取下列其中一項,然後選取下一步

    • 起始載入

    • 變更資料擷取

  3. 在「擷取選項」頁面上,依下列方式完成欄位,然後選取下一步

    1. 程序名稱中,輸入 Extract 的名稱。

    2. 對於連線別名,請從下拉式清單中選取連線別名。

    3. 對於來源,請選取檔案

    4. 檔案名稱中,至少為檔案名稱輸入三個字元。

    5. (選擇性) 在「受管理的選項」下,您可以設定下列項目:

      • 設定檔名稱

      • 自動啟動

      • 自動重新啟動

      注意:新增設定檔並設定「自動啟動」和「自動重新啟動」選項,可讓您的部署在網路中斷後自動重新啟動。請參閱設定受管理處理作業以瞭解詳細資訊。

  4. 在「參數檔」頁面上,使用 TABLE source.*; 更新來源對應

    注意:這是來源資料庫 / 集合對應。TABLE *.*; 會從所有資料庫 / 集合擷取處理程序。

  5. 選取建立並執行

您會返回「管理服務總覽」頁面。選取擷取名稱以檢視擷取的詳細資料與報表。

已知問題

使用 BINARY_JSON_FORMAT 從 MongoDB Extract 使用歷程檔時,Replicat 失敗

當 Replicat 在 Extract 參數檔中使用以 BINARY_JSON_FORMAT 產生的 MongoDB Extract 歷程檔時,Replicat 會因下列錯誤而失敗:

ERROR 2023-08-04 17:13:13.000421 [main] - Unable to decode column 0 : Input length = 1
java.nio.charset.MalformedInputException: Input length = 1 at
java.nio.charset.CoderResult.throwException(CoderResult.java:281) ~[?:1.8.0_311]at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:816) ~[?:1.8.0_311] at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1106)
[ggdbutil-21.9.0.0.3.001.jar:21.9.0.0.3.001] Exception in thread "main"
oracle.goldengate.util.GGException: Unable to decode column 0 : Input length = 1 at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1203)

解決方法:從 Extract 參數移除 BINARY_JSON_FORMAT 時,Replicat 會順利執行,並以 Extended JSON 格式表示文件。