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

mysql开启慢查询

2016-04-17 16:57 417 查看
linux下:

一.在mysql中查询是否开启了慢查询
mysql>SHOW VARIABLES LIKE '%slow%';

Variable_name Value
log_slow_queries OFF

表示未开启

//查看慢查询时间
show variables like "long_query_time";
//查看慢查询配置情况
show status like "%slow_queries%";
//查看慢查询日志路径
show variables like "%slow%";

注解:

slow_launch_time的设定跟慢查询日志的查询阀值设定不同,表示了thread create的一个阀值,如果thread create的时间超过了这个值,这变量slow_launch_time的值加1.

而设置Long_query_time表示超过多少秒的查询就写入日志,默认的是10s,设置为0的话表示记录所有的查询。在Mysql 5.5可以追踪到微秒的查询。

二.配置

1.my.cnf配置
在my.cnf中的[mysqld]中添加如下语句:
#slow query
log-slow-queries=/data/var/log/mysql/mysql_slow_query.log
long_query_time=1

以上标示慢查询存放位置,将查询需要多少秒的sql语句记录.long_query_time如果为0,将记录所有查询
重启mysql

2.在mysql中配置,不重启mysql配置(该配置重启mysql将丢失)

mysql>show variables like ”%long%”; //查看一下默认为慢查询的时间10秒

mysql> show variables like ”%long%”; //查看一下慢查询是不是已经开启

mysql> set global long_query_time=2; //设置成2秒,加上global,下次进mysql已然生效

mysql> show variables like ”%slow%”; //查看一下慢查询是不是已经开启

mysql> set global slow_query_log=’ON’; //启用慢查询

mysql> show variables like ”%slow%”; //查看是否已经开启
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: