MySQL开启慢查询日志记录 - MySQL参数

MySQL慢查询记录日志对于跟踪PHP+MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题。其实启用MySQL的慢查询日志很简单,只需要在MySQL的配置文件里添加log-slow-queries和long_query_time两个参数即可。

Windows下开启MySQL慢查询

MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上
long_query_time = 2    //查询的时间,即当一条 SQL 执行时间超过2秒的时候才记录
log-slow-queries[=file_name]    //指定慢查询日志存储的位置
比如:log-slow-queries = D:\mysqllog\mysqlslowquery.log



Linux下启用MySQL慢查询

MySQL在Linux系统中的配置文件一般是是my.cnf找到[mysqld]下面加上
long_query_time=2
log-slow-queries=/data/mysqldata/slowquery.log      //慢查询日志存储的位置,该目录需要具有MySQL运行帐号的可写权限
备注:linux下在mysqld进程启动时,指定–log-slow-queries[=file_name]选项也可以启用慢查询记录日志


需要注意的是:新版本MySQL中日志记录位置的默认参数slow-query-log-file,如果使用log-slow-queries可能会收到如下警告信息:

100510   2:42:59 [Warning] '--log_slow_queries' is deprecated and will be removed in a future release. Please use ''--slow_query_log'/'--slow_query_log_file'' instead.



仅记录没有使用索引的查询,在my.cnf或者my.ini中添加log-queries-not-using-indexes参数。例如:

log-slow-queries=/data/mysqldata/slowquery.log
long_query_time=2
log-queries-not-using-indexes

相关文章

此处评论已关闭