webentwicklung-frage-antwort-db.com.de

mysqldump unbekannte Option kein Piepton

Ich führe MySQL 5.5 unter Windows aus und versuche einen mysqldump:

 "C:\WebServer\MySQL Server 5.5\bin\mysqldump.exe" -u user -ppassword database > "C:\backup.sql"

Aber bekomme einen Fehler: 

mysqldump: unbekannte Option '--no beep'

Dies ist ein ziemlich einfacher Befehl, der auf zwei anderen Entwicklungsboxen angewendet werden kann.

21
JustBaron

Dieselbe Ausgabe, kommentiert (#) die No-Beep-Zeile in MySQL my.ini, löste das Problem.

30
Matt

Ich habe diese Antwort auf dba.stackexchange.com gefunden, was sehr hilfreich ist:

Die no-beepOption bewirkt, dass der mysql - Befehlszeilenclient nicht piept, wenn Fehler auftreten.

Wenn dies eine Option ist, die Sie möchten, sollte sie sich im Abschnitt [mysql] Ihres my.cnf [oder my.ini] befinden. Dieser Fehler weist darauf hin, dass er sich im Abschnitt [client] Ihres my.cnf befindet, was dazu führt, dass [...] der Fehler ausgegeben wird, da die Option nicht erkannt wird.

Überprüfen Sie Ihren my.cnf und entfernen Sie entweder die Zeile oder platzieren Sie sie anstelle von [mysql] im Abschnitt [client].

Die Optionsgruppe [Client] wird von allen Client-Programmen gelesen (jedoch nicht von mysqld). Auf diese Weise können Sie Optionen angeben, die für alle Clients gelten. Beispielsweise ist [Client] die perfekte Gruppe, um das Kennwort anzugeben, das Sie für die Verbindung zum Server verwenden. (Stellen Sie jedoch sicher, dass die Optionsdatei nur von Ihnen gelesen und beschrieben werden kann, damit andere Benutzer Ihr Kennwort nicht finden können.) Stellen Sie sicher, dass Sie keine Option in die Gruppe [Client] setzen, es sei denn, sie wird von allen Client-Programmen, die Sie verwenden, erkannt benutzen. Programme, die die Option nicht verstehen, werden nach dem Anzeigen einer Fehlermeldung beendet, wenn Sie versuchen, sie auszuführen.

- http://dev.mysql.com/doc/refman/5.6/de/option-files.html

8
naitsirch

Etwas in einer Umgebungsvariablen oder in meiner.cnf-Datei?

Was es wert ist, wenn ich die No-Beep-Option (eine gültige Option für den mysql-Client, aber nicht für mysqldump) in den [client]-Abschnitt meiner Konfigurationsdatei stelle, bekomme ich 

mysqldump: unknown option '--no-beep'
6
ysth

Obwohl das Entfernen der Option -no-beep aus dem Clientabschnitt in der Datei my.ini in den Eigenschaften des mysql-Diensts entfernt wurde, blieb das Problem bestehen. Der MYSQL56-Service-Setup verwendete my.in von E:\Program Data\MySQL\MySQL Server 5.6 \. Und diese Ini-Datei hatte im Abschnitt [Client] keine Option -no-Beep.

Was war das Problem?

In meinem Setup befindet sich mysqldump.exe unter C:\Programme\MySQL\MySQL Server 5.6\bin. Bei Ausführung als Befehlszeilenoption verwendete mysql C:\Programme\MySQL\MySQL Server 5.6\my.ini. Diese Ini-Datei enthielt die No-Beep-Option. mysqldump verwendete nicht die vom Dienst angegebene my.ini-Datei, sondern das Verzeichnis, in dem es sich befand.

Das Löschen von C:\Programme\MySQL\MySQL Server 5.6\my.ini löst das Problem.

1
user3470332

Ein Hinweis dazu ist, dass Sie die verschiedenen installierten MySQL-Produkte kennen müssen. Das folgende Szenario erklärt es am besten.

  • C:\Programme\MySQL\MySQL Server 5.5\my.ini (erstellt aus einer vorherigen Installation)
  • C:\Programme\MySQL\MySQL Server 5.6\my.ini (jemand hat dies hier kopiert, wer weiß warum)
  • C:\Programme\MySQL\my.ini (erstellt mit dem MySQL Installer-Konfigurationsassistenten)

Sie können also davon ausgehen, dass die MySQL Workbench Einstellungen aus der my.ini-Datei der MySQL-Version zieht, mit der Sie arbeiten. Dies ist eine sichere Annahme, da beim Konfigurieren einer Konfiguration für die Administration in der Workbench auf den für diese Installation spezifischen my.ini hingewiesen werden muss. Dies ist jedoch falsch, da ich festgestellt habe, dass es sich bei demjenigen befindet, der sich in C:\Program Files\MySQL\my.ini befindet, als zu verwenden. Sie müssen diese Datei daher bearbeiten, damit die Workbench ordnungsgemäß funktioniert.

0
brentil

Das Löschen der No-Beep-Option funktionierte für mich, aber ich musste die Datei my.ini in meinem Windows-Verzeichnis ändern ! Ich benutze übrigens Fenster 10.

0
des-chain

Eine alternative Lösung ist die Verwendung der Option --no-defaults 

ZB: mysqldump --no-defaults -u root -p [DB_NAME] > [FILE_NAME].sql

0
Subhash