MYSQL开启慢查询我们可以记录数据库在执行过程中的几乎所有记录,并且可以查看出mysql那条sql执行性能,下面我来介绍mysql在linux与window下开启慢查询方法.
打开MySQL慢查询
MySQL慢查询记录日志对于跟踪PHP+MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题,其实启用MySQL的慢查询日志很简单,只需要在MySQL的配置文件里添加log-slow-queries和long_query_time两个参数即可.
Windows下开启MySQL慢查询,MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上:
log-slow-queries = F:/MySQL/log/mysqlslowquery.log
long_query_time = 2
Linux下启用MySQL慢查询,MySQL在Windows系统中的配置文件一般是是my.cnf找到[mysqld]下面加上:
log-slow-queries=/data/mysqldata/slowquery.log
long_query_time=2
注意:log-slow-queries = F:/MySQL/log/mysqlslowquery.log为慢查询日志存放的位置,一般这个目录要有MySQL的运行帐号的可写权限,一般都将这个目录设置为MySQL的数据存放目录.
long_query_time=2中的2表示查询超过两秒才记录;
2009年09月24日更新
在my.cnf或者my.ini中添加log-queries-not-using-indexes参数,表示记录下没有使用索引的查询,比如:
- log-slow-queries=/data/mysqldata/slowquery.log
- long_query_time=2 //phpfensi.com
- log-queries-not-using-indexes
今天我在开启MYSQL慢查询的时候,MYSQL服务死活不能启动,报错:
[ERROR] MySQL: unknown variable 'log-slow-queries=D:/ProgramData/MySQL/phpec_org-slow.log'
半天找不到原因,后面经过不断百度,发现原来MYSQL5.6版以上已经取消了log-slow-queries这个参数,改为slow-query-log-file即可. |