Исправляем «host ‘myhost’ is not allowed to connect to this mysql server» при удаленном подключении к MySQL

Для начала, проверим настройки в файле /etc/mysql/my.cnf:

port = 3306
#skip-networking (в смысле, закомментировано)
bind-address = IP_СЕРВЕРА_(НЕ_127.0.0.1)

вот это то, что я менял.

Дальше, когда пытаемся присоединиться к базе, например, любой управлялкой базами (SQL Manager Lite как вариант — удобно, бесплатно, но на буржуйском наречии), получаем соообщение о том, что наш комп не может соединяться с мускул сервером…

host ‘myhost’ is not allowed to connect to this mysql server

Как-то так…

Вариант с firewall исключим для простоты восприятия, но проверить не помешает на будущее.

Дело в том, что MySQL не только умеет ограничить доступ извне к самому серверу, но еще и определить пользователей для доступа удаленно к определенным базам или даже таблицам.

Создаем пользователя test с полными правами для базы my_db с паролем superpass (как вариант — запрос в phpMyAdmin):

GRANT ALL PRIVILEGES ON `my_db`.* TO test@'%' IDENTIFIED BY 'superpass';

Это создаст пользователя и даст ему права (GRANT) на соединение со всех хостов кроме localhost (127.0.0.1)!

А следующий запрос даст право читать таблицу my_table в базе my_db пользователю test с компьютера 192.168.0.10 с паролем superpass:

GRANT SELECT ON my_db.my_table TO test@192.168.0.10 IDENTIFIED BY 'superpass';


0

Исправляем «host ‘myhost’ is not allowed to connect to this mysql server» при удаленном подключении к MySQL: 2 комментария

Добавить комментарий