Dépannage de la mise à niveau de MySQL Connector : authentification avec des mots de passe de style 4.1
En essayant d'accéder à une base de données MySQL à partir d'une application C#, vous pouvez rencontrer l'erreur "L'authentification avec l'ancien mot de passe n'est plus prise en charge, utilisez un mot de passe de style 4.1." Cette erreur est due à une modification du mécanisme d'authentification par mot de passe de MySQL.
Mise en œuvre de la solution
Vous avez essayé la solution recommandée consistant à définir la variable de session old_passwords sur 0 et à mettre à jour le le mot de passe de l'utilisateur. Cependant, vous avez rencontré une erreur « Accès refusé pour l'utilisateur @ hôte ». Cela suggère qu'il peut y avoir un problème supplémentaire empêchant la mise à jour du mot de passe.
Configuration de l'hébergement
Votre fournisseur d'hébergement a modifié le fichier de configuration my.cnf pour permettre l'utilisation de Mots de passe de style 4.1. Cela vous permet de vous connecter avec succès à l'aide de l'outil de ligne de commande mysql.
Problème de connecteur
Malgré les modifications côté serveur, vous continuez à rencontrer cette erreur lors de la connexion avec MySQL Connector 6.6.5 dans votre code C#. Cela indique une incompatibilité entre le connecteur et le mécanisme d'authentification par mot de passe mis à jour.
Solution alternative
Une solution alternative qui s'est avérée efficace pour ce problème particulier est :
Exécutez les commandes suivantes :
Utilisez le mot de passe mis à jour lors de la connexion à partir de votre code C# en utilisant le format de chaîne de connexion suivant :
En suivant ces étapes, vous devriez pouvoir vous connecter avec succès à votre base de données et vous authentifier avec le mot de passe de style 4.1.
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!