it-swarm.com.de

So finden Sie das MySQL-Root-Passwort

Ich kann mein MySQL-Root-Passwort nicht herausfinden. Wie kann ich das herausfinden? Gibt es eine Datei, in der dieses Passwort gespeichert ist? 

Ich folge diesem link aber ich habe kein directadmin Verzeichnis im lokalen.

136
2619

dank @thusharaK konnte ich das root-Passwort zurücksetzen, ohne das alte Passwort zu kennen.

Auf Ubuntu habe ich folgendes gemacht:

Sudo service mysql stop
Sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking

Führen Sie dann mysql in einem neuen Terminal aus:

mysql -u root

Führen Sie die folgenden Abfragen aus, um das Kennwort zu ändern:

UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root';
FLUSH PRIVILEGES;

In MySQL 5.7 wurde das Kennwortfeld im Tabellenfeld mysql.user entfernt. Der Feldname lautet nun 'authentication_string'.

Beenden Sie den abgesicherten Modus von mysql und starten Sie den mysql-Dienst durch:

mysqladmin shutdown
Sudo service mysql start
119
eeezyy

Das gehashte Passwort kann nicht angezeigt werden. Sie können es nur zurücksetzen!

Stoppen Sie MySQL:

Sudo service mysql stop

oder

$ Sudo /usr/local/mysql/support-files/mysql.server stop

Starten Sie es im abgesicherten Modus:

$ Sudo mysqld_safe --skip-grant-tables

(über der Zeile steht der ganze Befehl)

Dies ist ein fortlaufender Befehl, bis der Prozess abgeschlossen ist. Öffnen Sie ein weiteres Shell/Terminal-Fenster und melden Sie sich ohne Kennwort an:

$ mysql -u root

mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';

MySQL 5.7 und höher: 

mysql> use mysql; 
mysql> update user set authentication_string=password('password') where user='root'; 

Starten Sie MySQL:

Sudo mysql start

oder

Sudo /usr/local/mysql/support-files/mysql.server start

Ihr neues Passwort lautet 'Passwort'.

62
tk_

MySQL 5.7 und höher speichert root in der MySQL-Protokolldatei.

Bitte versuchen Sie das:

Sudo grep 'temporary password' /var/log/mysqld.log
32
Vlad

Du kannst es nicht finden. Es wird in einer Datenbank gespeichert, für die Sie das Root-Passwort benötigen. Selbst wenn Sie irgendwie Zugang erhalten haben, wird es mit einem Einweg-Hash gehasht. Sie können es zurücksetzen: http://dev.mysql.com/doc/refman/5.0/de/resetting-permissions.html

17
lanzz

Befolgen Sie diese Schritte, um das Kennwort im Windows-System zurückzusetzen

  1. Stoppen Sie den MySQL-Dienst im Task-Manager

  2. Erstellen Sie eine Textdatei und fügen Sie die folgende Anweisung ein

MySQL 5.7.5 und früher:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');


MySQL 5.7.6 und höher:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yournewpassword';

  1. Speichern als mysql-init.txt und platziere es in 'C' drive.

  2. Öffnen Sie die Eingabeaufforderung und fügen Sie Folgendes ein

C:\> mysqld --init-file=C:\\mysql-init.txt

11

Wenn der Package Manager Sie nicht während der Installation zur Eingabe des Root-Passworts auffordert, ist das Standard-Root-Passwort die leere Zeichenfolge. Um eine Verbindung zu einem neu installierten Server herzustellen, geben Sie Folgendes ein:

Shell> mysql -u root --password=
mysql>

Um das Passwort zu ändern, rufen Sie die Unix-Shell zurück und geben Sie Folgendes ein:

Shell> mysqladmin -u root --password= password root

Das neue Passwort lautet 'root'. Verbinden Sie sich jetzt mit dem Server:

Shell> mysql -u root --password=
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Hoppla, das Passwort hat sich geändert. Verwenden Sie die neue Variable root:

Shell> mysql -u root --password=root
...
blah, blah, blah : mysql welcome banner
...
mysql> 

Bingo! Neues machen etwas interessantes

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

Maurycy

8
mszmurlo

Zusätzlich zu den anderen Antworten wird in einer Cpanel-Installation das mysql-root-Passwort in einer Datei mit dem Namen /root/.my.cnf gespeichert. (und der Cpanel-Dienst setzt ihn bei einer Änderung zurück, sodass die anderen Antworten hier nicht weiterhelfen)

6
Ohad Cohen

Das Standardkennwort, das nach der sofortigen Installation des mysql-Servers für mich funktioniert hat, lautet: mysql

6
Deepak Chaudhry

sie können MySQL-Root-Passwort anzeigen. Nun, ich habe es auf MySQL 5.5 ausprobiert 

nano ~/.my.cnf
6
user889030

Das hat für mich funktioniert:

Geben Sie am Terminal Folgendes ein

$ Sudo mysql -u root -p

Passwort eingeben: // einfach Enter drücken

