Открытие порта по умолчанию 3306 для внешнего мира - это то, чего я бы хотел избежать, если это возможно. У нас Nginx работает для целей обратного прокси для других приложений. Целью здесь является безопасный доступ к базам данных MySQL с такими клиентами, как MySQL Workbench, из-за пределов локальной сети. Сервер MySQL работает на виртуальной машине Debian (Linux).
Я настроил серверный блок, как описано ниже. Подключение к mysql .domain.com, порт 80 с пользователем, не являющимся root в MySQL Workbench, приводит к сбою.
Блок сервера:
server {
server_name mysql.domain.com;
location / {
proxy_pass http://localhost:3306/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}
Ошибка сообщение:
Failed to Connect to MySQL at mysql.domain.com:80 with user non-root.
Lost connection to MySQL at 'waiting for initial communication packet', system error: 10060