通過mysqlbinlog恢複數據

天遠(yuǎn)科技  發表于:2021-12-21  分(fēn)類:數據庫相關(guān)  閱讀(2091)  贊同31

今天業務(wù)打電話(huà)來(lái)說(shuō)又有新(xīn)的用戶要看下(xià)我們的客戶管理(lǐ)系統,用戶客戶的數據是不合适給新(xīn)客戶看的,然後搭建新(xīn)環境,測試服務(wù)器(qì)上(shàng)建立新(xīn)數據庫,導測試數據的時(shí)候頭腦發昏直接導到了(le)客戶線上(shàng),這(zhè)下(xià)完了(le)。頭腦一(yī)頓發蒙,馬上(shàng)查看數據備份工作(zuò)有沒有做,由于這(zhè)個(gè)項目剛完成客戶服務(wù)器(qì)的定時(shí)備份還沒給做下(xià)去,這(zhè)下(xià)麻煩大了(le),心想怎麽跟客戶交代,上(shàng)面他們4個(gè)員(yuán)工不停的在将老數據維護到我們的系統裏,頭腦發麻,為(wèi)了(le)不讓事(shì)故蔓延立馬停掉業務(wù)不要讓客戶做無用功,通知客戶臨時(shí)維護,冷靜想了(le)下(xià),mysql我們默認都是開啓binlog的,binlog可以恢複,立馬查了(le)下(xià)mysql配置

>mysql -uroot -p

mysql>show binary logs;

顯示

+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |      1007 |
| mysql-bin.000002 |       126 |
| mysql-bin.000003 |       126 |
| mysql-bin.000004 |       382 |
| mysql-bin.000005 |      1309 |
| mysql-bin.000006 |       126 |
| mysql-bin.000007 |  57082358 |
+------------------+-----------+

退出mysql

執行

>yle="color:#222222;font-family:tahoma, arial, "font-size:16px;background-color:#FFFFFF;">mysqlbinlog --start-position=0 /data/mysql/mysql-bin.000007

從binlog日志裏查看執行記錄,再執行

>yle="color:#222222;font-family:tahoma, arial, "font-size:16px;background-color:#FFFFFF;">mysqlbinlog --start-position=0 --stop-position=10157604 /data/mysql/mysql-bin.000007

這(zhè)裏你可以不斷更改--stop-position 數字找到需要截止的行

最後執行

mysqlbinlog /data/mysql/mysql-bin.000007--start-position=0 --stop-position=10157604 | mysql -uroot -p

yle="color:#222222;"> 如(rú)果你要的binlog在000007之前也(yě)有數據,那麽之前的也(yě)執行同樣的語句。

yle="color:#222222;">執行完後一(yī)查客戶數據全部恢複,吊着的心放(fàng)下(xià),立馬做了(le)數據備份工作(zuò)。






在線聯系
點擊這(zhè)裏給我發消息
點擊這(zhè)裏給我發消息
關(guān)注我們