mysqlbinlog來恢復mysql數據庫數據【簡單體驗】
阿新 • • 發佈:2018-05-31
img -- 數據庫 ont 接下來 mysq png nlog size
前言
僅限於菜鳥的一次簡單體驗。
前提:mysql已經開啟了binlog日誌功能。可以自行百度,推薦地址--------->windows下如何開啟mysql日誌功能
體驗目標:在數據庫表裏面新增一條數據,然後再刪除該條數據,然後通過binlog去恢復被刪除的數據。
環境
windows10;
mysql5.7.21;
數據庫初始狀態
可以看到只有兩條記錄。
數據準備
先來添加一條數據
再將這條數據刪除
使用命令
mysql> show master status;
查看最新的日誌寫在那個日誌文件,如下
可以看到日誌寫在了mysql-bin.000002這個配置文件。
使用命令
mysql> show binlog events in‘mysql-bin.000002‘;
查看日誌內容:
紅色方框圈的就是剛才插入數據的日誌,紅色方框下面的就是刪除那天數據的日誌。從紅色方框裏的內容可以看出,插入操作日誌起始位置是937,結束為止是1293,這兩個數字要記住!!!
接下來退出mysql
執行mysql>exit;即可
開始恢復數據
該mysqlbinlog命令出場了。
在執行該命令以前確保你已經將該命令加入了環境變量,否則你需要進入mysql安裝目錄的bin文件夾下執行該命令。
註意到上面圖中三個紅色方框,做一下說明:
第一個:代表要恢復的日誌起始位置;
第二個:要恢復的日誌的結束位置;
第三個:使用的日誌文件的路徑
執行完之後再去查詢數據表
發現剛才刪掉的數據已經恢復了。
至此,目標達成,大功告成!
mysqlbinlog來恢復mysql數據庫數據【簡單體驗】