FAQ n°3432, publiée le 18/04/2008
WEBDEV
Que faire si la connexion à MySQL depuis une page PHP affiche le message "Client does not support authentication protocol requested by server; consider upgrading MySQL client" ?
Ce message est retourné lorsque le serveur MySQL est trop récent pour la version de PHP.

Dans ce cas, pour que la connexion soit acceptée il faut démarrer MySQL avec l'option "old password".

1. Si l'utilisateur a déjà créé un compte sur MySQL, ce compte doit avoir son mot de passe réinitialisé pour convenir au format adopter :
- ouvrir une console par le menu "Démarer ... Exécuter" et "cmd",
- cd <chemin de Mysql\bin>,
- mysql -u <login> -p [taper Entrer] [puis Taper <password>]
- exécuter la requête SQL suivante pour chaque utilisateur :

UPDATE mysql.user
SET password=OLD_PASSWORD('<password>')
WHERE user='<login>';


2. Activer l'option "old password" dans my.ini en rajoutant en fin du fichier :

old-passwords

Après avoir redémarré le serveur MySQL la connexion sera acceptée.

Reportez-vous à la documentation de MySQL pour plus de détail sur ces mécanismes :
http://dev.mysql.com/doc/refman/5.0/fr/password-hashing.html