我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL中如何理解Semaphore wait与undo log

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL中如何理解Semaphore wait与undo log

本篇文章为大家展示了MySQL中如何理解Semaphore wait与undo log,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。


场景:
MySQL-5.7.17, 主从架构, 业务读写分离, 只读从库不定期出现延迟, 并触发Innodb的Semaphore wait导致从库主动Crash;

结论:
数据库升级到5.7.19, 调整block size和buffer_pool_instances;

重点!:
毕竟看不懂innodb的源代码, 没有理清楚详细的逻辑, 只能对问题现象和代码碎片进行分析;

分析:

源代码为5.7.17
现象上, 所有实例中只有这一个业务的实例有这种问题, 且通过更换虚拟机/物理机的方式确认了并非外部原因导致同步延迟;
通过监控的观察, 确认了在延迟出现的时候没有突发性的CPU使用率和IO使用率;

先上error log

  1. select r.id 

  2.     from tb_r r 

  3.     inner join tb_a a on r.id = a.id 

  4.     left join tb_asf asf on r.id = asf.id and asf.created_time > '2999-99-99 99:99:99' 

  5.     inner join tb_ua ua on a.id = ua.id 

  6. where r.type=0 and r.status = 0 and a.type > 0 and r.num > 0 and ua.num=2 

  7. GROUP BY r.id 

  8. order by a.col1 desc , SUM(IFNULL(asf.col2,0)) desc, a.col3 desc 

  9. limit 28

上述内容就是MySQL中如何理解Semaphore wait与undo log,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL中如何理解Semaphore wait与undo log

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何理解PHP与MySQL通讯

如何理解PHP与MySQL通讯,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在我们的一款WebGame的生产环境中,一次无意的strace抓包时,发现了php与mysql大
2023-06-17

如何理解Flask中的Cookie与session

如何理解Flask中的Cookie与session,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、Cookie的使用1、什么是Cookie我们都知道,HTTP
2023-06-21

如何理解linux进程中rootfs与linuxrc

这期内容当中小编将会给大家带来有关如何理解linux进程中rootfs与linuxrc,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。内核启动的最后阶段启动了三个进程进程0:进程0其实就是刚才讲过的idle
2023-06-06

编程热搜

目录