Как подключиться к MySQL удаленно?
В Linux демон MySQL после установки настроен сразу только на локальное подключение. MySQL разрешает подключения только на интерфейсе 127.0.0.1. Чаще всего MySQL устанавливается рядом с web-сервером и подключение к нему происходит локально.
В редких случаях необходимо разрешить подключение для локальной сети или еще реже из любого места.
Чтобы настроить удаленное подключение к MySQL необходимо выполнить 2 шага:
- разрешить MySQL слушать не только 127.0.0.1;
- добавить пользователю право подключаться не с localhost.
Настраиваем MySQL
Открываем основной конфигурационный файл MySQL:
sudo vim /etc/mysql/my.cnf
Находим строчку и комментируем:
...
# bind-address = 127.0.0.1
...
Это укажет демону принимать входящие соединения с любых интерфейсов.
Если нужно разрешить подключение только с ЛВС, то указываем IP-адрес сервера. К примеру bind-address = 192.168.0.2
, где 192.168.0.2 — адрес нашего сервера с БД.
Далее перезапускаем демон БД:
sudo service mysqld restart
Обновляем права пользователя
Подключаемся к MySQL через консоль:
mysql -u root -p
Enter password:
Вводим пароль root.
Доступ отовсюду
Исполняем команду:
RENAME USER 'root'@'localhost' TO 'root'@'%';
FLUSH PRIVILEGES;
Первая команда добавит пользователю root возможность подключаться c любого адреса. Вторая команда применит новые права.
Доступ только с локальной сети
Если Вы хотите ограничить подключение к MySQL только локальной сетью, последние команды должны быть такими:
RENAME USER 'root'@'localhost' TO 'root'@'192.168.0.*';
FLUSH PRIVILEGES;
Теги: MySQL