我将这些内容添加到 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 中工作