fastix®: phpMyAdmin & mySQL Konfiguration

Beitrag lesen

Moin!

Bekomme ich selbe Fehlermeldung:
ERROR 1045 ACCESS denied for user: root@localhost <Using Password=Yes>

Wenn schon der Zugriff nicht klappt, dann brauchst Du Dir um die weiteren Befehle keine Sorgen machen- das kann nicht gehen.

Also: Was hast Du an der Datenbank zuletzt verändert?
Es sieht so aus, als hättest Du Dich an den Benutzerrechten vegriffen. Hast Du das Passwort des Benutzers Root geändert? Wenn Du es geändert hast: hast Du danach den MySQL- Server schon mal angewiesen die neuen Grant- Tables auch zu verwenden? (da gibts verschiedene Möglichkeiten. Eine ist den MySQL- SERVER (!) neu zu starten.)

Du kannst versuchen den Mysql- Server zu beenden und am Prompt mit:

c:> C:\mysql\bin\mysqld.exe --skip-grant-tables
                  ^^^^^^^^^^ Das ist der Server!
zu starten. Das ist eine Art "Notstart". Zuvor sollte man in produktiven Umgebungen den Zugriff auf den Datenbankserver sperren. (vom Netz trennen oder Port 3306 durch lokale Firewall schließen und "lokal" am Server arbeiten) Ich bezweifle, das dies an Deinem Home- Rechner "nötig" ist. "Empfehlenswert" ist es aber, den Rechner solange vom Internet zu nehmen, bis man insbesondere dem Root ein Passwort vergeben hat.

Danach:
c:> C:\mysql\bin\mysql  # << das ist der client!
mysql> use mysql;
mysql> update users set password = password("Dein Passwort") where user="root";
mysql> exit;

Danach: beende den Datenbankserver und starte ihn neu, diesmal aber mit beachtung der Grants:
c:> C:\mysql\bin\mysqld.exe

Jetzt sollte der Zugriff funktionieren.

Was Du lesen solltest:
Nimm ein Buch oder das MySQL- Manual und lese alles über den Unterschied zwischen einer Datenbank und den einem Datenbankmanagement- System sowie über die Benutzerverwaltung. Hier könnten Dir die grant- Befehle sehr nützlich sein.

http://dev.mysql.com/doc/mysql/de/MySQL_Database_Administration.html

Übrigens: Falls Du mit am Rechtesystem noch nichts geändert hast (entweder in der Datenbank "mysql" oder mittels grant- Befehlen) hat Dein "root" ein leeres Passwort. Um das zu ändern kannst Du den oben genannten Befehl am MySQL- Client ausführen. (Server muss laufen und Du musst Dich erstmal anmelden können...)

mysql> update users set password = password("Dein Passwort") where user="root";
2 rows affected # Das ist die Antwort des Servers. Es gibt im Standardfall den root zweimal: Einmal localhost, einmal für beliebige Rechner. Du kannst das ändern.
mysql> flush privileges; # Dies liest die Benutzerrechte neu ein.

Ganz wichtig: Beim Start mit winmysqladmin wird nach einem Passwort gefragt. Dieses ist aber so herrlich vollkommen irrelevant, eher eine Art Täuschung....

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix®

--
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Development. Auch  für seriöse Agenturen.