作者 | video++極鏈科技opsteam
整理 | 包包
在資料庫操作中,難免會因為各種各樣的原因對資料造成損壞,這個時候就需要對資料庫快速恢復。傳統的方法會先恢復mysql備份,再去用mysqlbinlog抽取指定時間點的日誌,再恢復,這樣的操作比較耗時,容易出錯,那有沒有一種工具可以快速把誤刪除的操作sql逆過來,然後重新插入誤刪除的資料呢?
binlog2sql,就是乙個很好的應用,它可以從mysql binlog解析出sql,根據不同選項,你可以得到原始sql、回滾sql、去除主鍵的insert sql等。
演示環境說明:
資料庫:mysql5.6
作業系統:centos7為例
演示場景:2023年10月31日10:56,刪除整個表的資料,演示快速回滾被刪除的資料
操作步驟
1、回滾之前先確認一下mysql server配置引數
2、如果你沒有mysql命令,那麼需要安裝對應版本的mysql客戶端,centos7對應的mysql客戶端包是mariadb,centos6客戶端包是mysql
3、安裝binlog2sql回滾工具
4、授權用於回滾的mysql使用者
5、開始實驗:模擬誤刪除
6、檢視誤刪除時間點寫入的binlog檔案
7、檢視誤刪除時間點的操作sql
8、生成回滾sql
9、登入mysql,對資料進行回滾
可以看到被刪除的兩條資料已經恢復。
工具引數說明:
mysql回滾命令 關於MySQL回滾機制
在事務中,每個正確的原子操作都會被順序執行,直到遇到錯誤的原子操作,此時事務會將之前的操作進行回滾。回滾的意思是如果之前是插入操作,那麼會執行刪 除插入的記錄,如果之前是update操作,也會執行update操作將之前的記錄還原 因此,正確的原子操作是真正被執行過的。是物理執行。在當前事務中確實能看...
關於回滾,mysql
假如銀行中轉帳的時候,如果乙個地方的錢已經發出去了,而另外乙個地方突然停最,那麼這樣就會造成一種情況就是轉帳失敗了,那到怎麼處理這種情況了呢,做乙個簡單的刪除兩個表中的內容來說乙個 conn new mysqli localhost username 123 mydata conn query se...
MYSQL資料回滾
基本上每個跟資料庫打交道的程式設計師 當然也可能是你同事 都會碰乙個問題,mysql誤操作後如何快速回滾?比如,delete一張表,忘加限制條件,整張表沒了。假如這還是線上環境核心業務資料,那這事就鬧大了。誤操作後,能快速回滾資料是非常重要的。binlog2sql快速回滾 首先,確認你的mysql ...