主从复制时innodb_flush_log_at_trx_commit的作用

4270阅读 0评论2013-11-05 airmy
分类:Mysql/postgreSQL

在做MySQL AB复制的时候,一个是sync_binlog参数还有另外一个也很重要就是innodb_flush_log_at_trx_commit。
此参数可以设置0、1、2默认设置1。分别意义如下:

设置1:每一次事务提交或事务外的指令都需要把日志写入(flush)硬盘,最安全也是最耗时的。

设置2:是不写入硬盘而是写入系统缓存,日志仍然会每秒flush到硬 盘,所以你一般不会丢失超过1-2秒的更新

设置0:速度会更快一点,但安全性比较差,即使MySQL挂了也可能会丢失数据。

另外在说一点:设置2只有在整个OS都挂了的情况下才有可能
丢失数据
上一篇:利用pt-table-checksum做主从一致性校验
下一篇:sql_slave_skip_counter参数