mysql資料庫的備份與還原(誤刪除恢復)
阿新 • • 發佈:2018-12-10
第一步:備份資料庫
mysqldump -uroot -proot test-l -F > '../data/test.sql'
此條語句將當前庫儲存到test.sql, -F引數表示flush logs,會重置binlog檔案,檢視新的binlog檔案可以用show master status
第二步:插入一些新的資料及刪庫
instert into t1 values(11111)
instert into t1 values(222222)
instert into t1 values(333333)
drop table t1
第三步:恢復sql檔案資料 注:由於sql檔案備份在前,所以不會產生新插入語句及刪庫語句
mysql -uroot -proot test < '../data/test.sql'
第四步:恢復備份後的新資料,但不恢復錯誤sql語句
1.先檢視錯誤語句的end_log_pos位置,檢視新的binlog檔案可以用show master status
mysqlbinlog --no-defaults ../data/mysql-bin.000003
2.恢復log資料
mysqlbinlog --no-defaults --stop-position="980" ../data/mysql-bin.000003|mysql -uroot -proot test
至此,資料全部恢復至刪庫前。