Skip to content

binlog_order_commits

xiaoboluo768 edited this page Jun 14, 2020 · 2 revisions
  • 用于控制主库中binlog的提交顺序是否需要和redo log的提交顺序保持一致
    • 当设置为ON时(默认值),主库的binlog在执行到sync stage之后,会把这些事务放到commit_stage队列中,commit_stage队列中的leader获取lock_commit锁,然后其他的session进行排队等待,然后取出commit_stage队列,存储引擎层的redo log这个队列顺序提交,以保证binlog和redo log的提交顺序一致
    • 当设置为OFF时,主库的binlog在执行到sync stage之后,直接unlock lock_sync锁,各个会话自行进入存储引擎提交redo log,并不保证存储引擎redo log的提交顺序与binlog中的提交顺序一致。当然如果设置为OFF,在某些情况下,可能会产生微小的性能提升
    • 全局变量,动态变量,布尔型,默认值为ON

上一篇:gtid_executed_compression_period | 下一篇:rpl_semi_sync_master_trace_level

Clone this wiki locally