1

Я использую MySQL 5.6 на Mac OS X 10.8 и пытаюсь настроить mysql для записи genreral_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, я все равно получил эту ошибку. Если я закомментирую строку log_error в сеансе [mysql], она будет работать нормально.

Кроме того, когда я запускаю mysqld_safe/usr/local/mysql/bin), он просто распознает переменную log_error но не может распознать general_log . Однако, в отличие от mysql , mysqld_safe не дал мне никакой ошибки.

Не могли бы вы помочь мне с этим волосатым жучком?

2 ответа2

2

Опция 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 не является динамической переменной.

0

Клиентский инструмент mysql не распознает параметр log_error , и вы не должны пытаться его использовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .