2017-04-15 2 views
0

Ich habe ein Passwort mit Sonderzeichen drin, so etwas wie dieses eu8y~!~LZVdzW!2A.Wie passiere ich das Passwort in mysql Kommandozeile

Immer wenn ich versuche, den mysqldump Befehl zu feuern, wirft es eine Fehlermeldung,

mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect 

das ist, wie ich es tun.

mysqldump -uroot -p'eu8y~!~LZVdzW!2A' db_name > db.sql 

jedoch, wenn das Passwort separat angeben, funktioniert es.

mysqldump -uroot -p db_name > db.sql 

Ich führe den obigen Befehl in Python. Wie kann ich es tun?

+1

Versuchen Sie: mysqldump -uroot -peu8y ~! ~ LZVdzW! 2A db_name> db.sql'. Die Angabe eines Kennworts in der Befehlszeile sollte als unsicher betrachtet werden, siehe [7.1.2.1 Richtlinien für die Endgerätesicherheit für die Kennwortsicherheit] (https://dev.mysql.com/doc/refman/5.7/en/password-security-user .html). – wchiquito

+0

Habe das schon probiert. Funktioniert nicht. – PythonEnthusiast

+0

_ "Ich führe den obigen Befehl in Python." _ - [_there zeigen die genaue Art, wie Sie es ausführen _] (/ help/mcve), oder wir können Ihnen nicht helfen, wenn das Problem in dem Unterschied zwischen dem, was Sie sind habe gezeigt und was du tatsächlich benutzt. Es ist seltsam, dass ich dies einem 2.5k + User sagen muss. –

Antwort

0

Ich kann das Problem nicht reproduzieren:

mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'eu8y~!~LZVdzW!2A'; 
Query OK, 0 rows affected (0.00 sec) 

mysql> GRANT ALL ON `db_name`.* TO 'myuser'@'localhost'; 
Query OK, 0 rows affected (0.00 sec) 
$ mysqldump -umyuser -p'eu8y~!~LZVdzW!2A' db_name > db.sql 

Die Datei (db.sql) erzeugt wird, wie erwartet.

Verwandte Themen