職位擷取至特定起點
您可以將 Extract 定位至交易日誌中的特定起點。您可以從 Web 介面、管理從屬端或 REST API 服務端點進行設定。
如果您正在建立 Extract,則必須執行下列步驟,才能在資料庫中的特定位置啟動新建立的 Extract:
-
使用
BEGIN NOW選項新增 Extract,如下列範例所示:ADD EXTRACT extn, TRANLOG, BEGIN NOW -
登錄 Extract。
REGISTER EXTRACT extn DATABASE -
變更此 Extract 並指定時戳。
ALTER EXTRACT extn BEGIN 2020-08-02T06:05:30.000Z
Web 介面
若要將 Extract 定位至資料庫中的特定起點,請執行下列動作:
-
如果 Extract 正在執行中,請停止 Extract。
-
從「動作」資料欄中,按一下三點圖示,然後按一下變更。
-
從更改擷取對話方塊中,按一下開始選項,然後選取自訂時間。
-
從自訂時間欄位選取時間戳記,然後選取時區。
-
按一下提交。
-
按一下動作資料欄中的「播放」圖示來重新啟動 Extract。
管理從屬端
若要使用 ADD/ALTER EXTRACT 命令定位 Extract,請執行下列動作:
{ADD | ALTER EXTRACT} *group*, LOGNUM *log_num*, LOGPOS *log_pos*
-
群組是需要開始位置的 Oracle GoldenGate Extract 群組名稱。
-
LOGNUM是日誌檔編號。例如,如果必要的日誌檔名稱為test.000034,則LOGNUM值為 34。Extract 將會搜尋此日誌檔。如果LOGNUM值在值前面包含零,ADD EXTRACT命令就會失敗。例如,ADD EXTRACT extn, TRANLOG, LOGNUM 000001, LOGPOS 0會失敗。相反地,將此範例設為LOGNUM為 1 以便成功。 -
LOGPOS 是日誌檔內識別特定交易記錄的事件偏移值。事件偏移值儲存在日誌記錄的標頭區段中。若要在
binlog檔案的開頭定位,請將LOGPOS設為 0。
MySQL 將擷取定位至特定開始點的考量
在 MySQL 日誌中,事件偏移值只能在指定的二進位檔案內是唯一的。職位值與日誌編號的組合將可唯一識別交易記錄。日誌數目長度上限為未簽署整數的 8 個位元組,日誌偏移長度上限為未簽署整數的 8 個位元組。日誌編號與日誌偏移量是以管道 ('|') 分隔符號分隔。Extract 將擷取此位置在指定日誌內的異動記錄。此外,您可以使用時間戳記來定位 Extract。