Mariadb Nicht-Root-Benutzer

Mariadb Nicht-Root-Benutzer

Ich habe MariaDB installiert und kann als Linux-Root-Benutzer den MySQL-Befehl ausführen, um auf die Datenbank zuzugreifen. Aber wenn ich versuche, mich als normaler Linux-Benutzer anzumelden und auszuführen mysql -u root -p, erhalte ich die folgende Fehlermeldung:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'. 

Ich habe verschiedene Methoden ausprobiert, beispielsweise das Zurücksetzen des Passworts für den MySQL-Root-Benutzer, aber nichts hat geholfen.

Jede Hilfe ist großartig.

Antwort1

Ich hatte das gleiche Problem, es wurde durch einen „Plugin“-Wert in der Tabelle „mysql.user“ verursacht.

Haben Sie es mit dieser Antwort versucht:https://askubuntu.com/a/636579/299538

Hier ist eine Erklärung dafür:https://superuser.com/a/1071043/592085

Antwort2

Bei MariaDB können Sie sich nicht als normaler Benutzer anmelden, Sie benötigen Root-Zugriff oder verwenden sudo. Eine andere Lösung ist, einen weiteren Root-Benutzer mit vollen Berechtigungen hinzuzufügen.

Mit sudo mit der Datenbank verbinden:

sudo mysql -u root

Überprüfen Sie Ihr Konto in der aktuellen Datenbank:

mysql> SELECT User,Host FROM mysql.user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | localhost |

Benutzer neu erstellen root(ggf. Passwort verwenden):

mysql> CREATE USER 'root'@'%' IDENTIFIED BY '';

Erlaubnis erteilen:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

Spülen:

mysql> FLUSH PRIVILEGES;

Datenbankverwendungen anzeigen:

SELECT User,Host FROM mysql.user;
+------+-----------+
| User | Host      |
+------+-----------+
| root | %         |
| root | localhost |
+------+-----------+

Beenden und als normaler Benutzer verbinden:

mysql -u root

verwandte Informationen