首页 > 代码库 > sync_binlog

sync_binlog

sync_binlog选项控制mysql怎么刷新二进制日志到磁盘,默认是0,意味着mysql并不刷新,由操作系统自己决定什么时候刷新缓存到持久化设置,如果这个值比0大,它指定了两次刷新到磁盘的动作之间间隔多少次二进制日志写操作

如果没有设置它为1,那么崩溃后可能导致二进制日志没有同步事务数据,这可以轻而易举的导致复制中断,并且使得及时恢复变得不可能,无论如何,可以把这个值设置为1来获得安全的保障,这样就会要求mysql同步把二进制日志和事务日志这两个文件刷新到两个不同的位置,这可能需要磁盘寻道,相对来说是个很慢的操作。

像innodb日志文件一样,把二进制日志放到一个带有电池保护的写缓存的raid卷,可以极大的提升性能,事实上,写和刷新二进制日志缓存其实比innodb事务日志要昂贵多了。因为不像innodb事务日志, ---p361