《Mysql Binlog概述》要点:
本文介绍了Mysql Binlog概述,希望对您有用。如果有疑问,可以联系我们。
Binlog是一系列日志文件,他们包括的内容是Mysql数据内容的改变.如果想开启binlog功能,需要在启动时带上--log-bin参数.
binlog是从Mysql3.23.14版本开始的.它包括所有更新数据的sql语句.它还包括可能更新数据的语句(比如,删除不存在的数据行的语句),除非日志的记录是以基于行的.sql语句是以描述修改的事件形式存储的.binlog也包括每个语句的执行时间.
binlog还包括其他的一些源数据,比如:
语句执行时,服务器的状态信息,以便用于正确的重新胜利执行语句
差错码
为了维持binlog文件的连续性所需要的元数据(好比,rotate事件)
binlog文件是服务器在执行sql语句过程中整体状态的情况跟踪.它包括的事件描述了状态的变化.更精确的是,binlog事件描述的事件可以被用来重现服务器当时的状态改变.
binlog文件有两个重要的目的:
为了主从复制,binlog文件是master服务器记录的,会被发送给slave服务器.很多binlog的格式细节和处理是用于这个目的的.master服务器发送binlog文件中的事件给slave服务器,然后slave服务器执行这些事件,最终达到的目标就是保证slave服务器的数据变化与master一致.slave服务器在执行这些事件之前,会把这些事件存储在当地的relay log中.relay log的格式与binlog一样.
某些数据恢复操作必要使用binlog.在备份文件恢复后,binlog中的事件会重新执行.这些事件会让数据库的数据回到备份时间点.
目前有两种类型的binlog:
基于语句的:包括sql语句的事件(insert、update、delete)
基于行的:描述每一行的数据变化的变乱
混合的日志默认使用的是基于语句的记录方式,在需要时会切换到基于行的记录方式.基于行的记录方式从Mysql 5.1版本开始支持.
mysqlbinlog对象可以把binlog或者relay log日志以可读的方式打印出来.
欢迎参与《Mysql Binlog概述》讨论,分享您的想法,维易PHP学院为您提供专业教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/7886.html