如何解決同步執行個體關於表的報錯?
更新時間:
Copy as MD
本文介紹如何使用修改同步對象功能,解決DTS同步執行個體運行過程中表報錯的問題。
前提條件
- 沒有業務讀取目標庫的資料,或業務可以短時間不讀取目標庫的資料。
- 源庫和目標庫處於正常啟動並執行狀態。
- 除報錯資訊中的表以外,同步執行個體有其他待同步的對象。
- 當前執行個體的運行狀態不能為修改同步對象中。
注意事項
- 修改同步對象會自動重啟執行個體,在執行個體重啟期間可能會導致源庫與目標庫資料不一致。
-
本方法需要清空目標表的資料。在您執行本方法的操作前:
- 請確保目標表中只有DTS在寫入資料,或目標表中的資料可以被清空。
- 請確保與目標表關聯的業務不會被影響。
實現流程
- 移除同步執行個體報錯資訊中的表或熱點表。
- 清空目標庫中報錯資訊表的資料。
- 重新添加報錯資訊中的表到同步執行個體中。
操作步驟
-
進入同步任務的列表頁面。
通過DTS控制台進入
在左側導覽列,單擊資料同步。
在頁面左上方,選擇同步執行個體所屬地區。
通過DMS控制台進入
說明實際操作可能會因DMS的模式和布局不同,而有所差異。更多資訊,請參見極簡模式控制台和自訂DMS介面布局與樣式。
在頂部功能表列中,選擇。
在同步任務右側,選擇同步執行個體所屬地區。
- 根據實際情況,移除報錯的表或熱點表。
說明 查看熱點表的方法,請參見查看熱點表資訊。
- 若該表所屬的同步對象的粒度為整庫:
- 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象。
- 在已選擇對象中勾選報錯表所在的庫,並單擊
移除該庫。 - 在源庫對象中以表為粒度勾選待同步的對象(不含報錯的表),並單擊
重新添加至已選擇對象。
說明 更多資訊,請參見移除同步對象。 - 依次單擊下一步高級配置和下一步預檢查並啟動。
- 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表。
- 若該表所屬的同步對象的粒度為表:
- 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象。
- 在已選擇對象中勾選報錯的表,並單擊
移除該表。移除後,已選擇對象面板中 person 表不再被勾選,僅保留 person_new 表。 - 依次單擊下一步高級配置和下一步預檢查並啟動。
- 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表。
- 若該表所屬的同步對象的粒度為整庫:
- 清空目標庫中報錯表的資料。
例如MySQL資料庫,可以使用如下命令清空資料:
TRUNCATE TABLE XXX; DROP TABLE XXX; - 重新將報錯的表添加為待同步的對象。
- 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象。
- 在源庫對象中勾選報錯的表,並單擊
重新添加至已選擇對象。
說明 更多資訊,請參見新增同步對象。 - 依次單擊下一步高級配置和下一步預檢查並啟動。
- 等待預檢查通過率顯示為100%時,單擊修改成功,返回列表。
- 在同步工作清單找到目標同步執行個體,並單擊操作列的修改同步對象。
- 等待執行個體自動重啟後,查看是否還報錯。
该文章对您有帮助吗?