Warning: PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password]
SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
J'obtiens l'erreur ci-dessus en essayant de me connecter à mon serveur de base de données MySQL sur Hostgator, en utilisant un script PHP
sur mon serveur local. Je comprends que c'est un problème de hachage de mot de passe généralement entre les versions antérieures à MySQL 4.1 et MySQL 4.1+.
J'ai changé mon serveur local pour utiliser le old_password en suivant les instructions que j'ai trouvées ici .
Après l'avoir changé en hachage 16 bits, je ne parviens toujours pas à me connecter et le message d'erreur reste le même. Et plus encore, je ne peux plus me connecter à phpmyadmin
. J'utilise XAMPP
sur Windows. S'il vous plaît des suggestions sur la façon de résoudre ces problèmes?
Puisque vous avez fait ces changements du côté MySQL, votre seule autre option est de rétrograder PHP.
D'autres liens le soutiennent:
J'ai eu la même erreur, en essayant de déboguer localement une application qui se connecte à des bases de données distantes. Lors de l'utilisation de php <5.3, tout a fonctionné. Lors de l'utilisation de PHP 5.3 ou supérieur, une erreur apparaît.
Après des heures passées à lire et à peaufiner, j'ai réalisé que cela ne se produisait que lors de la connexion en tant qu'utilisateur particulier. Toutes les bases de données que j'utilise ont une nouvelle longueur de mot de passe (41).
J'ai changé le mot de passe de cet utilisateur et tout a bien fonctionné, même après l'avoir changé à nouveau à la valeur précédente.
J'espère que cela aide quelqu'un.