Клиент не поддерживает протокол аутентификации, запрошенный сервером - PullRequest
4 голосов
/ 30 ноября 2010

Мне нужно установить среду PHP4 вместе с mysql5, и я сталкиваюсь с этой проблемой, когда пытаюсь подключиться к mysql.

Спасибо за любой след.

Ответы [ 3 ]

7 голосов
/ 01 декабря 2010

Решение заключается в обновлении пароля пользователя базы данных с помощью функции OLD_PASSWORD MySQL.Например:

[chris@office ~]$ mysql -u root -p mysql

Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 267
Server version: 5.1.41-3ubuntu12.1 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mysql;
Database changed

mysql> update user set Password=OLD_PASSWORD('password') WHERE User='username';

Query OK, 0 rows affected (0.02 sec)
Rows matched: 0  Changed: 0  Warnings: 0

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql>
3 голосов
/ 30 ноября 2010

Это известная проблема MySQL. C.5.2.4.Клиент не поддерживает протокол аутентификации:

MySQL 5.1 использует протокол аутентификации, основанный на алгоритме хеширования пароля, который несовместим с тем, который использовался более старыми (до 4.1) клиентами.Если вы обновляете сервер с версии 4.0, попытки подключиться к нему с помощью более старого клиента могут завершиться неудачно со следующим сообщением: «Клиент не поддерживает протокол аутентификации, запрошенный сервером; рассмотрите возможность обновления клиента MySQL».проблема, вы должны использовать один из следующих подходов:
1. Обновите все клиентские программы для использования клиентской библиотеки 4.1.1 или новее.
2. При подключении к серверу с клиентской программой до 4.1, используйтеучетная запись, которая все еще имеет пароль в стиле до 4.1.
3. Сбросьте пароль в стиле до 4.1 для каждого пользователя, которому необходимо использовать клиентскую программу до 4.1.
4. Скажите серверу использоватьстарый алгоритм хэширования паролей.

0 голосов
/ 20 мая 2018

У меня была такая же проблема.Я использовал последнюю версию MySQl 5.7

Переустановил старую версию MySQL 5.5 и решил проблему.

Я думаю, что есть новое требование для аутентификации в последней версии MySQL 5.7

Просто переустановитеMySQL 5.5.

...