Das Programm MySQL Workbench 5.2.37 CE hat einen wahrhaft nervigen Fehler. Es erzeugt keine Nutzer mit leerem Passwort! In Windows ist mir das jedenfalls aufgefallen – ob auch die Linux-Version betroffen ist, weiß ich nicht.
Wer versucht, einen Nutzer anzulegen, der kein Passwort im Passwortfeld hat, wird zwar von Workbench gewarnt, dass ein Account mit leerem Passwort erzeugt wird, kann sich aber später nicht mit dem Account im SQL-Server einloggen.
Das sieht dann leider oft so aus:
C:\>mysql -utest
ERROR 1045 (28000): Access denied for user 'test'@'localhost' (using password: NO)
Abhilfe verschafft nur, sich manuell als Datenbanknutzer root bei MySQL über das Programm mysql anzumelden und das Passwort zu ändern.
Das klappt zum Beispiel für den Nutzer test, der Zugriff auf die Datenbank test haben soll so:
C:\> mysql -uroot -p"ganzgeheimespasswort"
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 104
Server version: 5.1.59-community-log MySQL Community Server (GPL)
mysql> USE mysql;
Database changed
mysql> SET PASSWORD FOR 'test'@'localhost' = PASSWORD('');
Query OK, 0 rows affected (0.01 sec)
mysql> \q
Bye
C:\>
Damit so ein Ärger nicht nochmals passiert, sollten neue Nutzer gleich auf der Kommandozeile angelegt und Zugriffsrechte für Datenbank und Tabellen zugewiesen werden.
Was auch nicht so kompliziert ist wie manche befürchten:
C:\> mysql -uroot -p"ganzgeheimespasswort"
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 104
Server version: 5.1.59-community-log MySQL Community Server (GPL)
mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY '';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT ALL PRIVILEGES ON test.* TO 'test'@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> \q
Bye
C:\>
Und siehe da, es klappt auch mit einem Account test wieder beim Zugriff auf die Datenbank test:
C:\>mysqlshow -utest
+--------------------+
| Databases |
+--------------------+
| information_schema |
| test |
+--------------------+
C:\>
Wer sich auf ein schönes grafisches Tool verlässt, merkt sowas natürlich erst später, wenn die Accounts schon angelegt sind. Und bei irgendeiner Installation von Software wie Perl oder PHP samt größerer Anwenung dann MySQL nervig herum meckert.
Dass so ein Bug nicht auffällt bei Oracles Betatestern ist verwunderlich.
Damit stimmt die alte Leier der Unix-Leute doch: Nur die Shell ist das Wahre für echte Admins.
.
Hauptsache, der Fehler im Programm kann gefunden und anders umschifft werden.







