Zugriff verweigert für Benutzer 'root' @ 'localhost' (mit Passwort: Ja) nach dem Zurücksetzen des Passworts LINUX

8

Ich habe ein MySQL auf meinem Linux-Server installiert, ich habe vergessen, es ist Passwort, also ging ich und änderte es mit den Methoden, die ich im Internet gefunden habe. Was ich getan habe, war wie folgt:

%Vor%

Die Aktualisierungsabfrage hat das Passwort geändert, da es mir die Anzahl der betroffenen Zeilen und die Abfrage OK usw. angezeigt hat.

Dann habe ich mysql neu gestartet

%Vor%

Jetzt, als ich mich mit dem neuen Passwort eingeloggt habe

%Vor%

es gibt mir immer noch Fehler "FEHLER 1045 (28000): Zugriff verweigert für Benutzer 'root' @ 'localhost' (mit Passwort: Ja)"

Gibt es etwas, das ich vermisse?

    
progrAmmar 23.10.2013, 05:26
quelle

10 Antworten

-1

Eigentlich habe ich mir die Benutzertabelle in der mysql-Datenbank genauer angeschaut, bevor jemand mir das ssl_type-Feld für den Benutzer root nach SSL bearbeitet hat.

Ich habe dieses Feld bearbeitet und mysql neu gestartet und es hat wie ein Zauber funktioniert.

Danke.

    
progrAmmar 24.10.2013, 05:35
quelle
17

Ich konnte dieses Problem lösen, indem ich diese Anweisung ausführte

%Vor%

Was das Root-Passwort ändern wird.

    
Divz 17.03.2014 11:28
quelle
8

Sie können das Kennwort des MySQL-Datenbankservers mit den folgenden fünf einfachen Schritten wiederherstellen. Hier sind die Befehle, die Sie für jeden Schritt eingeben müssen (melden Sie sich als root-Benutzer an):

Schritt 1: Stoppen Sie den mysql-Dienst

%Vor%

Ausgabe:

%Vor%

Schritt 2: Starten Sie den MySQL Server ohne Passwort:

%Vor%

Ausgabe:

%Vor%

Schritt 3: Verbinden Sie sich mit dem mysql-Client mit dem mysql-Server:

%Vor%

Ausgabe:

%Vor%

Schritt 4: Richten Sie das neue MySQL root Benutzerpasswort ein

%Vor%

Schritt # 5: Stoppen Sie MySQL Server:

%Vor%

Ausgabe:

%Vor%

Schritt # 6: Starten Sie den MySQL-Server und testen Sie ihn

%Vor%     
GeekOnJava 10.11.2015 06:07
quelle
6

Sie müssen das Passwort zurücksetzen! Schritte für Mac OSX (getestet und funktioniert) und Ubuntu

Stoppen Sie MySQL

%Vor%

Starten Sie es im abgesicherten Modus:

%Vor%

(über der Zeile ist der ganze Befehl)

Dies wird ein fortlaufender Befehl sein, bis der Prozess beendet ist. Öffnen Sie also ein anderes Shell / Terminal-Fenster und melden Sie sich ohne Passwort an:

%Vor%

Starten Sie MySQL

%Vor%

Ihr neues Passwort ist "Passwort".

    
tkr 12.11.2014 01:56
quelle
2

Ich hatte das gleiche Problem. Sie müssen mysql -u root -p

schreiben

NICHT mysql oder mysql -u root -p root_password

    
user3911158 27.04.2015 23:21
quelle
1

Ich habe das gleiche Problem, @ progrAmmar hat mich aufgeklärt, hat sich die Benutzertabelle genauer angesehen in der MySQL-Datenbank ".

Mein Problem ist nicht ssl_type , sondern das erste Feld: Host . Ich habe den Wert mit

geändert

update user set Host='localhost' where User='root' and Host='%';

in mysqld_safe --skip-grant-tables Modell.

Dann funktioniert es gut.

    
Belter 13.07.2015 11:42
quelle
1

Sie müssen möglicherweise die Spalte plugin für Ihr root-Konto löschen. Bei meiner Neuinstallation wurde für alle Stammbenutzerkonten unix_socket in der Spalte plugin festgelegt. Dies führte dazu, dass das root-sql-Konto nur für das root-Unix-Konto gesperrt wurde, da sich nur das System-root über Socket anmelden konnte.

Wenn Sie update user set plugin='' where User='root';flush privileges; haben, sollten Sie sich nun von jedem lokalen Host-Unix-Konto (mit einem Passwort) am root-Konto anmelden können.

Siehe diese AskUbuntu-Frage und Antwort für weitere Details.

    
Stephen Schrauger 31.07.2015 15:21
quelle
1

Unter Mac OS folgen Sie bitte die folgenden Schritte:

Stoppen Sie MySQL

$ sudo /usr/local/mysql/support-files/mysql.server stop Starten Sie es im abgesicherten Modus:

$ sudo mysqld_safe --skip-grant-tables (über der Zeile ist der ganze Befehl)

Dies wird ein fortlaufender Befehl sein, bis der Prozess beendet ist. Öffnen Sie also ein anderes Shell / Terminal-Fenster und melden Sie sich ohne Passwort an:

$ mysql -u Wurzel

mysql & gt; UPDATE mysql.user SET Passwort = PASSWORT ('Passwort') WHERE Benutzer = 'root'; Starten Sie MySQL

sudo /usr/local/mysql/support-files/mysql.server starten Ihr neues Passwort ist "Passwort".

    
Yang Wang 27.01.2016 07:12
quelle
0

In meinem Fall:

  1. /etc/init.d/mysql stop
  2. mysqld_safe --skip-grant-tables & amp;

(in neuem Fenster)

  1. mysql -u Wurzel
  2. mysql & gt; benutze mysql;
  3. mysql & gt; update user set authentication_string = Passwort ('Passwort') where Benutzer = 'root';
  4. mysql & gt; Flushprivilegien;
  5. mysql & gt; Beenden Sie
  6. /etc/init.d/mysql Neustart
Michal 22.06.2016 09:25
quelle
-1

Sie können diese Lösung versuchen: -

Damit mysql Sie nach einem Passwort fragt, müssen Sie auch die Option -p angeben: (versuchen Sie es mit einem Leerzeichen zwischen -p und Passwort)

%Vor%

MySQLl-Zugriff verweigert

Im zweiten Link jemand hat das gleiche Problem kommentiert.

    
Sharad 23.10.2013 05:59
quelle

Tags und Links