Maison > base de données > tutoriel mysql > Pourquoi ma connexion Python MySQL échoue-t-elle avec « Le plugin d'authentification 'caching_sha2_password' n'est pas pris en charge » ?

Pourquoi ma connexion Python MySQL échoue-t-elle avec « Le plugin d'authentification 'caching_sha2_password' n'est pas pris en charge » ?

Linda Hamilton
Libérer: 2024-12-05 15:29:10
original
312 Les gens l'ont consulté

Why Does My Python MySQL Connection Fail with

Impossible de se connecter à MySQL en raison d'un plug-in d'authentification non pris en charge

En essayant d'établir une connexion à un serveur MySQL à l'aide du connecteur Python, vous peut rencontrer l'erreur "Le plug-in d'authentification 'caching_sha2_password' n'est pas pris en charge." Cette erreur peut survenir lorsque le plugin d'authentification spécifié n'est pas pris en charge par le client ou le serveur.

Cause première :

Dans ce cas particulier, la cause première de l'erreur il y a une incompatibilité entre le plugin d'authentification utilisé pour créer l'utilisateur et le plugin supporté par le connecteur Python. Par défaut, le connecteur supporte le plugin d'authentification "mysql_native_password", alors que l'utilisateur "lcherukuri" a été créé à l'aide du plugin "caching_sha2_password".

Solution :

Pour résoudre ce problème, assurez-vous que le plugin d'authentification utilisé pour créer l'utilisateur correspond au plugin pris en charge par le connecteur. Dans ce cas, vous pouvez spécifier le paramètre "auth_plugin" lors de l'établissement de la connexion, en le définissant explicitement sur "mysql_native_password":

import mysql.connector

cnx = mysql.connector.connect(user='lcherukuri', password='password',
                              auth_plugin='mysql_native_password',
                              host='127.0.0.1',
                              database='test')
cnx.close()
Copier après la connexion

Remarques supplémentaires :

  • Confirmez que vous utilisez le bon package de connecteur Python (par exemple, "mysql-connector-python") et non un package obsolète ou incompatible. version (par exemple, "mysql-connector").
  • Si vous rencontrez d'autres erreurs connexes, reportez-vous à la documentation MySQL pour des étapes de dépannage supplémentaires.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal