1.慢查询日志
MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中
#查看慢查询是否开启
>show variables like '%slow_query_log%';
#开启慢查询(默认是关闭)
>set global slow_query_log=1;
#设置时间阀值(默认是10s)
>set global long_query_time=1;
#未使用索引的查询也被记录到慢查询日志中(默认关闭)
>set global log_queries_not_using_indexes=1;
分析日志
mysqldumpslow /var/lib/mysql/ArchLinux-slow.log
Count: 1 #访问计数
Time=0.00s (0s) #平均查询时间(总查询时间)
Lock=0.00s (0s) #平均锁定时间(总锁定时间)
Rows_sent=1000.0 (1000) #平均返回记录数(总返回记录数)
Rows_examined=1000.0 (1000) #平均扫描过的行数(总扫描过的行数)
Rows_affected=0.0 (0) #平均更新行数(总更新行数)
分析日志(percona-toolkit)
pt-query-digest /var/lib/mysql/ArchLinux-slow.log
开始总的摘要信息
# 170ms user time, 10ms system time, 26.00M rss, 2