例如,delete一張表時,忘加where條件,整張表沒了,接下來進行快速回滾數據。
1、傳統解法:
用全備重搭實例,再利用增備binlog備份,恢復到誤操作之前的狀態,然后跳過誤操作SQL,再繼續應用binlog,此法費事費力,不推薦使用。
2、利用binlog2sql快速閃回
首先確認MySQL server開啟了binlog,設置相關參數;如果沒有開啟binlog,也沒有預先生成回滾SQL,那就真的無法回滾了,對於存放重要業務數據的MySQL,強烈建議開啟binlog。
然后安裝開源工具binlog2sql。binlog2sql是一款簡易的binlog解析工具,其中一個功能(flashback)就是生成回滾SQL。確認需要誤操作的時間,找到binlog需要回滾的位置,使用binlog2sql的flashback功能生成回滾sql,檢查回滾sql是否正確,確認后執行回滾語句,登錄mysql確認,數據回滾成功。