介绍如何开启慢查询,以及相关分析工具。

查看MySQL慢查询是否开启

1
2
3
4
5
6
7
8
9
10
11
12
13
mysql> show variables like '%slow%';
+---------------------+---------------------------------+
| Variable_name | Value |
+---------------------+---------------------------------+
| log_slow_queries | ON |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /var/run/mysqld/mysqld-slow.log |
+---------------------+---------------------------------+

set global slow_query_log=ON; #开启MySQL慢查询功能
show variables like "long_query_time"; #查看MySQL慢查询时间设置,默认10秒
set global long_query_time=5; #修改为记录5秒内的查询

MySQL 官方慢查询工具 mysqldumpslow

8.x 版本,官方文档

MySQL慢日志分析工具 mysqlsla

是一个开源项目,git地址 hackmysql.com

1
mysqlsla -lt slow -sf "+select" -top 5 -sort t_sum /root/mysqld-slow.log