Lors de l'établissement d'une connexion à une base de données MySQL à l'aide de php mysqli_connect, c'est possible pour rencontrer l'erreur "erreur de connexion à la base de données" avec un message spécifique "mysqli_connect() : Le serveur a demandé la méthode d'authentification inconnu du client [caching_sha2_password]". Cela se produit généralement parce que la méthode d'authentification configurée sur le serveur MySQL est différente des attentes du client.
Dans ce cas, le script PHP utilise la méthode d'authentification caching_sha2_password, qui nécessite des informations d'identification correspondantes définies dans la table utilisateur MySQL. Cependant, il semble que le compte user1 ne dispose pas d'un hachage de mot de passe correspondant pour caching_sha2_password.
Pour résoudre ce problème, vous disposez de plusieurs options :
Créez un hachage de mot de passe caching_sha2_password pour l'utilisateur 1 : émettez la commande SQL suivante pour créer un hachage caching_sha2_password pour l'utilisateur 1 :
ALTER USER 'user1'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';
Remplacez 'new_password' par un mot de passe sécurisé de votre choix. Cela mettra à jour le hachage du mot de passe de l'utilisateur 1 pour utiliser caching_sha2_password, lui permettant ainsi de s'authentifier à l'aide de cette méthode.
Forcer caching_sha2_password pour les hachages existants : si vous ne pouvez pas créer un nouveau hachage de mot de passe en raison de restrictions de compte, vous pouvez forcer l'utilisation de caching_sha2_password pour les hachages existants. Exécutez la commande SQL suivante :
SET PASSWORD FOR 'user1'@'localhost' = PASSWORD('existing_password');
Remplacez 'existing_password' par le mot de passe actuel de l'utilisateur1. Cela mettra à jour le hachage pour utiliser caching_sha2_password sans changer le mot de passe lui-même.
Une fois que vous avez effectué l'une de ces procédures, vous devriez pouvoir établir avec succès une connexion à la base de données en utilisant l'authentification caching_sha2_password. . N'oubliez pas de consulter la documentation MySQL pour plus de détails et d'options de gestion des mots de passe.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!