【问题标题】:enabling MySQL v5.6.27 general query log启用 MySQL v5.6.27 通用查询日志
【发布时间】:2015-11-24 22:37:33
【问题描述】:

我想在 ubuntu 上启用 MySQL v5.6.27 的通用查询日志。

我编辑的文件位于:

/etc/mysql/my.cnf

我尝试在 my.cnf 文件中输入以下内容:

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

然后我尝试重新启动 MySQL 服务器,但终端只是挂起。

查询日志的文件权限如下:

-rwxrwxr-x  1 mysql mysql     0 Nov 24 13:28 mysql.log

如果我删除这些行,那么 MySQL 服务器会重新启动。 所以上面的行不属于那个文件。

有什么想法我在这个问题上会出错吗?

提前致谢

广告

【问题讨论】:

  • mysql 用户很可能对query.log没有写权限
  • 您是否尝试将 777 临时提供给您的 /log/mysql 路径。试试看,如果不是,将权限更改为其默认值,这样您就可以确定权限。 chown mysql:mysql /var/log/mysql/ 然后chmod 777 /var/log/mysql/
  • 试过了,还是不开心:-/。我认为这是一个语法错误,因为当我尝试重新启动它时服务器挂起。如果我从 my.cnf 中删除这些行,服务器将重新启动正常。
  • 你在 shell 的 mysql 命令行上尝试过SET global general_log_file = /var/log/mysql/query.log
  • /var/log/mysql/mysql.log 你的服务器上真的有这个路径和文件吗?你手动检查了吗?如果您没有创建日志文件,则必须创建它。 MYSQL 无法创建。

标签: mysql


【解决方案1】:

尝试使用“ON”而不是“1”general_log = 'ON';

https://dev.mysql.com/doc/refman/5.5/en/query-log.html

此外,如果您的日志文件的文件路径对于 mysql 不可写,您将无法执行任何操作。给mysql写权限。

看到这个答案:https://stackoverflow.com/a/8788032/1848929

【讨论】:

  • 我已经在描述中添加了当前文件权限。
  • 我已尝试将 '1' 更改为 'ON',但在我重新启动服务器时仍然挂起。
【解决方案2】:

好的原因是 my.cnf 中需要的 2 行

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

只需要把它放在上面:

[mysqld]
general_log=1
general_log_file=/var/log/mysql/mysql.log

这解决了重启问题,并且当我跟踪它们时日志正常工作。

感谢@hakkikonu 的帮助。

【讨论】:

    猜你喜欢
    • 2015-12-25
    • 2012-06-09
    • 2011-09-22
    • 1970-01-01
    • 2014-05-01
    • 1970-01-01
    • 2014-05-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多