Ответ 1
Такая же проблема, прокомментировала (#) строку без звукового сигнала в MySQL my.ini, решила проблему.
Я использую MySQL 5.5 в Windows и пытаюсь выполнить mysqldump:
"C:\WebServer\MySQL Server 5.5\bin\mysqldump.exe" -u user -ppassword database > "C:\backup.sql"
Но получите ошибку:
mysqldump: неизвестная опция '--no beep'
Это довольно простая команда, которая работает над двумя другими блоками разработки, так что не знаете, что вызывает это?
Такая же проблема, прокомментировала (#) строку без звукового сигнала в MySQL my.ini, решила проблему.
Я нашел этот ответ на dba.stackexchange.com, что очень полезно:
no-beep
option заставляет клиент командной строкиmysql
не издавать звуковой сигнал при возникновении ошибок.Если этот параметр вам нужен, он должен находиться в разделе
[mysql]
вашегоmy.cnf
[или my.ini]. Эта ошибка указывает на то, что она находится в разделе[client]
вашегоmy.cnf
, что приводит к ошибке [...], поскольку параметр не распознается.Проверьте
my.cnf
и удалите строку или поместите ее в разделе[mysql]
вместо[client]
, и вы должны быть хорошими.Группа параметров [клиент] читается всеми клиентскими программами (но не mysqld). Это позволяет указать параметры, которые применяются ко всем клиентам. Например, [клиент] - идеальная группа, используемая для указания пароля, который вы используете для подключения к серверу. (Но убедитесь, что файл параметров доступен для чтения и записи только для вас, чтобы другие люди не могли узнать ваш пароль.) Не забудьте добавить опцию в [клиентскую] группу, если она не распознается всеми клиентскими программами, которые вы использовать. Программы, которые не понимают, что опция выключена после отображения сообщения об ошибке, если вы попытаетесь запустить их.
Что-то в переменной окружения или в файле my.cnf?
Для чего это стоит, когда я помещаю опцию no-beep (допустимая опция для клиента mysql, но не для mysqldump) в разделе [client]
моего конфигурационного файла, я получаю
mysqldump: unknown option '--no-beep'
(Как упоминалось в ответе naitsirch, его следует переместить из раздела [client]
раздел [mysql]
чтобы он не пытался использовать его для других клиентских программ, таких как mysqldump.)
Несмотря на удаление -no-beep otion из раздела клиента в файле my.ini, указанном в свойствах службы mysql, проблема не устранена. Установленная служба MYSQL56 использовала my.in из E:\Program Data\MySQL\MySQL Server 5.6 \. И этот файл ini не имеет опции -no-beep в разделе [клиент].
Так в чем была проблема?
В моей настройке mysqldump.exe находится в папке C:\Program Files\MySQL\MySQL Server 5.6\bin. При запуске этого параметра в качестве командной строки mysql использовал C:\Program Files\MySQL\MySQL Server 5.6\my.ini. В этом ini файле содержалась опция no-beep. mysqldump не использовал my.ini, указанный службой, а скорее один каталог вверх.
Удаление C:\Program Files\MySQL\MySQL Server 5.6\my.ini решает проблему.
Одно замечание, касающееся этого, вы должны знать о ваших различных установленных продуктах MySQL. Следующий сценарий лучше всего объясняет это.
Таким образом, вы можете предположить, что MySQL Workbench рисует настройки из файла my.ini
внутри версии MySQL, с которой вы работаете. Это было бы безопасным допущением, так как для настройки конфигурации администрирования в Workbench необходимо указать my.ini
специфичный для этой установки. Однако это неверно, так как я обнаружил, что он привязан к тому, который находится в C:\Program Files\MySQL\my.ini
как тот, который нужно использовать. Таким образом, вы должны отредактировать этот файл для правильной работы Workbench.
Удаление опции no-beep для меня работало, но мне пришлось изменить файл my.ini в каталоге Windows! Кстати, я использую Windows 10.
Альтернативное решение - использовать опцию --no-defaults
Например: mysqldump --no-defaults -u root -p [DB_NAME] > [FILE_NAME].sql
Удаление my.ini
из C:\ProgramData\MySQL\MySQL Server 5.6
разрешило его для меня.