有同学问我如何开启Mysql的慢查询呢,因为自己服务器很卡有没有办法找出Mysql中哪些查询语句缓慢,查询时间过长,我们需要在MySQL中启用缓慢查询日志.
为了启用它,需要在MySQL的配置选项文件(my.cnf)中这样设置,代码如下:
[mysqld]
log-slow-queries
这样会默认将超过10秒的查询记录到MySQL数据目录中的日志文件example.com-slow.log中去,你可以具体修改秒数以及日志的存储位置,如下面的代码所示,这里我们将缓慢查询的最小值设为5秒,代码如下:
- #TheMySQLserver
- [mysqld] //phpfensi.com
- long_query_time=5
- log-slow-queries=/var/log/mysql/example-slow.log
上面介绍的是windows系统,下面来介绍linux中操作方法,在mysql配置文件my.cnf中增加如下代码:
log-slow-queries=/var/lib/mysql/slowquery.log,指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log.
long_query_time=2,记录超过的时间,默认为10s.
log-queries-not-using-indexes,log下来没有使用索引的query,可以根据情况决定是否开启.
log-long-format,如果设置了,所有没有使用索引的查询也将被记录.