码迷,mamicode.com
首页 > 数据库 > 详细

MYSQL的慢查询分析

时间:2016-07-09 13:32:07      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:

1、日志记录(slow.log)

long_query_time是用来定义慢于多少秒的才算慢查询
mysql> show variables like long%;
 +-----------------+-----------+
 | Variable_name   | Value     |
 +-----------------+-----------+
 | long_query_time | 10.000000 | 
 +-----------------+-----------+
 1 row in set (0.00 sec)
long_query_time定义慢查询的时间阀值
mysql> set long_query_time=1;
Query OK, 0 rows affected (0.00 sec)

慢查询相关变量说明

mysql> show variables like slow%;
+---------------------+---------------+
| Variable_name       | Value         |
+---------------------+---------------+
| slow_launch_time    | 2             | 
| slow_query_log      | ON            |
| slow_query_log_file | /tmp/slow.log |
+---------------------+---------------+
3 rows in set (0.00 sec)

设置记录开关

mysql> set global slow_query_log=ON

2、mysqldumpslow命令

mysqldumpslow -s c -t 10 /tmp/slow-log

-s, 是表示按照何种方式排序,c、t、l、r分别是按照记录次数、时间、查询时间、返回的记录数来排序,ac、at、al、ar,表示相应的倒叙;
-t, 是top n的意思,即为返回前面多少条的数据;
-g, 后边可以写一个正则匹配模式,大小写不敏感的;

mysqldumpslow -s r -t 10 /tmp/slow-log 得到返回记录集最多的10个查询。
mysqldumpslow -s t -t 10 -g “left join” /tmp/slow-log 得到按照时间排序的前10条里面含有左连接的查询语句

 

MYSQL的慢查询分析

标签:

原文地址:http://www.cnblogs.com/yudis/p/5655601.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!