前言

  • 平时在工作中每天都会做巡检,将前一天所有超过500ms的慢SQL排查出来

  • 查找原因,是否能进行优化。慢慢中,在形成了一套思路方法论。

  • 我个人认为对于排查慢SQL还是有一定的帮助

(一)、是否是SQL语句本身导致的慢SQL

  • SQL语句是否走了索引。此条可以用explain命令查看
  • SQL语句是不是select的数据量非常非常的大。比如是一个长长的json串,在网络传输的过程中会非常的耗时

(二)、SQL慢查询是否是其他外在因素导致的

  • 如果SQL语句本身没有问题,大概率就是偶尔出现,其他因素影响的。

  • 慢SQL这段时间,请求量是否很大,MySQL是否能支撑住此刻的访问量

  • 此刻时间,是否有定时任务在大量操作数据库,造成锁表等?
  • 是不是其他组执行了一条很长的操作,影响了你们的SQL

(三)、SQL慢查询是否只在一个机房出现

  • 比如应用部署在了A, B两个机房。当时数据库在A机房。

  • 此时A机房的应用请求数据库,明显会比B机房的应用,跨机房请求A机房的数据库要效果好。

  • 此刻时间,是否只有跨机房才会出现慢SQL。同机房不会出现

(四)、SQL慢查询是否由于网络原因

  • 比如应用到数据库并不是直连的,。应用 -->  中间件A  -->  中间件B  -->  数据库实例

  • 应用到中间件A。此段网络是否正常,中间件A 到B是否正常,中间件B到数据数据库是否正常等等

  • 可以用tcpdump抓包看看。是否出现了重传的现象,是否某一刻网络出现了问题等等

最新文章

  1. jQuery ajax的traditional参数的作用///////////////////////////////////zzzzzzzzzzz
  2. Java Js实现导出csv
  3. C#中是否可以继承String类
  4. 5月11日 ArrayList集合复习、特殊集合、枚举类型
  5. Chapter 4 持久存储数据对象
  6. ios用户控件
  7. HDU 1158 Employment Planning【DP】
  8. XMPPFrameWork IOS 开发(二)- xcode配置
  9. RMAN的show,list,crosscheck,delete命令
  10. Singleton模式C++实现
  11. 关于css解决俩边等高的问题
  12. 如何创建并运行java线程
  13. 关于Gson定制的分析
  14. BZOJ 4555: [Tjoi2016&Heoi2016]求和 [FFT 组合计数 容斥原理]
  15. 深入研究Spark SQL的Catalyst优化器(原创翻译)
  16. [Swift]LeetCode943. 最短超级串 | Find the Shortest Superstring
  17. 深入浅出mybatis之useGeneratedKeys参数用法
  18. 通过shell操作串口
  19. docker研究-2
  20. [转]如何通过 App Store 审核(iOS 开发者经验分享)

热门文章

  1. Redis 5种数据结构及对应使用场景
  2. 重新整理 .net core 实践篇—————路由和终结点[二十三]
  3. UF_UI 界面相关
  4. 【SQLite】批处理脚本BAT读取SQLite数据
  5. 在centos上安装docker
  6. Spring Cloud底层原理解析
  7. redis不完整的事务实现Transaction
  8. 机器人路径规划其二 A-Star Algorithm【附动态图源码】
  9. [.NET大牛之路 002] 什么是 .NET
  10. python读取csv文件数据绘制图像,例子绘制天气每天最高最低气温气象图