Ich habe MySQL 5.5 auf einer neuen VM installiert, auf der Ubuntu 14 LTS läuft apt-get
. Während der Installation stelle ich ein Wurzel Benutzerkennwort, das von einem Kennwortmanager generiert wird. Nach der Installation konnte ich auf keine Funktionen als MySQL-Root-Benutzer zugreifen:
<user>@<hostname>:~$ mysql -u root -p
Enter password: <root user pw set at installation>
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Ich dachte, dass etwas falsch lief, als ich das root-Passwort setzte
<user>@<hostname>:~$ sudo dpkg-reconfigure mysql-server-5.5
um das root-Passwort zurückzusetzen, obwohl ich es auf das gleiche Passwort "zurücksetzt". Ich erhielt das gleiche weiter Access denied
Error.
Dann setze ich das root-Passwort mit derselben Methode erneut auf etwas kürzeres und leicht typisierbares (also schwaches) Zeichen, das nur alphanumerische Zeichen enthält. Das hat funktioniert! Ich kann jetzt als Root-Benutzer auf MySQL-Funktionen zugreifen.
Der einzige Unterschied scheint die Komplexität des Passworts zu sein. Das ursprüngliche sichere Kennwort bestand aus 18 Zeichen und enthielt Satzzeichen wie ^ \:! Usw. Nur ASCII und keine Leerzeichen.
Ist dieses Kennwort gegen eine Regel verstoßen, die MySQL-Kennwörter einhalten müssen, entweder in Bezug auf Länge oder Zeichensätze? Ich habe gesucht, und ich habe keine Hinweise auf solche Einschränkungen gefunden, die meiner Meinung nach gut veröffentlicht wären. Wenn nicht das, was hätte das Problem sonst noch haben können?
Vielen Dank!
127.0.0.1
stattdessen mit einer Syntax wie ..............mysql -u root -p -h 127.0.0.1
und dann sehen was passiert. Vielleicht derlocalhost
ist nicht erlaubt pro--skip-name-resolve
gesetzt sein oder nur eine explizite Regel haben, die es root nur erlaubt, eine Verbindung von der127.0.0.1
Wirt.