MySQL資料丟失後利用binlog恢複有效資料的方法
首先開啟binlog日誌,編輯my.cnf檔案,添加
log-bin = mysql-bin #開啟二進位日誌並指定路徑及檔案名稱,不設定的話預設在資料存放目錄下,名稱為hostname-bin.xxxxx
建立一個測試資料庫,建立一個表格,裡面隨便插入一些資料
mysql > create database student;
mysql > use student;
mysql > create table student(id int,name varchar(10),age int);
mysql > insert into student values ('1','tanglu','28'),('2','zouxiaolu','28'),('3','beibei','28');
進行一次完整的備份,這樣前3條資料已經做了備份
mysqldump -u root -p student > student.sql
繼續插入4、5、6三條資料
mysql> insert into student values('4','doudou','8');
Query OK, 1 row affected (0.01 sec)
mysql> insert into student values('5','mengmeng','28');
Query OK, 1 row affected (0.00 sec)
mysql> insert into student values('6','haha','10');
Query OK, 1 row affected (0.01 sec)
誤操作刪除了之前建立的資料
mysql> delete from student ;
重啟一次資料庫或者執行資料庫語句flush-logs來獲得一個新的二進位記錄檔,這樣故障日誌都在之前檔案裡
mysql > flush logs;
利用第一次的備份恢複資料,這樣前面3條資料就恢複成功
mysql -u root -p student < student.sql
查看binlog日誌,分析一些正常操作的position位置或者是操作時間,然後匯出這部分日誌並恢複
mysqlbinlog hostname-bin.000001
mysqlbinlog server1-bin.000003 --start-position=1170 --stop-position=1294 > server2.sql
最後進入資料庫查看資料已經按條目恢複!
關於使用MySQL binlog對資料進行恢複的實戰
MySQL通過binlog來恢複資料
MySQL使用備份和binlog進行資料恢複
MySQL資料恢複--binlog
MySQL中binlog日記清理
如何安全刪除MySQL下的binlog日誌
MySQL--binlog日誌恢複資料
MySQL刪除binlog日誌及日誌恢複資料的方法
MySQL binlog三種格式介紹及分析
MySQL 利用binlog增量備份+還原執行個體
MySQL刪除binlog日誌及日誌恢複資料
本文永久更新連結地址: