1. 程式人生 > >mysql binlog 恢復

mysql binlog 恢復

開始先執行每天自動備份的資料庫

show master status;

再使用binlog恢復

 binlog直接恢復資料庫,不建議直接使用

mysqlbinlog --start-datetime="2018-8-11 02:00:00" C:\Users\donald\Desktop\mysql.000243 | mysql -uroot -p sakila

優先使用下面的,把binlog匯出sql檔案,看下沒有問題再重新匯入

mysqlbinlog --start-datetime="2018-8-11 02:00:00"  --database=sakila C:\Users\donald\Desktop\mysql.000243 >C:\Users\donald\Desktop\binlog.sql

恢復的資料不包含檢視,檢視需要另外使用工具匯出匯入

 

使用mysqldump ,系統不會區分檢視和表,因此有檢視的時候dump一定會報錯

 

另外恢復的資料庫,某些檢視或者function是使用非root 賬號建立的,對應的資料也要有同樣的賬號,否則會有   execute command denied to user 'admin'@'%' for routine.......的報錯

 

另外,mysqldump 是不會區分檢視和表 ,把檢視和表混一起,就會報錯 Couldn't execute 'show create table 'bs_purchase(檢視名)''....