【mysql数据库】数据库只读实例的同步延迟的场景和可能原因

【背景】

近期在给一个客户做DEMO,需要把阿里云RDS for mysql数据库备份到其他云上去,考虑到可能会用只读实例作为复制的源端,就会涉及到只读实例和主库之间有延迟的场景。

本文主要参考阿里云的帮助资料(https://help.aliyun.com/knowledge_detail/41767.html),本文做一个学习总结。

1. 只读实例产生延迟的原因
1.1 只读实例规格过小
1.2 主实例的 TPS(Transaction Per Second)过高
1.3 主实例的大事务
1.4 主实例的 DDL 语句
1.5 只读实例 MyISAM 引擎表
1.6 其他

2. 排查方法和建议
当只读实例出现延迟后,
一看只读节点 IOPS 定位是否存在资源瓶颈;
二看只读节点的 binlog 增长量定位是否存在大事务;
三看只读节点的 ComDML 性能指标,对比主节点的 ComDML 定位是否是主库写入压力过高导致;
四看只读节点执行 show slave status \G,判断是否有 Waiting for table metadata lock;同时在主实例控制台 =》SQL明细 中排查下是否有 alter,repair,create等 DDL 操作;
五看只读节点执行 show slave status \G,判断是否有 Waiting for table level lock; 同时通过 show full processlist; 或者 DMS =》 实例信息 =》 实例会话 检查下是否有长时间对 MyISAM 引擎表的查询。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值