Il s'agit en fait d'un commentaire sur la réponse précédente, mais il est trop volumineux pour tenir dans un commentaire StackExchange.
Moi aussi, je souffrais de ce problème. J'ai donc créé un nouvel utilisateur avec un hachage de nouveau style, et j'utilise maintenant ce nouvel utilisateur sans problème. Voici ce que j'ai fait:
[172.16.2.222:mysql Thu Nov 7 16:16:25 2013]> use mysql;
Database changed
[172.16.2.222:mysql Thu Nov 7 16:22:23 2013]> describe user;
describe user;
+-----------------------+-----------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+-----------------------------------+------+-----+---------+-------+
| Host | char(60) | NO | PRI | | |
| User | char(16) | NO | PRI | | |
| Password | char(41) | NO | | | |
J'étais heureux de voir que notre colonne Mot de passe était déjà suffisamment large pour contenir des hachages de nouveau style. (S'il avait moins de 41 caractères de large, je n'aurais peut-être pas eu le courage de l'élargir :-)
[172.16.2.222:mysql Thu Nov 7 16:13:10 2013]> show variables like '%pass%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| old_passwords | ON |
| report_password | |
+-----------------+-------+
2 rows in set (0.06 sec)
old_passwords
l'être ON
est clairement le problème, donc je l'ai changé temporairement:
[172.16.2.222:mysql Thu Nov 7 16:13:59 2013]> set session old_passwords = 'OFF';
Query OK, 0 rows affected (0.05 sec)
[172.16.2.222:mysql Thu Nov 7 16:14:12 2013]> show variables like '%pass%';
show variables like '%pass%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| old_passwords | OFF |
| report_password | |
+-----------------+-------+
2 rows in set (0.06 sec)
J'ai ensuite créé un nouvel utilisateur:
[172.16.2.222:mysql Thu Nov 7 16:14:16 2013]> create user 'erich' IDENTIFIED BY 'SEKRIT PASSWORD';
... et jette un œil au nouveau hachage:
[172.16.2.222:mysql Thu Nov 7 16:14:26 2013]> select * from user order by User;
+-----------+--------------+-------------------------------------------+--------
| Host | User | Password | Select_
+-----------+--------------+-------------------------------------------+--------
| localhost | someguy | 3d9505dd323e53f1 | Y
| % | someotherguy | 79b3df3b004bb855 | Y
| % | erich | *D2589EF6B59146801234567897BB190123456789 | N
| % | anotheroldguy| 60577e0d77b9212b | Y
Notez à quel point mon hachage est plus gros que les autres!
Juste pour être bien rangé, je suis old_passwords
retourné àOFF
. C'était probablement inutile, car je ne vois pas pourquoi quelqu'un voudrait créer de nouveaux utilisateurs en utilisant d'anciens mots de passe, mais qui sait.
Quoi qu'il en soit: cela l'a résolu pour moi.