Maison >base de données >tutoriel mysql >Comment corriger les erreurs « ancienne authentification » lors de la connexion à MySQL 4.1 ?

Comment corriger les erreurs « ancienne authentification » lors de la connexion à MySQL 4.1 ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-30 18:27:11351parcourir

How Do I Fix

Surmonter les erreurs d'authentification dans MySQL 4.1

Lorsqu'ils tentent de se connecter à une base de données MySQL, les utilisateurs peuvent rencontrer un message d'erreur concernant "l'ancienne authentification. " Ce problème survient lors de la connexion à MySQL 4.1 ou versions ultérieures à l'aide des méthodes de hachage de mot de passe traditionnelles.

Identification de la cause première

Avant MySQL 4.1, un schéma de hachage de mot de passe distinct était employé. Cependant, les versions plus récentes ont introduit la possibilité d'utiliser à la fois l'ancien et le nouveau format de mot de passe. Les configurations qui activent d'anciens mots de passe peuvent parfois entraîner cette erreur de connexion.

Résolution du problème

Pour déterminer si l'erreur provient d'anciens paramètres de mot de passe, exécutez la requête SQL suivante :

SHOW VARIABLES LIKE 'old_passwords'

Si le résultat indique « Désactivé », cela suggère que l'erreur peut être causée par d'anciennes entrées de mot de passe existantes dans la table des utilisateurs. Dans ce cas, la création de nouveaux mots de passe pour les comptes concernés devrait résoudre le problème.

Pour vérifier quelle méthode de hachage sera utilisée pour un compte spécifique, consultez le tableau 'mysql.user' :

SELECT `User`, `Host`, Length(`Password`) FROM mysql.user

Les comptes avec d'anciens mots de passe auront une longueur de mot de passe de 16, tandis que ceux avec de nouveaux mots de passe auront une longueur de 41. Si nécessaire, réinitialisez le mot de passe en utilisant la procédure suivante syntaxe :

SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword');
FLUSH Privileges;

Une fois le mot de passe mis à jour, la longueur du mot de passe doit refléter l'adoption de la nouvelle méthode de hachage et les erreurs de connexion doivent être éliminées.

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!

Déclaration:
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