Réinitialiser le mot de passe utilisateur dans MySQL 8.0 : guide étape par étape
P粉724737511
P粉724737511 2024-01-01 11:05:08
0
1
560

Mes questions et détails

Je souhaite changer le mot de passe d'un utilisateur dans MySQL8.0, mais presque aucune des méthodes en ligne ne semble fonctionner.

Voici les détails de ma table mysql.user :

mysql> select user, host from user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| Excalibur        | %         |
| yyy              | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

Qu'est-ce que j'ai fait

J'ai essayé les commandes suivantes :

alter user 'yyy'@'%' identified with mysql_native_password by '12345';

et j'ai reçu le message d'erreur : 

ERROR 1396 (HY000): Operation ALTER USER failed for 'yyy'@'%'

J'ai aussi essayé de manipuler moi-même la table mysql.user :

update user set authentication_string=sha1('12345') where user = 'yyy' ;
flush privileges;

Bien que cela fonctionne, Je ne parviens pas à me connecter à yyy via (ce que je devrais être) le mot de passe 12345. Ensuite, j'ai jeté un œil au tableau et ça avait l'air vraiment bizarre :

+------------------+-----------+------------------------------------------------------------------------+
| user             | host      | authentication_string                                                  |
+------------------+-----------+------------------------------------------------------------------------+
| Excalibur        | %         | $Arrreee5$tE.D2|7^FTRYjmg1APzveuTWyJ1BaO2al1GKvO3UJO6ZlX06jqbNkT5 |
| yyy              | %         | 8cb2237d0679ca88db6464eac60da96345513964                               |
| mysql.infoschema | localhost | $Arrreee5$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session    | localhost | $Arrreee5$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
...

P粉724737511
P粉724737511

répondre à tous(1)
P粉022285768

Pour MySQL 8.0

Les utilisateurs ordinaires utilisent la commande suivante pour changer leur mot de passe

ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here';

Pour l'utilisateur root, utilisez la commande suivante pour changer le mot de passe

P.S Vérifiez en utilisant le mot de passe avec "$A$005$", le plugin d'authentification caching_sha2_password doit être utilisé, sans "WITH caching_sha2_password", cela ne fonctionnera pas pour l'utilisateur root. S'il s'agit d'un utilisateur général Des autorisations doivent être accordées.

ALTER USER 'userName'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'New-Password-Here';
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal