一、开启查询日志

SHOW VARIABLES LIKE '%slow_query_log%';
#查看慢查询日志是否开启

mysql> SHOW VARIABLES LIKE '%slow_query_log%';
+---------------------+-----------------------------------+
| Variable_name       | Value                             |
+---------------------+-----------------------------------+
| slow_query_log      | OFF                               |
| slow_query_log_file | /var/lib/mysql/localhost-slow.log |
+---------------------+-----------------------------------+
2 rows in set (0.10 sec)

SET GLOBAL slow_query_log=1;
#开启慢查询日志

SHOW GLOBAL VARIABLES LIKE '%long_query_time%';
#查看慢查询时间阈值

mysql> SHOW GLOBAL VARIABLES LIKE '%long_query_time%';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)

SET GLOBAL long_query_time=3;
#设置慢查询时间阈值

二、查看慢查询

SHOW GLOBAL STATUS LIKE '%Slow_queries%';
#查看超过阈值的SQL语句数量

mysql> SHOW GLOBAL STATUS LIKE '%Slow_queries%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Slow_queries  | 0     |
+---------------+-------+
1 row in set (0.00 sec)

三、使用日志分析工具

#进入mysql安装路径bin目录下

./mysqldumpslow --help
#查看帮助信息

实例:
mysqldumpslow -s r -t 10 slow.log
#返回记录集最多的10个SQL

mysqldumpslow -s c -t 10 slow.log
#得到访问次数最多的10个SQL

mysqldumpslow -s t -t 10 -g "left join" slow.log
#得到按时间排序的前10条里面含有左连接的SQL

标签: none

添加新评论