在DMS的SQL視窗中對資料庫進行變更操作時,可能由於誤更新、誤刪除、誤寫入等原因導致資料不符合預期。DMS的資料追蹤功能支援按需尋找目標時間段內(資料庫Binlog儲存時間長度內)的相關更新資訊,並產生復原指令碼,協助您快速將資料恢複到變更前。
背景資訊
在日常訪問資料庫時,可能由於誤更新、誤刪除、誤寫入等原因導致資料不符合預期,需要將資料庫恢複至正常狀態。相比於恢複全量資料、恢複庫表,使用DMS資料追蹤進行恢複更快速、便捷。
更多資料恢複方案,請參見資料恢複方案概覽。
資料追蹤與其他恢複方案的區別
恢複方案 | 恢複原理 | 費用 | 恢複速度 | 恢複範圍 |
資料追蹤 | 按需追蹤到目標時間段內的相關更新,匯總產生逆向的復原語句,並通過資料變更工單最終執行到資料庫中完成資料的恢複。 |
| 快 | 取決於管控模式和Binlog日誌保留時間長度。 |
恢複全量資料到新執行個體,驗證資料後,再將資料遷回原執行個體、其他執行個體或本機資料庫。 | 慢 | 取決於記錄備份和資料備份保留時間長度,最大730天。備份保留時間長度設定,請參見備份設定。 | ||
需要提前開啟庫表備份功能,可以恢複指定的庫表到新執行個體或已有執行個體,恢複到已有執行個體會觸發主備切換。 |
| 慢 | 取決於開啟庫表備份的時間點和記錄備份保留時間,記錄備份保留時間最大730天。更多資訊,請參見庫表級備份。 |
前提條件
資料庫類型為MySQL,且MySQL為5.6及以上版本。
資料庫已開啟Binlog。
- 資料庫已登入。說明 管控模式為自由操作與穩定變更的資料庫執行個體需要先登入,安全協同的資料庫執行個體請忽略,更多關於管控模式的資訊,請參見管控模式。
注意事項
自由操作執行個體僅支援追蹤30分鐘內進行的DML操作,且無法匯出復原、重建指令碼。
穩定變更、安全協同執行個體:無時間限制,可批量下載復原、重建指令碼。
DMS可追蹤到的資料與目標資料庫執行個體的Binlog保留時間長度有關,若該資料的儲存時間超過Binlog的保留時間長度,則擷取不到該部分資料。
若資料庫的Binlog未開啟或資料庫登入狀態異常,系統將無法擷取記錄檔。
資料追蹤功能僅支援追蹤DML資料變更的資料,不支援追蹤DDL結構變更的資料。
操作步驟
- 登入Data Management 5.0。
在頂部功能表列中,選擇 。
說明若您使用的是極簡模式的控制台,請單擊控制台左上方的表徵圖,選擇
。在頁面右上方,單擊資料追蹤。
在數據追蹤工單申請頁面,配置如下資訊:
參數名
說明
任務名稱
便於後續檢索,並提供給審批人員清晰的操作意圖。
庫名
指定庫執行個體上的某個具體資料庫(需要在DMS內有資料庫的操作許可權,輸入庫名首碼後可出現聯想提示)。
表名
在指定的目標表中進行檢索,支援添加多張表。
追蹤類型
支援多選,可按需選中需要檢索的操作類型。
插入:插入類型的復原語句為
DELETE
。更新:更新類型的復原語句為
UPDATE
。刪除:刪除類型的復原語句為
INSERT
。
時間範圍
選擇追蹤的時間範圍。
自由操作執行個體,僅支援追蹤30分鐘範圍內的資料。
穩定變更和安全協同執行個體不限制時間範圍,但一個資料追蹤工單最多可追蹤48小時的資料。若超過48小時可分段提交多次工單。
變更相關人
可按需選擇,非工單參與人和審批人,不可見工單詳情。
單擊提交申請,系統將擷取記錄檔。
擷取記錄檔後,系統會進入審批環節。
等待審批通過。
說明目前,系統預設資料追蹤工單的審批人為資料庫DBA。資料追蹤的審批規則資訊,請參見資料追蹤。
審批通過後,系統會進行日誌下載、日誌解析等操作。
待下載、解析完成後,您可以從追蹤類型、表名、列名等維度篩選出您需要匯出的復原指令碼。單擊導出回滾腳本,該指令檔會下載至本地。
說明您可目標記錄右側的查看詳情按鈕,查看明細以及拷貝對應復原語句。
追蹤類型有插入、更新、刪除。
相關操作
匯出復原指令碼後,您可先對復原SQL影響資料行進行大概評估,再選擇執行復原SQL的方式:
若影響較小,您可在SQL視窗執行SQL。具體操作,請參見SQL Console初體驗。
若影響較大,您可提交普通資料變更工單將此復原指令碼作為附件上傳至工單中,執行至目標資料庫中。具體操作,請查看普通資料變更。
使用API進行資料追蹤。