首先在开发过程中也需要开启数据库Mysql的慢查询 SET GLOBAL slow_query_log='on'; 其次设置慢SQL的最小时间 注意:这里时间单位是s秒但是有6位小数因此可以表示到微妙的时间力度,一般单表SQL执行时间在20ms之内为宜,反之理解就是在开发过程中,如果你执行的sql语句超过了20ms则你需要去关注它。 SET GLOBAL long_query_time=0.02; 为方便操作可以把慢SQL记录到表中而不是文件中 SET GLOBAL log_output='TABLE'; 最后通过mysql.slow_log表就可以查询到记录的慢SQL
首先开启数据库Mysql的慢查询 SET GLOBAL slow_query_log='on'; 其次设置慢SQL的最小时间 SET GLOBAL long_query_time=0.02; 一般生成时把慢SQL放到文件 SET GLOBAL log_output='FILE'; 下载慢SQL日志文件到本地 最后关闭数据库Mysql的慢查询 着重注意:生产的慢SQL最好在使用时,才去开启,用完后关闭,避免日志记录影响到业务性能 SET GLOBAL slow_query_log='off'; SQL怎么调优? SQL调优融合多方面的知识,总体来说常见从表结构、表索引、两方面来优化。
多表关联查询(JOIN)中,order by 或group by使用的列不是第一个表的列 group by 的列不是索引列时 distinct和group by 联合使用 order by 语句中使用了distinct关键字 group by 的列时索引列,但数据量过大时 2.2、如何查看是否使用内部临时表?