mysql通过binlog日志回滚数据
2013-07-12 11:00
555 查看
mysql可以通过binlog日志恢复到指定时间的数据,前提是你的mysql开启了binlog
如:
/usr/local/mysql/bin/mysqlbinlog --start-datetime="2013-07-11 03:04:00" --stop-datetime="2013-07-12 20:55:00" /data/mysql/var_3306/mysql-bin.0000* > /tmp/game_bin.sql
选项解析:
/usr/local/mysql/bin/mysqlbinlog 使用mysql自带的命令从二进制文件binlog中导出sql文件
--start-datetime 要恢复数据的起始时间,可以精确到秒,上例中时间就是2013年7月11日3点04分
--stop-datetime 要恢复数据的截止时间,上例中的时间为2013年7月12日20点55分
/data/mysql/var_3306/mysql-bin.0000* 指定mysql生成二进制的文件路径,可以指定单个文件,也可以指定所有
这样生成sql文件就是从2013-07-11 03:04:00到2013-07-12 20:55:00的所有数据
注:
导出的sql文件会产生二进制乱码,此时需要对文件进行替换处理
文件中一般产生的乱码符号可以在vi文件中使用快捷方式ctrl+v,ctrl+2打出,然后使用全局替换为空即可。
恢复数据时需要先将原有的数据库删除,然后导入完整备份的数据库,最后导入生成的sql文件。
如:
/usr/local/mysql/bin/mysqlbinlog --start-datetime="2013-07-11 03:04:00" --stop-datetime="2013-07-12 20:55:00" /data/mysql/var_3306/mysql-bin.0000* > /tmp/game_bin.sql
选项解析:
/usr/local/mysql/bin/mysqlbinlog 使用mysql自带的命令从二进制文件binlog中导出sql文件
--start-datetime 要恢复数据的起始时间,可以精确到秒,上例中时间就是2013年7月11日3点04分
--stop-datetime 要恢复数据的截止时间,上例中的时间为2013年7月12日20点55分
/data/mysql/var_3306/mysql-bin.0000* 指定mysql生成二进制的文件路径,可以指定单个文件,也可以指定所有
这样生成sql文件就是从2013-07-11 03:04:00到2013-07-12 20:55:00的所有数据
注:
导出的sql文件会产生二进制乱码,此时需要对文件进行替换处理
文件中一般产生的乱码符号可以在vi文件中使用快捷方式ctrl+v,ctrl+2打出,然后使用全局替换为空即可。
恢复数据时需要先将原有的数据库删除,然后导入完整备份的数据库,最后导入生成的sql文件。
相关文章推荐
- 使用mysqlbinlog工具通过日志文件恢复数据
- mysql通过binlog日志来恢复数据
- mysql通过binlog二进制日志恢复数据
- 如何通过Mysql-bin日志还原数据
- 通过Mysql-bin日志恢复还原数据
- mysql通过mysqldump和mysqlbinlog恢复数据,binlog恢复数据失败解决方案
- Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
- MySql通过二进制日志文件恢复数据
- 如何通过Mysql的二进制日志恢复数据库数据
- 如何通过 MySQL 的二进制日志恢复数据库数据
- 解说mysql之binlog日志以及利用binlog日志恢复数据
- 通过Mysql的二进制日志恢复数据库数据
- Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
- mysql通过binlog恢复数据
- MySQL通过日志恢复数据
- MySQL通过binlog来恢复数据
- Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
- mysql通过Binlog恢复数据到sql文件实战
- mysql 查看binlog 操作日志及恢复数据
- Mysql之binlog日志说明及利用binlog日志恢复数据操作记录