全部產品
Search
文件中心

Data Transmission Service:如何解決同步執行個體關於表的報錯?

更新時間:Jul 06, 2024

本文介紹如何使用修改同步對象功能,解決DTS同步執行個體運行過程中表報錯的問題。

前提條件

  • 沒有業務讀取目標庫的資料,或業務可以短時間不讀取目標庫的資料。
  • 源庫和目標庫處於正常啟動並執行狀態。
  • 除報錯資訊中的表以外,同步執行個體有其他待同步的對象。
  • 當前執行個體的運行狀態不能為修改同步對象中

注意事項

  • 修改同步對象會自動重啟執行個體,在執行個體重啟期間可能會導致源庫與目標庫資料不一致。
  • 本方法需要清空目標表的資料。在您執行本方法的操作前:
    • 請確保目標表中只有DTS在寫入資料,或目標表中的資料可以被清空。
    • 請確保與目標表關聯的業務不會被影響。

實現流程

  1. 移除同步執行個體報錯資訊中的表或熱點表。
  2. 清空目標庫中報錯資訊表的資料。
  3. 重新添加報錯資訊中的表到同步執行個體中。

操作步驟

  1. 進入同步任務的列表頁面。

    1. 登入Data Management服務

    2. 在頂部功能表列中,單擊整合與開發(DTS)

    3. 在左側導覽列,選擇資料轉送(DTS) > 資料同步

    說明
  2. 同步任務右側,選擇同步執行個體所屬地區。

    說明

    新版DTS同步工作清單頁面,需要在頁面左上方選擇同步執行個體所屬地區。

  3. 根據實際情況,移除報錯的表或熱點表。
    說明 查看熱點表的方法,請參見查看熱點表資訊
    • 若該表所屬的同步對象的粒度為整庫:
      1. 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象修改同步對象
      2. 已選擇對象中勾選報錯表所在的庫,並單擊zuoyi移除該庫。整庫
      3. 源庫對象中以表為粒度勾選待同步的對象(不含報錯的表),並單擊youyi重新添加至已選擇對象分表
        說明 更多資訊,請參見移除同步對象
      4. 依次單擊下一步進階配置下一步預檢查並啟動
      5. 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表
    • 若該表所屬的同步對象的粒度為表:
      1. 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象修改同步對象
      2. 已選擇對象中勾選報錯的表,並單擊zuoyi移除該表。移除對象
      3. 依次單擊下一步進階配置下一步預檢查並啟動
      4. 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表
  4. 清空目標庫中報錯表的資料。
    例如MySQL資料庫,可以使用如下命令清空資料:
    TRUNCATE TABLE XXX;
    DROP TABLE XXX;
  5. 重新將報錯的表添加為待同步的對象。
    1. 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象修改同步對象
    2. 源庫對象中勾選報錯的表,並單擊youyi重新添加至已選擇對象添加表
      說明 更多資訊,請參見新增同步對象
    3. 依次單擊下一步進階配置下一步預檢查並啟動
    4. 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表
  6. 等待執行個體自動重啟後,查看是否還報錯。