Первое, что нужно проверить, это ширина поля user
table Password
в базе данных mysql. До 4.1 это было 16 символов в ширину. При обновлении до 4.1 ширина должна была быть изменена до 41 символа с помощью предоставленной утилиты mysql_upgrade
. Если по какой-то причине этот шаг был пропущен, сервер по умолчанию использовал бы старые 16-байтовые хэши, что вы и описываете.
Есть записать этого в документации MySQL.
Если вы обнаружите, что ваша таблица нуждается в обновлении с char (16) до char (41), и у вас есть утилита mysql_update, запустите ее, чтобы завершить обновление. В качестве альтернативы (сделайте резервную копию, а затем можете) обновить вручную, используя:
ALTER TABLE user
MODIFY Password char(41) character set latin1 collate latin1_bin NOT NULL default ''