Kein Zugang für phpMyAdmin für Benutzer root

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen

Auf meinem Raspberry Pi hatte ich das Problem, dass ich nach der Neuinstallation bzw. Update auf Rasbian 9.0 statt dem gewohnten MySQL jetzt eine MariaDB installiert bekam. Nun gut, die beiden sind ja nahezu gleichwertig.

Beim Versuch mit phpMyAdmin als root Zugang zum MariaDB-Server zu kommen, um Datenbanken und Tabellen zu erstellen, dann das böse Erwachen. Nichts ging.

Access denied for user 'root'@'localhost' (using password: YES)

Ursache ist, dass man sich nun nur noch als root anmelden darf UND das Datenbank-Passwort kennen muss. Ein normaler Benutzer kann sich also nicht mehr anmelden. Der Webserver hat keine root-Rechte, verhält sich also wie ein normaler Benutzer. Daher können wir uns auch nicht über phpMyAdmin am Datenbankserver anmelden.

Die Lösung, die bei mir funktioniert hat nun im Folgenden:

sudo mysql -u root
use mysql;
update user set plugin='' where User='root';
flush privileges;
exit;

Zunächst rufen wir MySQL als Benutzer root auf. MariaDB wird gestartet. Anschließend teilen wir dem Datenbankserver mit, dass wir mysql, eine Kommandozeile, nutzen möchten. Mit dem dann folgenden Befehl leeren wir die Plugin-Spalte des Benutzers root. Damit wird das unix_socket-Plugin deaktiviert. Nun sollte das Login wie gewohnt funktionieren.


Quellen und Links

Weitere mögliche Lösungen zu diesem Problem sind hier mal gesammelt.