为mysql开启慢查询,只有那些耗费时间超过自己设置的阙值才会被记录,这个经常用于查找哪些mysql查询比较慢,影响了用户体验,然后找到比较慢的查询语句进行调整性能等,为查找哪些mysql语句比较耗费时间提供了一个很好的工具。

修改这个有两个办法,一个办法就是修改mysql的配置文件。

Linux:

在mysql配置文件/etc/my.cnf中[mysqld]选项下增加:

vi /etc/my.cnf

log-slow-queries=/usr/local/mysql/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log)
long_query_time=1 (记录超过的时间,默认为10s)
log-queries-not-using-indexes (log下来没有使用索引的query,可以根据情况决定是否开启)
log-long-format (如果设置了,所有没有使用索引的查询也将被记录)

Windows:

在my.ini的[mysqld]添加如下语句:
log-slow-queries = D:wampmysqllogmysqlslowquery.log
long_query_time = 1(其他参数如上)

保存后重启mysql即可加载配置

还有另外一种的修改方式是直接使用命令模式

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

| long_query_time | 10.000000 |

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

| slow_query_log      | OFF                             |

我这边显示的现在还是关闭的状态

mysql> set global slow_query_log=’ON’;            //启用慢查询。这边需要注意的是必须要加上全局global说明,不然会出错误的!

设置之后再进行查询一下是否开启了慢查询。其它的参数修改跟这个都是差不多的!

相关文章:

  • 暂无相关文章