利用mysql二进制日志进行mysql数据库的恢复

2014-03-25 浏览:2619
利用mysql二进制日志进行mysql数据库的恢复
评论:(0)复制地址

对于需要确保mysql数据库完整性的网站,mysql的二进制日志至关重要。比如你做了mysql数据库的主从备份,你认为这应该能确保mysql从数据库是最新的内容了,这的确没错,但有一种情况,比如你误删除了数据,或者被黑客入侵而清除了数据库,这时mysql从服务器也会跟主数据库同步,这是你不想看到的,但数据确实没了。但是如果你每天进行了数据库的完整备份,而且mysql的二进制日志还在的话,这将有可能恢复最新的数据。下面介绍方法。

1、开启二进制日志

在使用二进制日志恢复数据库时,请确保你已经开启二进制日志,检查my.cnf文件是否存在log-bin=mysql-bin。

2、定期完整备份

你还需要间隔一定的时间做数据库的完整备份,只有这样你才有可能快速的恢复最新数据。

mysqldump --opt -uroot -p --skip-lock-tables databasename>databasename.sql

3、查看备份时间

查看你备份的时间,如databasename.sql,取最后一行:-- Dump completed on 2012-11-08 11:11:48。

tail -1 databasename.sql

4、导出二进制日志

暂时关闭网站,防止新数据写入,导出二进制日志:

mysqlbinlog mysql-bin.000001 -d databasename --start-datetime="2012-11-08 11:11:48" >binlog.sql

5、调整binlog.sql

编辑binlog.sql,删除误操作的语句。

6、导入数据

重建数据库databasename,导入databasename.sql,接着导入binlog.sql。

评论:(0)复制地址
发布:zpblog | 分类:Linux | Tags:mysql 日志 恢复

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。