MySQL二进制日志的使用方法


这篇文章给大家分享的是MySQL二进制日志的使用方法,使用二进制日志可以实现异地容灾备份、读写分离、数据恢复等功能,通过这篇文章的总结,希望你能学会使用MySQL二进制日志。开启bin-log日志Mysql默认是没有开启bin-log日志的,需要我们自己去添加配置。log-bin 配置了该项后,即表示开启二进制日志功能。mysql-bin是bin-log日志文件名。expire_logs_days = 10 表明只存放最近10天的bin-log日志。一般bin-log日志存放在 mysql安装路径/var/下面运维提示:二进制日志文件与数据库数据开发云主机域名文件最好不要放在同一块硬盘上,如果存放数据文件的硬盘坏了,可以用另一块硬盘的二进制日志来恢复数据几个有用的命令flush logs:生成新的bin-log日志show master status:查看最后一个bin-log日志状态。reset master:清空所有bin-log文件mysql > show master status
Mysql日志的查看因为该日志是二进制日志,所以用一般的命令cat或vim查看会是一推乱码。Mysql为我们提供了工具mysqlbinlog。用它就可以来查看了。at:sql开始时pos节点server_id:数据库主机的服务号;end_log_pos 154:sql结束时的pos节点mysqlbinlog常见的选项有以下几个:–start-datetime:从二进制日志中读取指定等于时间戳或者晚于本地计算机的时间–stop-datetime:从二进制日志中读取指定小于时间戳或者等于本地计算机的时间 取值和上述一样–start-position:从二进制日志中读取指定position 事件位置作为开始。–stop-position:从二进制日志中读取指定position 事件位置作为事件截至-d,–database=name:只查看指定数据库的日志操作使用bin-log日志来恢复数据导出sql文件命令:mysqldump 数据库名字 [数据表名字1[ 数据表名字2…]] > 外部文件目录(建议使用.sql)sql文件导入数据库:mysql -u** -p** 数据库名字 现在模拟一种场景:一数据库每晚3点定时备份,第二天网站正常运行了半天,突然在下午5点钟的时候,程序员小A不小心,DELETE 时候没有加WHERE 条件,然后其中某张表数据全没了。然后小A找到技术总监大圣,让大圣帮忙恢复数据。binlog_test 数据库只有一张user表凌晨三点时没备份前的数据如下:凌晨3点到了,备份数据网站正常运行一段时间,有许多用户注册到了下午5点钟,小A开始犯傻了小A找到大圣帮忙恢复数据,大圣先把昨晚凌晨三点数据给恢复了这时候大圣已经把昨晚凌晨3点时候数据恢复了接下来恢复凌晨三点到DELETE间段数据首先找到delete的pos点,备份之后log是000002 删除之后也flush logs为000003,所以只要找000002 delete之前的pos即可看完这篇文章,你们学会MySQL二进制日志的使用方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注开发云行业资讯频道,感谢各位的阅读!

相关推荐: 登录mysql报ERROR 1045 (28000): Access denied 解决方法

登录mysql时系统报错原因 ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES) 原因一 可能是密码真的输入错误 原因二 安装时有问题,比如可能…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 06/09 08:22
下一篇 06/09 08:23

相关推荐