慢查询处理SOP

  1. 应急
    如果影响到了核心业务,则kill该慢查询
  2. 分析
  • 通过explain语句查询sql的执行策略,主要关注type、keys、rows三个字段,type代表查询的类型(能够帮助判断是否使用到了索引,最差得是全索引扫描index,不能是全表扫描ALL),key则是实际使用到的索引字段,rows代表预估扫描的行数。

另外,mysql8.0提供了explain analyze 功能,能实际执行查询,并且返回实际查到的行数actual rows。有时候如果返回行数过多,mysql优化器会因为回表成本过高而走全表扫描ALL

  • 如果explain语句没发现什么问题,有可能是别的原因造成查询阻塞,比如大事务造成的锁等待。
  1. 优化
    根据分析结果,针对性地优化查询语句
相关推荐
Season45029 分钟前
Redis命令 (generic即通用命令)
数据库·redis·bootstrap
liwulin05061 小时前
【ollama】自定义结构化输出
linux·前端·数据库·ollama
木易士心2 小时前
MyBatis数据源切换全面解析
数据库
新中地GIS开发老师2 小时前
地信职业百科④:GIS开发工程师
前端·数据库·gis·webgis·三维gis开发
云和恩墨2 小时前
从“第二存储”到多智能体协作,云和恩墨充实数据基础设施产品矩阵
数据库
ClouGence2 小时前
SAP HANA 到 Doris 数据迁移:4 种方案对比与迁移教程
数据库·后端·dba
霸道流氓气质2 小时前
ApiPost 中配置自动获取 Token 并调用业务接口完整指南
java·服务器·数据库
我不想名字重复2 小时前
redis缓存和数据库数据保持一致
数据库·redis·缓存
宇宙第一小趴菜2 小时前
三、Oracle 核心原理
数据库·oracle
raindayinrain3 小时前
mysql原理--补充
数据库·mysql