DMS的資料追蹤功能可以快速按需找到目標時間段內的相關更新,並產生逆向復原語句,追蹤完的資料可批量產生復原指令碼,通過資料變更工單最終執行到資料庫中完成資料的修複。當誤操作受影響的資料量在10萬以內時,您可使用該方法進行資料恢複。
前提條件
已為叢集開啟Binlog。詳細操作步驟,請參見開啟Binlog。
若在DMS中,該叢集的管控模式為自由操作與穩定變更,請先通過DMS登入目的地組群。
步驟一、尋找需復原記錄,產生復原指令碼
首先,您需要在DMS控制台提交資料追蹤工單申請,審批通過後,根據解析出的日誌,選擇需要復原的變更記錄,並產生復原指令碼。
登入新版DMS控制台。
在頁面頂部,選擇。
在頁面右上方,單擊+資料追蹤。
在數據追蹤工單申請頁面,根據下表填寫工單申請。

參數名
說明
任務名稱
便於後續檢索,並提供給審批人員清晰的操作意圖。
庫名
誤操作對象的資料庫名。
表名
誤操作對象的表名。
追蹤類型
支援多選,可按需勾選檢索的操作。
時間範圍
預設為目前時間往前2小時。單次工單最長追蹤時間長度跨度為6小時,若超過則可分段建多個工單處理。最長可追蹤時間點為目標資料庫伺服器上Binlog檔案當前儲存的最早時間。
單擊提交申請,系統將擷取記錄檔。
擷取記錄檔後,系統會進入審批環節。
說明若Binlog未開啟或資料庫未登入,系統將無法擷取記錄檔。
等待審批通過。
說明資料追蹤的預設安全審批規則為:資料庫對應的DBA進行審批。
審批通過後,系統會進行日誌下載、日誌解析等操作。
待解析完成後,您可以勾選需要復原的變更記錄,單擊導出回滾腳本即可。
步驟二、執行復原
匯出復原指令碼後,您可以提交普通資料變更工單,將此復原指令碼作為附件上傳至工單中,執行至目標資料庫中。
在DMS控制台頁面頂部,選擇。
可參考下表填寫資料變更工單申請,並單擊提交申請。

表 1. 資料變更參數說明
參數名
說明
資料庫
要恢複的資料庫名稱。
影響行數
預估本次更新會影響的資料行數,可在SQLConsole以
count統計。變更SQL
選擇附件,並將步驟一中產生的指令碼上傳至附件。
工單提交後,系統會進行內容合法性檢查。
當檢查通過後,需要您提交審批,審批通過後,就會產生執行任務。
說明資料變更的預設安全審批規則為:資料庫對應的DBA進行審批。
單擊執行變更。