Введение
В этом руководстве объясняется, как использовать Hetzner Cloud Networks для доступа к базе данных MySQL, управляемой на одном облачном сервере (MySQL Server), со второго облачного сервера (MySQL Client).
Предпосылки
- 1 облачный сервер Hetzner с уже установленным MySQL.
Вы можете установить MySQL вручную или просто выбрать “LAMP Stack” при создании сервера.

Шаг 1 — Создание частной сети
Создайте свою частную сеть в рамках проекта Hetzner Cloud в том регионе, который вы хотите использовать.
Помните, что диапазон IP-адресов по умолчанию — 10.0.0.0/16.
Шаг 2 — Подключите сервер к сети
Теперь вы можете подключить сервер MySQL к новой сети. Это можно сделать с помощью Cloud Console или инструмента hcloud Сделай это.
hcloud server attach-to-network <your-server-name> --network <your-network-name> --ip <pvt-ip>
Последняя часть с --ip; Необязательно. Если вы не укажете конкретный частный IP-адрес, система Hetzner Cloud автоматически назначит вам бесплатный частный IP-адрес.
Шаг 3 — Изменение конфигурации MySQL
Чтобы получить доступ к MySQL с другого компьютера, вам необходимо внести изменения в файл /etc/mysql/mysql.conf.d/mysqld.cnf Создавать.
Файл mysqld.cnf Редактировать
Чтобы открыть файл конфигурации MySQL, используйте следующую команду:
nano /etc/mysql/mysql.conf.d/mysqld.cnf
Параметр адрес привязки от 127.0.0.1 К 0.0.0.0 Изменять.
Если вы установили MySQL через программу “LAMP Stack”, вам необходимо указать порт MySQL (по умолчанию 3306) с помощью инструмента УФВ Открыть.
Если вы установили MySQL вручную, вам необходимо установить брандмауэр с помощью этой команды: apt-get установить UFW
Изменить брандмауэр
Чтобы открыть порт 3306 Добавить правило в брандмауэр
ufw allow from 10.1.0.0/16 to any port 3306
10.1.0.0/16 Замените на диапазон IP-адресов сети, созданный вами на шаге 1.
Если вы используете SSH для подключения к серверу, вам также следует разрешить SSH-подключения перед включением брандмауэра.
ufw allow OpenSSH
ufw enableШаг 4 — Создайте нового пользователя MySQL
Войдите в MySQL CLI как пользователь root:
mysql -u root -p
Создайте нового пользователя MySQL, которого смогут использовать нелокальные экземпляры.
CREATE USER '<user>'@'%' IDENTIFIED BY '<password>';
GRANT ALL PRIVILEGES ON *.* TO '<user>'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;Также не забывайте, что после манипуляций с файлом mysqld.cnfПерезапустите MySQL. Чтобы выйти из командной строки MySQL, введите: CTRL+Д Используйте и запустите следующую команду:
service mysql restart
Шаг 5 — Проверьте доступ к MySQL в частной сети
Создайте новый сервер с нуля и подключите его к той же частной сети.
Установите клиент MySQL. Например, можно использовать клиент MariaDB.
apt update apt install mariadb-client -yТеперь вам нужен частный IP-адрес первого сервера. В Cloud Console выберите свой проект и перейдите к списку серверов. Оттуда вы можете скопировать частный IP-адрес этого сервера.
Используйте эту команду для подключения к хосту MySQL:
mysql -h <mysql-host-private-ip> -u <user-created-above> -pЗатем просто введите пароль, созданный для пользователя, и вуаля — вы вошли в систему.
Результат
Здесь вы увидели всего лишь один пример того, как получить доступ к базе данных в частной сети в Hetzner Cloud.











