|
|
|
| При попытке установить соединение с сервером MySQL, находящемся на удаленном хосте получаю следующее:
Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in /home/litstyl0/public_html/includes/functions.php on line 3
Сама база позволяет соединение с удаленки. В чем здесь дело? Вопрос срочный. Большое спасибо всем ответившим. | |
|
|
|
|
|
|
|
для: ck
(04.04.2006 в 13:02)
| | Удалённый сервер ваш или не ваш (проблема в старом формате пароля для этой учётной записи)? | |
|
|
|
|
|
|
|
для: cheops
(04.04.2006 в 13:33)
| | Сервер с БД - наш (виртуальный). С сайтом - нет. А каким может быть формат пароля? Там только цифры. | |
|
|
|
|
|
|
|
для: ck
(04.04.2006 в 13:37)
| | Вы пользователя для удалённой работы как создавали? | |
|
|
|
|
|
|
|
для: cheops
(04.04.2006 в 13:39)
| | Знаком %. Сама схема работает точно. Мне уже доводилось здесь создавать базы с доступом с любого хоста. И это работало. Но хост сайта был другим. | |
|
|
|
|
|
|
|
для: ck
(04.04.2006 в 13:43)
| | Имелось в виду, через какой клиент осуществлялось подключение при создании пользователей и назначении паролей.
Это проблема отсутствия совместимости паролей в новом формате (сформированных через новые клиенты) и старых клиентов. | |
|
|
|
|
|
|
|
для: Trianon
(04.04.2006 в 14:26)
| | Вероятно на хосте-клиенте PHP скомпилирован с поддержкой MySQL версии 4.0... | |
|
|
|
|
|
|
|
для: cheops
(04.04.2006 в 15:57)
| | ...как это обычно и бывает при работе через mysql_* функции.
Непонятно другое. Каким макаром там пароль оказался в новом формате.
Хост-провайдер, когда пароли дает, обычно таких промахов не делает.
Видимо с базой общались напрямую. | |
|
|
|
|
|
|
|
для: Trianon
(04.04.2006 в 16:11)
| | Нет, почему же, если удлаённый сервер ориентирован на MySQL 4.1, а тот сервер с которого идёт обращение на 4.0 - это вполне может быть... | |
|
|
|
|
|
|
|
для: cheops
(04.04.2006 в 22:05)
| | >Нет, почему же, если удлаённый сервер ориентирован на MySQL
т.е. сервер БД
>4.1, а тот сервер с которого идёт обращение на 4.0 - это
т.е. апач с PHP-клиентом
>вполне может быть...
а хостер не знает, где у него что? Его же пользователи в мелкий венигрет покрошат. | |
|
|
|
|
|
|
|
для: Trianon
(04.04.2006 в 22:10)
| | Действительно, версия MySQL на сервере БД - 4.1.15, а на хосте Агавы (откуда производится подключение) - 4.0.18, - под него, вероятно, и выстроен PHP.
Хм. Т.е. проблема решению не подлежит? | |
|
|
|
|
|
|
|
для: ck
(05.04.2006 в 12:32)
| | Ну почему не подлежит?
Решения приводятся в FAQ мануала (ссылка в реплике (Trianon (04.04.2006 в 14:26))
Вот, например, одно из них: заменить версию пароля на более старую:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;
|
| |
|
|
|
|
|
|
|
для: Trianon
(05.04.2006 в 14:44)
| | Как альтернатива
mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
|
| |
|
|
|
|
|
|
|
для: Trianon
(05.04.2006 в 14:44)
| | Простите, но мне не доводилось сталкиваться добвалять или изменять пользователей на SQl. Не могли бы вы привести этот код с примерами подставленных переменных? Большое спасибо. | |
|
|
|
|
|
|
|
для: ck
(05.04.2006 в 15:02)
| |
SET PASSWORD FOR 'имя_пользователя'@'имя_сервера_БД' = OLD_PASSWORD('новый_пароль');
|
| |
|
|
|
|
|
|
|
для: Trianon
(05.04.2006 в 15:11)
| | Техподдерживатели нашего хостера боятся выполнять этот запрос, утверждая, что это грозит нпредсказуемыми последствиями для всего серера БД. | |
|
|
|
|
|
|
|
для: ck
(05.04.2006 в 16:44)
| | Техподдерживатели вашего хостера могли бы и написать краткий пример подключения к БД на языке PHP, который бы работал на их сервере.
В конце концов, это же они Вам пароль выдали, которым Вы не можете воспользоваться? | |
|
|
|
|
|
|
|
для: Trianon
(05.04.2006 в 16:54)
| | Когда клиент на их сервере, все работает. Они клянут агаву). | |
|
|
|
|
|
|
|
для: ck
(05.04.2006 в 17:22)
| | Тогда попытайтесь убедить их, что предложенный способ затронет только Ваш вход. В конце концов старый формат пароля лишь ненамного слабее нового, а привилегий он больших, чем к Вашей базе дать не сможет.
Либо попытайтесь убедить агаву проапгрейдить клиент.
А так Вы застряли меж двух огней. | |
|
|
|