MySQL 无法识别文件选项上的变量

MySQL 无法识别文件选项上的变量

我在 Mac OS X 10.8 上使用 MySQL 5.6,并尝试配置 mysql 以将 generral_log 记录到文件中。但是,启动它时总是会抛出错误。

.my.cnf文件如下所示(位于我的主目录中):

[mysqld]
general_log=/var/tmp/mysql/mysqld.log
log_error = /var/tmp/mysql/mysqld.error.log

[mysql]
log_error = /var/tmp/mysql/mysqld.error.log
#general_log_file = /var/tmp/mysql/mysqld.log
#auto-rehash

每当我在终端上启动 mysql 客户端时,它都会抛出如下错误:

mysql: unknown variable 'log_error=/var/tmp/mysql/mysqld.error.log'

无论我将其更改为 log-error,我仍然会收到该错误。如果我在 [mysql] 会话中注释掉 log_error 行,它就可以正常工作。

另外,当我启动mysqld_safe(在/usr/local/mysql/bin)时,它只能识别log_error变量,但无法识别general_log。但是,与 不同mysqlmysqld_safe并没有给我任何错误。

你能帮我解决这个棘手的虫子吗?

答案1

选项log-error 是服务器选项(mysqld)

/etc/my.cnf在群底下也认得[mysqld]

该选项不存在mysql 客户端程序并且在组标题下无法被理解[mysql]

单击此处查看 mysql 客户端程序的所有选项

原因在组标题log-error下起作用[mysqld_safe]?任何 mysqld_safe 无法理解的选项都会传递给[mysqld]

mysql 客户端程序无法重新路由 的目标文件log-error。您必须在 中更改它my.cnf并重新启动。它不会对[mysqld]中的组头产生影响,.my.cnf因为log-error不是动态变量。

答案2

客户mysql端工具无法识别该log_error选项,您不应尝试使用它。

相关内容