博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 案例~select引起的性能问题
阅读量:6423 次
发布时间:2019-06-23

本文共 693 字,大约阅读时间需要 2 分钟。

案例1 

背景:测试环境下发现大量select查询,而且负载飙升到90+

排查思路:

              1 老规则,按照排错脚本走一圈,规划出几个元素(1 针对库访问的统计 2针对具体语句类型的统计),发现有大量的select 查询

              2  考虑 是因为没有走索引导致的sql堆积么,我explain了一下,速度很快。

              3  那么得出结论是由于并发导致的问题。

问题解决:

              1既然是并发问题, 联系到了相关的研发人员,发现是由于mysql前端的redis挂掉了,导致直接大量查询打到了mysql端,负载飙升

              2 研发停止了相关查询,问题解决

总结: 对于前端做mysql缓存的redis这种架构,一定也要关注,一旦redis发生问题,大量查询会拖垮mysql本身。排查问题不光要从mysql本身考虑

这就是我的一点感悟

案例 2

背景: 线上并发查询导致主库负载飙升

排查思路:

    1 由于线上飙升大量select导致阻塞,采用批量kill方法干掉慢查询,但是没有太多用,程序不断尝试

    2 都是由于一条语句导致的,explain和手动在从库执行下发现用了0.89s(这里觉得已经很快了,就没注意)

    3 没办法,只能研发人员进行反复排除,进入大坑

问题解决:

    解决问题进入了误区,无意之中尝试优化了下语句,加入了相关索引,立刻恢复了。。。,语句执行从0.89~0.03s,

总结: 1 语句优化要彻底,我因为觉得0.89s已经很快,所以掉入了误区,以后一定引以为戒

         2 大量并发标准执行时间最好少于0.2s 

转载于:https://www.cnblogs.com/danhuangpai/p/7620432.html

你可能感兴趣的文章
windows server之AD(1)
查看>>
如何升级PowerShell
查看>>
oracle kill所有plsql developer进程
查看>>
python实现登录查询(可以模糊查询)
查看>>
LAMP架构(apache用户认证,域名重定向,apache访问日志)
查看>>
struts2.0的json操作
查看>>
SQL注入神器——sqlmap
查看>>
Unity导航 (寻路系统Nav Mesh Agent)
查看>>
SaltStack配置语法-YAML和Jinja
查看>>
运用免费OA让你有意想不到的效果
查看>>
一些软件设计软则
查看>>
Linux运维基础命令
查看>>
使用PowerShell配置IP地址
查看>>
第十一章 MySQL运算符
查看>>
JAVA常见算法题(十七)
查看>>
GUI鼠标相关设置
查看>>
使用 <Iframe>实现跨域通信
查看>>
闭包--循序学习
查看>>
项目实战之集成邮件开发
查看>>
解决C3P0在Linux下Failed to get local InetAddress for VMID问题
查看>>