无法在MySQL中启用日志 - 错误:在配置文件

时间:2015-07-10 11:51:00

标签: mysql ubuntu mysql-5.6 ubuntu-15.04

我正在尝试在我的MySQL服务器上启用日志,但没有成功。 我做了什么:

1)我创建了具有正确权限的日志文件:

touch /var/log/mysql/mysql.log   
chown mysql:mysql /var/log/mysql/mysql.log

2)我已将所需的更改添加到my.cnf文件中:

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

我的my.cnf文件如下:

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

#
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

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

我无法重启MySQL,当我尝试登录时,出现此错误:

  

错误:在配置文件中找到没有前面组的选项:   /etc/mysql/my.cnf at line:23默认处理中出现致命错误。   节目中止

这意味着什么以及如何解决这个问题?

我正在使用 Ubuntu 15.05 MySQL 5.6.24-0ubuntu2

3 个答案:

答案 0 :(得分:23)

也许您应该将[mysqld]添加为my.cnf文件的第一行。

答案 1 :(得分:0)

打开my.conf,查找 [mysqld] ,编写服务器变量,如下所述。

log = /var/log/mysqld.log
log-error = /var/log/mysqld.error.log

确保该文件具有644或更高权限。使用

查找mysql错误日志变量

显示'%log%';

等变量

最新的mysql使用 log,log-error 变量。

由于 阿米特

答案 2 :(得分:0)

在我的情况下,我正确设置了[mysqld]部分,但此错误是由文件开头的无效空白字符引起的。它导致解析文件失败。在从Windows复制/上传到Linux时,以某种方式插入了字符。我需要通过linux文件查看器打开文件,然后删除无效字符然后它工作正常。