您的位置:首页 > 数据库 > MySQL

mysql开启慢查询功能

2016-10-15 12:57 274 查看
mysql的慢查询功能能记录用户操作时符合条件的sql查询语句,并保存到文件,这样就可以定位到具体的效率低sql语句上,有助于我们改进sql语句的效率。

开启慢查询,有两种方式:

第一种是在mysql的配置文件中配置开启;

#开启慢查询,设置sql查询时间限制
#默认off
slow_query_log = on

#默认10s
long_query_time   = 0.5

#默认目录为mysql安装目录下的/mysql/data/mysql_slow_query.log
slow_query_log_file="mysql_slow_query.log"


第二种是在cli下配置;

查询slow-query-log状态

mysql> show variables like '%slow%';
+---------------------------+----------------------+
| Variable_name             | Value                |
+---------------------------+----------------------+
| log_slow_admin_statements | OFF                  |
| log_slow_slave_statements | OFF                  |
| slow_launch_time          | 2                    |
| slow_query_log            | ON                   |
| slow_query_log_file       | mysql_slow_query.log |
+---------------------------+----------------------+
5 rows in set (0.00 sec)

#开启命令
set global slow_query_log = 1;

#关闭命令
set global slow_query_log = 0;


查询long_query_time状态

mysql> show variables like '%long_query%';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| long_query_time | 0.500000 |
+-----------------+----------+
1 row in set (0.00 sec)

#配置命令
//注意如果是在cli下设置的,务必重新打开cli窗口查询,否则会显示未成功修改

set global long_query_time = 0.5


区别:前者是根据配置文件进行配置,但需要重启mysql服务器生效,后者直接配置生效,比较高效,也能避开重启mysql带来的影响。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息