当前位置: 首页 > news >正文

mysql 案例~select引起的性能问题

案例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

相关文章:

  • 研究NIO时的柳暗花明
  • 多余空格,转换空格
  • [Oracle][Metadata]如何查找与某一个功能相关的数据字典名
  • 调试利器--VS2010(有图有真相)
  • MongodbTemplate的增删改操作
  • Exchange2003升级至Exchange2007
  • 第十九、二十周作业微职位
  • Linux命令(十一)——Shell程序设计二(循环控制语句)
  • 现代软件工程 M1 博客要求
  • nodejs上使用sql
  • 3DS Max的单位设置
  • 默认标签解析
  • 数据库书上概念摘抄
  • c#中取整,向上取,向下取
  • 最近开始温习C#
  • 【RocksDB】TransactionDB源码分析
  • 0基础学习移动端适配
  • Apache Pulsar 2.1 重磅发布
  • emacs初体验
  • iOS小技巧之UIImagePickerController实现头像选择
  • JAVA SE 6 GC调优笔记
  • JAVA 学习IO流
  • JavaScript 基本功--面试宝典
  • JS正则表达式精简教程(JavaScript RegExp 对象)
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • oldjun 检测网站的经验
  • react-native 安卓真机环境搭建
  • Redash本地开发环境搭建
  • spring security oauth2 password授权模式
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 闭包--闭包作用之保存(一)
  • 看域名解析域名安全对SEO的影响
  • 前嗅ForeSpider采集配置界面介绍
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 小程序01:wepy框架整合iview webapp UI
  • 小李飞刀:SQL题目刷起来!
  • 再谈express与koa的对比
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​渐进式Web应用PWA的未来
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • ###项目技术发展史
  • #git 撤消对文件的更改
  • #调用传感器数据_Flink使用函数之监控传感器温度上升提醒
  • (13)Hive调优——动态分区导致的小文件问题
  • (6)添加vue-cookie
  • (bean配置类的注解开发)学习Spring的第十三天
  • (Git) gitignore基础使用
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (已解决)什么是vue导航守卫
  • (转) 深度模型优化性能 调参
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • (转)拼包函数及网络封包的异常处理(含代码)
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...