Права доступа в MySQL

Предположим, перед Вами возникла задача соединения клиента MySQL с удаленным сервером. Для этого, прежде всего, нужно на сервере создать пользователя, обладающего нужными привелегиями и имеющего доступ с определенного хоста(на котором расположен клиент). С точки зрения безопасностине не стоит обеспечивает доступ отовсюду – есть вероятность подбора пароля злоумышленником и доступа к Вашим данным.

GRANT ALL ON <dbname>.* TO ‘<userName>’@'<host>’ IDENTIFIED BY ‘<pass>’

Обратите внимание на формат записи имени пользователя – кавычек должно быть 4, и собачка(@) должна находится вне кавычек. Иначе ничего не получится.

Ну вот, комманда выполнена, а соедениние все равно устанавливаться не хочет. Правда, ошибка вываливается несколько другая:

ERROR 1251: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Это значит, что сервер более новой версии нежели клиент.Надо либо обновить клиент(что не всегда возможно), либо еще немного пошаманить на сервере.

От имени привелигелированного пользователя выполните комманды:

UPDATE mysql.user SET Password = OLD_PASSWORD(‘<pass>’) WHERE user=”<userName>”;

FLUSH PRIVILEGES

Ну вот и все…



Digital Ocean
Провайдер облачного хостинга - заведи свой виртуальный сервер всего за $5 в месяц !

Leave a Reply