Maison >base de données >tutoriel mysql >Comment réparer l'erreur de connexion MySQL (2000) : mysqlnd ne peut pas se connecter avec l'ancienne authentification ?
Surmonter l'obstacle "Erreur de connexion (2000) : mysqlnd ne peut pas se connecter à MySQL 4.1 en utilisant l'ancienne authentification"
Connexion à une base de données MySQL avec un ancien schéma d'authentification peut déclencher l'erreur « Connect Error (2000) ». Pour résoudre ce problème, suivez les étapes suivantes :
1. Évaluer le schéma de mot de passe du serveur
Exécutez la requête SQL « SHOW VARIABLES LIKE 'old_passwords' » pour déterminer si le serveur utilise l'ancien schéma de mot de passe par défaut. S'il renvoie "old_passwords,Off", vous avez probablement d'anciennes entrées de mot de passe dans la table des utilisateurs.
2. Vérifiez la longueur du mot de passe dans la table mysql.user
Examinez la table "mysql.user" pour déterminer quelle routine d'authentification sera utilisée pour chaque compte. Les comptes avec d'anciens mots de passe ont une longueur de mot de passe de 16, tandis que ceux avec de nouveaux mots de passe ont une longueur de 41.
3. Mettre à jour les anciens mots de passe
Si les comptes ont d'anciens mots de passe, mettez à jour leurs mots de passe à l'aide de la requête "SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword');" suivi de « Privilèges FLUSH ; ». Vérifiez à nouveau la longueur du mot de passe ; il devrait maintenant être 41.
4. Ressources supplémentaires
Référez-vous à la documentation MySQL suivante pour en savoir plus informations :
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!