慢查询日志

慢查询日志

slow_query_log 启动/停止记录慢查询日志,默认是OFF

slow_query_log_file 指定慢查询日志的存储路径,默认存放路径与data存放路径一致

long_query_time 指定记录慢查询日子SQL执行时间的阈值,默认是10s,通常改为1ms可能比较合适

log_queries_not_using_indexes 是否记录未使用索引的SQL

慢查询日志

第一行:用户、主机 以及进程号12

第二行:查询时间

第三行:锁的时间

第四/五行:返回的行数以及扫描的行数

第六行:执行这个SQL的时间

第七行:sql

慢查询日志分析工具


工具1:mysqldumpslow

汇总除查询条件外其他完全相同的SQL,并将分析结果按照参数中所指定的顺序输出

mysqldumpslow -s r -t 10 slow -mysql.log

  • -s order(c,t,l,r,at,al,ar)[指定按哪种排序方式输出结果]:

  • c 总次数

  • t 总时间

  • l 锁的时间

  • r 总数据行

  • at/al/ar/:t,l,r的平均数,例如:at=总时间/总次数

  • -t top 指定取前几条输出

工具2:pt-query-digest