当前位置:首页 > 编程笔记 > 正文
已解决

Mysql主从复制之binlog_group_commit_sync_delay

来自网友在路上 168868提问 提问时间:2023-10-08 03:51:13阅读次数: 68

最佳答案 问答题库688位专家为你答疑解惑

在之前的测试中,虽然设置了多线程复制的参数slave-parallel-type,slave-parallel-workers,但是依旧出现并发复制:Mysql主从复制之skip-slave-start,slave-parallel-type,slave-parallel-workers参数详解和测试_李大川的博客的博客-CSDN博客

然后翻找资料,发现了两篇文章写的很好,也解开了疑惑:

MySQL并行复制(MTS)原理(完整版) - 知乎

mysql 主从复制的延迟问题_binlog_group_commit_sync_delay_GEK1的博客-CSDN博客

简而言之就是,只有同一组提交(group commit)的事务才能并发复制,组提交(group commit)是mysql处理日志的一种优化方式,主要为了解决写日志时频繁刷磁盘的问题。

而binlog_group_commit_sync_delay这个参数表示延时多少微妙才刷日志,测试发现这个参数最大可以设置为1000000就是1秒,设置后发现sql会慢卡顿一秒种后才执行成功。所有在着一秒钟内提交的事务才能被组提交。

1、binlog_group_commit_sync_delay 参数,表示延迟多少微秒后才调用 fsync;fsync指的是把redo log和bin log刷入磁盘

 2binlog_group_commit_sync_no_delay_count 参数,表示累积多少次以后才调用 fsync。

slave并发复制就是MTS(multi thread slave)的初衷就是为了解决主库过于繁忙造成从库延时较大,不是为了解决表没有主键且全表更新或则全表删除引发的主从延时,感觉这个主从复制并发意义不是很大

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Mysql主从复制之binlog_group_commit_sync_delay":http://eshow365.cn/6-17088-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!