mysql binlog事务怎么记录?
用来判断binlog中每条记录是在哪个服务器上产生的,在主主复制架构中可以防止无限复制循环。#Enteranamefortheerrorlogfile.Otherwiseadefaultnamewillbeused.log-error=err.log#Enteranameforthequerylogfile.Otherwiseadefaultnamewillbeused.#log=#Enteranamefortheslowquerylogfile.Otherwiseadefaultnamewillbeused.#log-slow-queries=#Enteranamefortheupdatelogfile.Otherwiseadefaultnamewillbeused.#log-update=#Enteranameforthebinarylog.Otherwiseadefaultnamewillbeused.#log-bin=
mysql数据库binlog是否可能会读取脏数据?
会,因为binlog只是依次记录事件,而且binlog是带缓存的按配置刷新,持久化的文件数据并非实时的。由于要提供原子性的特性mysql是借助undolog来共同实现的。undolog中会有标识指向binlog中的原始数据好像事务回滚还原数据。同时undolog还配合少量锁还提供了多版本的隔离特性。同时还有redolog来协助提供一致性的保证以免异常发生数据和binlog不一致。三个log因为是磁盘顺序写效率比随机操作数据文件要高很多,除了binlog都是不带缓冲的,共同实现了持久化。所以,mysql这几类文件是相互紧密配合的,不会只考binlog就实现高可靠和高性能。针对这个具体问题就一点binlog因为性能原因是需要带缓冲的就可以理解不是一定没有脏数据或者一定是完整的

