MySQL Error: : 'Access denied for user 'root'@'localhost'
$ ./mysqladmin -u root -p 'geschwärzten'
Geben Sie das Passwort ein:
mysqladmin: connect to server at 'localhost' failed error:
'Access denied for user 'root'@'localhost' (using password: YES)'
Wie kann ich dieses Problem beheben?
Möglich, Duplikat der Access denied for user 'root'@'localhost' (using password: YES) (Mysql::Error)
Ist nicht die gleiche Frage in diesem post ist ein problem mit mysqladmin gewinnen super privilegies in mysql, die anderen post, ist ein problem mit einer einfachen Verbindung von socket.
Versuchen Sie, entfernen Sie, wenn vorhanden
Ich weiß, das ist alt, aber sagen wollen dies für die Zukunft der Besucher. Nicht geben Sie Ihr mysql-Passwort ein, vor allem für root, den Befehl selbst, oder es wird gespeichert werden, in der shell-Geschichte. Lassen Sie einfach die
Ist nicht die gleiche Frage in diesem post ist ein problem mit mysqladmin gewinnen super privilegies in mysql, die anderen post, ist ein problem mit einer einfachen Verbindung von socket.
Versuchen Sie, entfernen Sie, wenn vorhanden
~/.my.cnf
- Datei.Ich weiß, das ist alt, aber sagen wollen dies für die Zukunft der Besucher. Nicht geben Sie Ihr mysql-Passwort ein, vor allem für root, den Befehl selbst, oder es wird gespeichert werden, in der shell-Geschichte. Lassen Sie einfach die
-p
option von selbst und mysql-Eingabeaufforderung für ein Kennwort.InformationsquelleAutor Harsh Trivedi | 2017-01-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
/etc/my.cnf
oder/etc/mysql/my.cnf
je nach Ihrer Distribution.skip-grant-tables
unter[mysqld]
mysql -u root -p
mysql> flush privileges;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
mysql -u root -p
Schade, dass dies nicht funktioniert mit MariaDB:
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'USER 'root'@'localhost' IDENTIFIED BY 'NewPassword'' at line 1
Ich fand diese arbeiten @PhilippLudwig
set PASSWORD FOR 'root'@'localhost' = PASSWORD('root');
ich Tat dies nach Schritt 5. Hier ist, wie meine Eingabeaufforderung die Ausgabe angeschaut:MariaDB [(none)]> MariaDB [(none)]> set PASSWORD FOR 'root'@'localhost' = PASSWORD('root'); Query OK, 0 rows affected (0.00 sec)
Für Schritt 3 starten Sie MariaDB: ich fand die folgenden Werke:
sudo systemctl restart mariadb
Manche finden die Datei in /etc/mysql/my.cnf
InformationsquelleAutor Kishore Venkataramanan
Alle Lösungen, die ich fand, waren sehr viel komplexer als nötig und keiner für mich gearbeitet. Hier ist die Lösung, die mein problem gelöst. Keine Notwendigkeit, starten Sie mysqld erneut oder starten Sie ihn mit besonderen Privilegien.
Mit einer einzigen Abfrage verändern wir die auth_plugin zu mysql_native_password und Einstellung das root-Passwort zu root (fühlen Sie sich frei, um es zu ändern in der Abfrage)
Nun sollten Sie in der Lage, login mit root. Weitere Informationen finden Sie in mysql-Dokumentation
(Ausfahrt mysql-Konsole mit Strg + D oder durch Eingabe Ausfahrt)
arbeitete für mich.. Danke.
Diese Antwort gearbeitet, die ich versehentlich Hinzugefügt nicht nützlich, Antwort, Stimme, entschuldigen Sie mich!
Sehr gut funktioniert auf Ubuntu 18.04
Auf Ubuntu 18.04 arbeitete für mich, danke 🙂
InformationsquelleAutor user1878906
Ich habe versucht, viele Schritte, um dieses Problem behoben. Es gibt so viele Quellen für mögliche Lösungen zu diesem Problem, das ist schwer heraus zu filtern, die Sinn aus dem Unsinn. Schließlich fand ich eine gute Lösung hier:
Schritt 1: Ermitteln Sie die Version der Datenbank
Sehen Sie eine Ausgabe wie diese mit MySQL:
Oder Ausgang, wie dies für MariaDB:
Notieren Sie sich, welche Datenbank und welche version Sie ausführen, wie Sie Sie später verwenden. Als Nächstes müssen Sie die Datenbank stoppen, so dass Sie zugreifen können es manuell.
Schritt 2: Stoppen Sie den Datenbank-Server
Um das root-Passwort ändern, müssen Sie zum Herunterfahren des Datenbank-Servers Voraus.
, Die Sie tun können, dass für MySQL mit:
Und für MariaDB mit:
Schritt 3: Neustart des Datenbank-Servers Ohne Berechtigung Prüfen
Wenn Sie ausführen, MySQL und MariaDB ohne Belastung Informationen über Benutzerrechte, die es Ihnen erlauben, den Zugriff auf die Datenbank Kommandozeile mit root-rechten, ohne Passwort. Dies ermöglicht Ihnen den Zugriff auf die Datenbank, ohne es zu wissen.
Um dies zu tun, müssen Sie die Datenbank stoppen vom laden der grant-Tabellen, die für die Speicherung von Benutzer-Berechtigungen Informationen. Weil das ist ein bisschen wie ein Sicherheits-Risiko, sollten Sie auch skip-networking sowie zu verhindern, dass andere clients verbinden.
Die Datenbank starten, ohne das laden der grant-Tabellen oder Aktivierung von Netzwerken:
Das kaufmännische und-Zeichen am Ende des Befehls wird dieser Prozess im hintergrund laufen, so können Sie weiterhin in Ihrem terminal.
Jetzt können Sie die Verbindung zur Datenbank als root-Benutzer, die nicht nach dem Passwort gefragt.
Werden Sie sofort sehen, eine Datenbank shell-prompt statt.
MySQL-Eingabeaufforderung
MariaDB Prompt
Nun, dass Sie root-Zugriff haben, können Sie das root-Passwort ändern.
Schritt 4: Ändern des Root-Passworts
Jetzt können wir tatsächlich das root-Passwort ändern.
Für MySQL 5.7.6 und neuere sowie MariaDB 10.1.20 und neuere, verwenden Sie den folgenden Befehl ein:
Für MySQL 5.7.5 und älter sowie MariaDB 10.1.20 und älter, Verwendung:
Stellen Sie sicher, zu ersetzen
new_password
mit Ihrem neuen Kennwort der Wahl.Hinweis: Wenn die
ALTER USER
Befehl funktioniert nicht, es ist in der Regel bezeichnend für ein größeres problem. Sie können jedoch versuchenUPDATE ... SET
zum zurücksetzen des root-Passworts anstelle.[WICHTIG] Dies ist die spezifische Linie, die Feste mein besonderes Problem:
Erinnern Neuladen der grant-Tabellen nach.
In beiden Fällen sollten Sie sehen, eine Bestätigung, dass der Befehl erfolgreich ausgeführt wurde.
Das Passwort geändert wurde, so können Sie jetzt beenden die manuelle Instanz der Datenbank-server und starten Sie es neu, wie es vorher war.
Schritt 5: Starten Sie den Datenbank-Server Normal
Tutorial geht in einige weitere Schritte, um die Datenbank neu starten, aber das einzige Stück, das ich verwendet wurde, war dieser:
Für MySQL verwenden:
$ sudo systemctl start mysql
Für MariaDB verwenden:
Jetzt können Sie bestätigen, dass das neue Passwort korrekt angewendet wurden, durch ausführen von:
Der Befehl sollte nun die Eingabeaufforderung für die neu zugewiesene Passwort. Geben Sie es, und Sie sollten Zugriff auf die Datenbank prompt wie erwartet.
Abschluss
Haben Sie jetzt den administrativen Zugriff auf die MySQL-oder MariaDB-server wiederhergestellt. Stellen Sie sicher, dass das neue root-Passwort, das Sie wählen, ist robust und sicher und halten Sie es an einem sicheren Ort.
Wow!!! diese Zeile
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE User = 'root' AND Host = 'localhost';
war wie ein Lebensretter für mich !InformationsquelleAutor Blairg23
Für Ubuntu - /Debian-Benutzer
Führen Sie den folgenden, um die Verbindung als root (ohne Passwort)
InformationsquelleAutor Fab
Für neue linux-Anwender könnte dies eine schwierige Aufgabe sein. Lassen Sie mich dieses update mit mysql-8(die neueste version ab sofort ist 8.0.12 auf 12-Sep-2018)
Das ist es.
InformationsquelleAutor Amit Kr
In Ihrer MySQL-workbench können Sie auf der linken Seitenleiste, unter "Verwaltung" wählen Sie "Benutzer und Berechtigungen", klicken Sie auf root unter Benutzerkonten, die im rechten Teil klicken Sie auf die Registerkarte "Konto-Limits", um erhöhen Sie die max-Abfragen, updates, etc, und klicken Sie dann auf die Registerkarte "Administrative Rollen" und überprüfen Sie die Boxen zu geben, die Zugriff auf das Konto. Hoffe, das hilft!
InformationsquelleAutor Colleen Purcell
Tat ich dies, um mein root-Passwort in der erstmaligen einrichten von MySQL in OSx. Öffnen Sie ein terminal.
Schließen Sie das terminal und öffnen Sie ein neues terminal.
Und darunter arbeitete in Linux root-Passwort einstellen.
(sudo mysqld_safe --skip-grant-Tabellen : Das hat nicht funktioniert für mich in der ersten Zeit. Aber zweiter Versuch, war Erfolg.)
Dann melden Sie sich bei MySQL
Ändern Sie nun das Passwort:
Neu Starten MySQL:
InformationsquelleAutor Sadee
'Access denied for user 'root'@'localhost' (using password: YES)'
Dieser Fehler passiert nur, wenn Sie das Passwort geändert haben kürzlich aber haben keine änderungen in der config.inc.php Datei von phpmyadmin.
So, ich habe mein problem lösen, indem Sie meinen Passwort in /XAMPP/xamppfiles/phpmyadmin/config.inc.php Datei.
InformationsquelleAutor Enginerd Sunio