Maison >développement back-end >tutoriel php >Pourquoi mysqli_connect échoue-t-il avec « Méthode d'authentification inconnue (caching_sha2_password) » ?
Erreur mysqli_connect : méthode d'authentification inconnue (caching_sha2_password)
Lorsque vous tentez de vous authentifier auprès de MySQL à l'aide de mysqli_connect, vous pouvez rencontrer l'erreur :
mysqli_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
Cette erreur se produit lorsque le plugin d'authentification par défaut du serveur MySQL est défini sur caching_sha2_password, qui est incompatible avec certaines configurations de comptes utilisateurs.
Dépannage :
Pour résoudre ce problème, deux solutions s'offrent à vous :
Modifier l'authentification de l'utilisateur Plugin :
Exécutez la commande SQL suivante pour modifier le plugin d'authentification de l'utilisateur concerné :
ALTER USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
Remplacez le nom d'utilisateur et le nom d'hôte par les valeurs appropriées pour votre utilisateur.
Modifier le fichier ini du serveur MySQL :
Modifier le Fichier ini du serveur MySQL (my.ini ou my.cnf) et modifiez le paramètre default_authentication_plugin en mysql_native_password :
[mysqld] default_authentication_plugin=mysql_native_password
Redémarrez le serveur MySQL après avoir effectué la modification.
Supplémentaire Conseils :
Si vous créez un nouvel utilisateur, utilisez la commande suivante avec l'authentification mysql_native_password :
CREATE USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
En suivant ces étapes, vous pouvez vous authentifier avec succès auprès de MySQL en utilisant mysqli_connect même lorsque le plugin d'authentification caching_sha2_password est activé.
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!