mysql一般日志无法找到文件

时间:2013-08-29 02:47:42

标签: mysql

我正在使用ubuntu并且我使用mysql.log将文件im给了777的chmod。我也尝试使用chown mysql:mysql,这里是my.cnf文件中的段。

general_log_file        = /var/www/logs/mysql.log
general_log             = 1

我运行了一个简单的查询,文件中没有任何内容。所以我通过终端进入了mysql并输入了

SET GLOBAL general_log:=1;

我得到了

ERROR 29 (HY000): File '/var/www/logs/mysql.log' not found (Errcode: 13)

文件确实存在,我不明白为什么mysql看不到它。我尝试了这些命令来查看数据是否保存到mysql中,并且信息看起来是正确的

SELECT @@global.general_log;
SELECT @@global.general_log_file;
SELECT @@global.log_output;

我需要使用什么chown用户?我已经尝试了一切,而mysql只是不想记录查询。我想记录所有查询。这是一个开发服务器,因此它不存在。

2 个答案:

答案 0 :(得分:1)

我的设置位于具有权限-rw-rw-rw-的自定义位置,所有者和组设置为root。您还应该确保您授予权限的任何用户都可以访问您尝试授予其访问权限的每个目录。

此外,我建议您不要将日志放在public_html内。这将允许恶意人获取有关您的SQL版本等的信息,更糟糕的是,让他们找个地方看看他们正在尝试的是否有效。

答案 1 :(得分:1)

  

如果您没有为常规查询日志文件指定任何名称,则为默认名称   name是host_name.log。服务器在数据中创建文件   目录,除非给出绝对路径名来指定不同的名称   。目录

例如在mysq服务器中,该文件是: 的 /var/lib/mysql/myServer.log

http://dev.mysql.com/doc/refman/5.7/en/query-log.html