美文网首页Mysql学习
SQL慢查询优化建议(二)

SQL慢查询优化建议(二)

作者: Sandy_678f | 来源:发表于2019-12-12 15:12 被阅读0次

use temporary,use filesort优化建议:

  1. use temporary:需要用临时表存储结果集,常见于group by,order by操作
  2. use filesort:无法利用索引进行排序,而使用外部文件排序,常见于order by操作

通常产生use temporary的条件:

  1. group by的列没有走索引,产生临时表
  2. group by时,select的列不止group by的列,并且group by的列不是主键
  3. group by与order by的列不同,并且没有建立正确顺序的索引
  4. group by或order by的列不是来自JOIN语句第一个表.会产生临时表
  5. distinct 和 order by的列没有走索引

通常产生use filesort的条件:

  1. order by的列没有走索引
  2. order by的字段顺序与索引顺序不一致

优化建议:

  1. group by 与 order by字段增加索引
  2. group by 与 order by字段的索引满足最左匹配原则
  3. group by 与 order by字段不一致时,尽量不同时出现在同一sql语句中

相关文章

  • SQL慢查询优化建议(二)

    use temporary,use filesort优化建议: use temporary:需要用临时表存储结果集...

  • 数据库索引相关问题

    如何定位并优化慢查询Sql 根据慢日志定位慢查询sql 使用explain等工具分析sql 修改sql或者尽量让s...

  • MySQL慢查询日志相关笔记

    MySQL优化SQL,针对慢SQL语句的查询及相关配置。相关命令: 需要永久开启慢SQL查询日志,需要在my.in...

  • 2018-02-06 技术笔记

    开启mysql慢查询日志 介绍开启慢查询,可以查看超过指定时间执行的SQL语句,有目标的优化SQL查询效率。 参数...

  • 性能分析与 EXPLAIN 详解

    一、sql查询慢原因及优化 1、导致慢 SQL 的原因 在遇到慢 SQL 情况时,不能简单的把原因归结为 SQL ...

  • MySQL优化----SQL语句和索引优化

    sql及索引优化 如何发现有问题的sql? 使用Mysql的慢查询日志对有效率问题的SQL进行监控 慢查询日志所包...

  • mysql查询优化 - 慢查询

    mysql查询速度优化思路 开启慢查询日志 查看导致阻塞的sql语句 重现场景, 单独测试 mysql 慢查询分析...

  • MySQL实战14 慢查询优化join、order by、gro

    1.慢查询的优化思路 1.1优化更需要优化的SQL 优化SQL是有成本的高并发低消耗的比低并发高消耗影响更大 优化...

  • MySQL性能优化(慢查询)

    1 MySQL性能优化之慢查询 1.1 性能优化的思路 首先需要使用慢查询功能,去获取所有查询时间比较长的SQL语...

  • Mysql慢查询日志

    Mysql慢查询日志 数据库的慢查询是影响项目性能的一大因素,对于数据库我们要优化SQL,首先要找到需要优化的SQ...

网友评论

    本文标题:SQL慢查询优化建议(二)

    本文链接:https://www.haomeiwen.com/subject/coizgctx.html