Spec-Zone .ru
спецификации, руководства, описания, API

C.5.2.4. Client does not support authentication protocol

Текущая реализация протокола аутентификации использует алгоритм хеширования пароля, который является несовместимым с используемым более старым (пред4.1) клиенты. Попытки соединиться с 4.1 или более новым сервером с клиентом старшего возраста могут перестать работать со следующим сообщением:

shell> mysqlClient does not support authentication protocol requestedby server; consider upgrading MySQL client

Чтобы иметь дело с этой проблемой, предпочтительное решение должно обновить все клиентские программы, чтобы использовать 4.1.1 или более новую клиентскую библиотеку. Если это не возможно, используйте один из следующих подходов:

Client does not support authentication protocol ошибка также может произойти, если многократные версии MySQL устанавливаются, но клиентские программы динамически соединяются и соединяются с более старой библиотекой. Удостоверьтесь, что клиенты используют новую версию библиотеки, с которой они являются совместимыми. Процедура, чтобы сделать это будет зависеть от Вашей системы.

Отметить

mysql расширение не поддерживает протокол аутентификации в MySQL 4.1.1 и выше. Это - истина независимо от используемой версии PHP. Если Вы хотите использовать mysql расширение с MySQL 4.1 или более новый, Вы, возможно, должны следовать за одной из опций, обсужденных выше для того, чтобы сконфигурировать MySQL, чтобы работать со старыми клиентами. mysqli расширение (обозначает "MySQL, Улучшенный"; добавленный в PHP 5) является совместимым с улучшенным паролем, хеширующим используемый в MySQL 4.1 и выше, и никакая специальная конфигурация MySQL не должна быть сделанной, чтобы пользоваться этой клиентской библиотекой MySQL. Для получения дополнительной информации о mysqli расширение, см. http://php.net/mysqli.

Для дополнительного фона на хеширующем пароле и аутентификация, см. Раздел 6.1.2.4, "Пароль, Хеширующий в MySQL".