mysql>

3
Light

eine Sache, die mich auf eine neue Installation von mySQL aufmerksam machte und mich fragte, warum ich das Standardkennwort nicht zum Laufen bringen konnte und warum sogar die Reset-Methoden nicht funktionierten. Nun stellt sich heraus, dass auf Ubuntu 18 die neueste Version von MySQL Server standardmäßig überhaupt keine Kennwortauthentifizierung für den Root-Benutzer verwendet. Das bedeutet, dass es keine Rolle spielt, auf was Sie es eingestellt haben, und dass Sie es nicht verwenden können. Es wird erwartet, dass Sie sich von einem privilegierten Socket aus anmelden. so

mysql -u root -p

funktioniert überhaupt nicht, auch wenn Sie das richtige Passwort verwenden !!! Der Zugriff wird verweigert, egal was Sie eingeben.

Stattdessen müssen Sie verwenden

Sudo mysql

das funktioniert ohne Passwort. Dann, sobald Sie drin sind, müssen Sie eintippen

 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password you want to use';

dann melde dich ab und jetzt akzeptiert das verdammte Ding endlich dein Passwort

3
Kit Ramos

Suchen Sie in Ihrer "hostname" .err-Datei im Datenordner, in der MySQL arbeitet, nach einer Zeichenfolge, die mit folgendem beginnt:

"Für roor @ localhost wird ein temporäres Passwort generiert."

sie können verwenden

less /mysql/data/dir/hostname.err 

dann den Befehl slash gefolgt von der Zeichenfolge, nach der Sie suchen möchten 

/"A temporary password"

Drücken Sie dann n, um zum nächsten Ergebnis zu gelangen.

3
nDCasT

Die Prozedur ändert sich je nach Version von MySql. Folgen Sie den Anweisungen genau wie für Ihre Version beschrieben:

  • HINWEISE - Lesen Sie vor der Anleitung für Ihre Version von MySql *

  • In Schritt 5: Erstellen Sie anstelle von CMD eine Verknüpfung auf Ihrem Desktop, die CDM.exe aufruft. Klicken Sie dann mit der rechten Maustaste auf die Verknüpfung und wählen Sie "Als Administrator ausführen".

  • In Schritt 6: Überspringen Sie die erste vorgeschlagene Version des Befehls und führen Sie die zweite aus, die mit dem Parameter --defaults-file

  • Wenn Sie den Befehl ausgeführt haben und alles in Ordnung ist, bleibt das CMD-Fenster geöffnet und der Befehl von Schritt 6 wird fortgesetzt. Schließen Sie einfach das Fenster (klicken Sie auf 'x') und schließen Sie MySQl im Task-Manager.

  • Löschen Sie die Datei mit den SQL-Befehlen und starten Sie MySQL erneut. Das Passwort muss jetzt geändert werden.

5.0 http://dev.mysql.com/doc/refman/5.0/de/resetting-permissions.html

5.1 http://dev.mysql.com/doc/refman/5.1/de/resetting-permissions.html

... einfach die Version im Link ändern (5.5, 5.6, 5.7)

3
JuanCamilo

System:

  • CentOS Linux 7
  • mysql Ver 14.14 Distrib 5.7.25

Vorgehensweise:

  1. Öffnen Sie zwei Shell-Sitzungen, und melden Sie sich als Linux-Root-Benutzer und als Nicht-Root-Benutzer mit Zugriff auf den Befehl mysql an.

  2. Stoppen Sie in Ihrer Root-Sitzung den normalen mysqld-Listener und starten Sie einen Listener, der die Kennwortauthentifizierung umgeht ( Hinweis: Dies ist ein erhebliches Sicherheitsrisiko wie jeder, der Zugriff auf den Befehl mysql hat Greifen Sie ohne Passwort auf Ihre Datenbanken zu. Möglicherweise möchten Sie aktive Shell-Sitzungen schließen und/oder den Shell-Zugriff deaktivieren, bevor Sie dies tun.

    # systemctl stop mysqld
    # /usr/sbin/mysqld --skip-grant-tables -u mysql &

  3. Melden Sie sich in Ihrer Nicht-Root-Sitzung bei MySQL an und legen Sie das MySQL-Root-Kennwort fest:

    $ mysql
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
    Query OK, 0 rows affected, 1 warning (0.01 sec)

    mysql> quit;

  4. Beenden Sie in Ihrer Root-Sitzung die kennwortlose Instanz von mysqld und stellen Sie den normalen mysqld-Listener für den Dienst wieder her:

    # kill %1
    # systemctl start mysqld

  5. Testen Sie in Ihrer Nicht-Root-Sitzung das neue Root-Passwort, das Sie oben konfiguriert haben:

    $ mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or \g.
    ...
    mysql>

0
CODE-REaD

Die hier bereitgestellten Antworten schienen für mich nicht zu funktionieren, der Trick stellte sich heraus: ALTER USER 'root' @ 'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

(vollständige Antwort hier: https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/ )

0
user3136936