无法让 mysql slowqueries 记录日志

无法让 mysql slowqueries 记录日志

我将这些内容添加到 my.cnf 文件中。

log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 4

然后我在 /var/log/ 中创建了一个名为 mysql 的目录。然后我重新启动了 mysql 服务。

但慢查询没有记录。我知道有慢查询发生,因为当我输入以下命令时:mysqladmin proc stat -u root -p 我得到了一些内容,其中一条显示 - 慢查询:845

我认为唯一可能存在问题的是,我以 root 身份创建了 /var/log/mysql 目录,因此 mysql 服务可能没有权限写入该目录。因此,我在该目录上执行了 chown mysql,但该目录中仍未创建任何文件。

答案1

看看这个:慢查询日志

我认为您可能必须通过设置 slow-query-log=1 来启用慢查询日志记录

也可以尝试一下

mysql> SHOW GLOBAL VARIABLES LIKE 'log_slow_queries';

如果报告 ON,则表示慢查询日志已启用。

在这种情况下,您可以尝试降低 long_query_time。

答案2

如果您遇到权利问题/var/log/mysql/mysql-slow.log,请尝试以下操作:

service mysql stop
touch /var/log/mysql/mysql-slow.log
chown mysql:mysql /var/log/mysql/mysql-slow.log
service mysql stop

我之前推荐过这个:让常规日志在 MySQL 5.6.8 中工作

相关内容