{{ item.name }}
{{ item.name }}

{{ it.name }}

{{ it.text }}

{{ it.name }}

{{ innerIt.name }}

{{ innerIt.text }}

{{news.time}}
{{news.title}}
第24问:一主多从的半同步复制,到底是哪个 slave 拖慢了性能?
2020-10-23发布 1,391浏览

问题

我们都知道,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。

大家使用此方法时,要注意调试日志的量比较大,不要开启太久以防占用过多磁盘。


以上就是有关MySQL 数据库运维管理的相关内容。


上一篇
第07期:故障排查-为什么发出的告警为已解决?
400-820-6580 13916131869
marketing@actionsky.com
上海市闵行区万源路2138号泓茂中心2号楼
产品详情
关系型数据库
AI数据库
数据库智能管理平台
数据库生态产品
行业案例
金融行业
新零售行业
制造业
通信行业
更多
公司动态
最新新闻
国产化信息
技术分享
关于我们
公司简介
公司分布
国家专利
资质认证
扫码关注公众号
© Copyright 2017, All rights reserved by: 上海爱可生信息技术股份有限公司 沪ICP备12003970号-1 | 法律声明 | 网站地图
沪公网安备 31010402003331号