Разрешение удаленных подключений к MySQL/MariaDB
Для себя краткая шпаргалка как разрешить удаленный доступ как для root пользователя, так и вновь созданного пользователя.
Удаленный доступ к MySQL/MariaDB необходим, если база данных должна быть доступна с другого сервера или приложения, например:
- при разделении базы данных и веб-сервера,
- для администрирования с удаленной машины,
- при использовании кластеризации или репликации.
Разрешение подключений в конфигурации
По умолчанию MySQL/MariaDB слушает только локальные подключения 127.0.0.1. Нужно изменить конфигурацию:
- MySQL :
/etc/mysql/mysql.conf.d/mysqld.cnf - MariaDB :
/etc/mysql/mariadb.conf.d/50-server.cnf
Найти строку:
bind-address = 127.0.0.1и заменить на:
bind-address = 0.0.0.0Перезапустить сервер базы данных:
systemctl restart mysql # Для MySQL
systemctl restart mariadb # Для MariaDBРазрешение удаленного доступа
Проверка текущих прав
Перед выдачей новых прав можно проверить текущие разрешения пользователей:
SELECT user, host FROM mysql.user;
+-------------+-----------+
| User | Host |
+-------------+-----------+
| mariadb.sys | localhost |
| mysql | localhost |
| root | localhost |
+-------------+-----------+
3 rows in set (0,001 sec)Если в списке host указан %, значит root уже имеет доступ со всех хостов.
Разрешение доступа для root
Выдать root права на удаленное подключение:
GRANT ALL ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;Создание нового пользователя с удаленным доступом
Создать пользователя с удаленным доступом:
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'strong_password';Замените remote_userи strong_password на желаемые имя пользователя и пароль.
Выдать ему права на конкретную базу данных:
GRANT ALL ON database.* TO 'remote_user'@'%';
FLUSH PRIVILEGES;Выдать ему права на все базы:
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%';
FLUSH PRIVILEGES;Отключение удаленного доступа
Для root
Отозвать права:
REVOKE ALL PRIVILEGES ON . FROM 'root'@'%';Для нового пользователя
Отозвать права:
REVOKE ALL PRIVILEGES ON *.* FROM 'remote_user'@'%';ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
Обсуждение
Нет комментариев.