不小心把數據庫刪掉了,想要恢復數據,除了備份以外,還有以下方法。
在mysql有時執行了錯誤的update或者delete時導致大量數據錯誤恢復的辦法。執行時沒有開啟事務,也沒有對數據進行。這時就需要使用到sqlbinlog工具。
sqlbinlog需要開啟,具體的打開方法就不說了
使用sqlbinlog會產生bin文件,恢復就需要用到這些文件。文件中記錄著數據庫的所有操作。(此方法的操作是將數據庫之前所執行的語句重新執行一次,以達到恢復效果)
具體步驟:
1,先找到bin文件,一般都是在mysql的data文件夾中,結尾以.00000X等形式結束。
2,尋找需要還原的時間點? 使用語句? ? ?mysqlbinlog? 文件名? ? ? 例(MySQLbinlog xxbin.000001)來查看內容,然后找到對應的具體時間
3,導出sql語句,使用語句? ? ? mysqlbinlog 文件名>sql文件路徑? ? 例(mysqlbinlog xxxbin,00001>>a.sql? | mysql -u root -p )??
如果需要指定時間導出–start–date -stop=”? –date=” 來導出指定時間執行的語句例(sqlbinlog –start-stop=’2015-11-22 10:00:00′? ?xxbin.000001>a.sql? | mysql -u root -p )這句意思是導出在2015-11-22 10點之前的語句,反之start是導出時間之后的。? start和stop可以同時使用。
如果存在多個bin文件,則按照需要導出。
4,使用mysql將導出的語句執行一次。