Shopware CLI: Access denied for User root@localhost

Das Problem tritt auf, wenn der MySQL-Dienst nicht über den DNS-Namen localhost adressiert werden kann. Zu Steigerung der Performance aktivieren wir in der Standard MySQL-Konfiguration die Option skip-name-resolve. Dadurch kann der Server nicht mehr via DNS-Name aufgelöst werden, führt zusätzlich aber auch keine Namensauflösung pro MySQL-Verbindung durch.


Fehlermeldung

Access denied for 'root'@'localhost'

(Beim Aufruf eines CLI-Befehls)



Lösung

In der .env bzw. env.local Datei wird der Datenbankserver via localhost anstelle von 127.0.0.1 adressiert. Passen Sie in der .env / .env.local den MySQL-Server-Host auf den Wert 127.0.0.1 an.


Im Anschluss kann die Shopware CLI problemlos via bin/console aufgerufen werden. Sollte der Fehler weiterhin auftreten, muss ggf. der Shopware Cache geleert werden.



Quellen

MariaDB Dokumentation (skip-name-resolve)