mysql更新数据能回滚吗_MySQL数据回滚-误更新和删除时快速恢复
這世界上有后悔藥
– www.houhuiyao.cc 后悔藥數據恢復 站長語
前面的內容也提到過update或delete誤更新刪除了數據后如何恢復。實際生產環境中常常因各種不同場景導致一些辦法有效一些辦法無效,當然,最有效的辦法依然是備份!
雖然啰嗦,依然想再提醒下:
后悔藥數據恢復再次提醒:
1,首先需要說明的是,生產環境下慎重執行刪除操作,除非你確實明白自己在做什么,否則不執行危險動作。
2,有條件的情況下,依靠系統來管理數據和數據庫,盡可能降低潛在的管理的風險。
3,數據庫有Update、Delete、Insert、Truncate、Drop類操作,先在測試環境執行一次,看結果和預期是否相符。生產環境執行前,先對要操作的表做一個備份,以防萬一。
4,備份,備份,備份。
以下一些內容來自工具的使用說明文檔
本工具起效的前提:
log_bin = mysql-bin.log
binlog_format = row
1,安裝:略
2,binlog2sql的使用參數說明:(具體使用方法請見)
mysql連接配置
-h host; -P port; -u user; -p password
解析模式
--stop-never 持續同步binlog。可選。不加則同步至執行命令時最新的binlog位置。
-K, --no-primary-key 對INSERT語句去除主鍵。可選。
-B, --flashback 生成回滾語句,可解析大文件,不受內存限制,每打印一千行加一句SLEEP SELECT(1)。可選。與stop-never或no-primary-key不能同時添加。
解析范圍控制
--start-file 起始解析文件。必須。
--start-position/--start-pos start-file的起始解析位置。可選。默認為start-file的起始位置。
--stop-file/--end-file 末尾解析文件。可選。默認為start-file同一個文件。若解析模式為stop-never,此選項失效。
--stop-position/--end-pos stop-file的末尾解析位置。可選。默認為stop-file的最末位置;若解析模式為stop-never,此選項失效。
--start-datetime 從哪個時間點的binlog開始解析,格式必須為datetime,如'2016-11-11 11:11:11'。可選。默認不過濾。
--stop-datetime 到哪個時間點的binlog停止解析,格式必須為datetime,如'2016-11-11 11:11:11'。可選。默認不過濾。
對象過濾
-d, --databases 只輸出目標db的sql。可選。默認為空。
-t, --tables 只輸出目標tables的sql。可選。默認為空。
步驟簡介:
解析SQL:
python binlog2sql.py -h127.0.0.1 -P3306 -uadmin -p'admin' -dtest -t test3 test4 --start-file='mysql-bin.000002'
回滾SQL:
python binlog2sql.py --flashback -h127.0.0.1 -P3306 -uadmin -p'admin' -dtest -ttest3 --start-file='mysql-bin.000002' --start-position=763 --stop-position=1147
希望大家沒有機會使用!
最重要的一點,需要恢復或者修復數據請聯系后悔藥www.houhuiyao.cc數據恢復!
總結
以上是生活随笔為你收集整理的mysql更新数据能回滚吗_MySQL数据回滚-误更新和删除时快速恢复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android按钮点击无响应时间,And
- 下一篇: mysql 模糊查询用法_mysql进阶