web-dev-qa-db-fra.com

Comment réinitialiser le mot de passe root dans MySQL 8.0.11?

En fait, j'ai perdu mon mot de passe root et je dois le changer. Je suis ces étapes:

  • Étape n ° 1: arrêtez le processus du serveur MySQL.

    Étape n ° 2: Démarrez le processus serveur/démon MySQL (mysqld) avec l'option --skip-grant-tables afin d'éviter de demander un mot de passe.

    Étape 3: connectez-vous au serveur MySQL en tant qu'utilisateur root.

que nous pouvons trouver sur ce site: https://www.howtoforge.com/setting-changing-resetting-mysql-root-passwords#recover-mysql-root-password

mysql> use mysql;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("TOOR");
mysql> flush privileges;
mysql> quit

Première erreur, j'ai donc essayé:

mysql> use mysql;
mysql> update user set password=PASSWORD("TOOR") where User='root';
mysql> flush privileges;
mysql> quit

Toujours la même erreur a dit:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '("TOO
R") WHERE User='root'' at line 1

Comment puis-je résoudre ça?

11
Mangue Sutcliff

comme ici dit:

Cette fonction a été supprimée dans MySQL 8.0.11

1.si vous êtes en mode saut-subvention-tables
dans mysqld_safe:

UPDATE mysql.user SET authentication_string=null WHERE User='root';
FLUSH PRIVILEGES;
exit;

et ensuite, dans le terminal:

mysql -u root

en mysql:

ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'yourpasswd';

2.pas en mode saut-subvention-tables
juste en mysql:

ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'yourpasswd';
25
Jack Chern

Essaye ça:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newPasswd';
4
Jitesh Middha