mysql 5.6半同步复制 如果slave挂了,是不是写不进去了
2个回答
2016-09-20
展开全部
版本一致,是官方推荐的方式;slave至少要和master的版本前两个号相同,可高于master; 版本不一致,可能出现的问题就是同步的不稳定(兼容性的老问题),因为会在某些函数处理、日志读娶日志的解析重演等上发生异常,导致同步报错而需手工处理。
2021-01-18 · MySQL开源数据库领先者
关注
展开全部
问题
我们都知道,半同步复制中,如果 slave 比较慢,会拖慢 master 的提交性能。
那么,在一主多从的半同步架构中,如果 master 的提交性能慢,如何判断是哪个 slave 拖慢了性能?
实验
先通过 dbdeployer 快速搭建一主两从半同步集群:
下面给 master 施加一些压力:
然后我们用 strace,拖慢 slave2 的运行速度。
由于半同步复制的原因,现在 slave2 拖慢了 master 的提交性能。我们开始诊断,
设置半同步插件的日志级别为 16:
查看 master 的 error log:
大概扫一下 error log,如图举例,发现大部分半同步阻塞,最后收到的都是 server_id 为 300 的 slave。
而在我们的环境中,slave2 的 server_id 恰好是 300。
最后,记得将调整的日志级别调回来:
半同步插件并没有提供方便的方法查看各个 slave 谁拖慢了性能,所以我们通过调试日志来查看最后一个返回的 ack 都来自于哪台 slave。
大家使用此方法时,要注意调试日志的量比较大,不要开启太久以防占用过多磁盘。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询