Этот вопрос связан со следующими вопросами:
- Невозможно подключиться к ошибке сервера MySQL 111
- Попытка подключения к удаленному хосту MySQL (ошибка 2003)
Я настраиваю новый сервер MySQL (5.1) на своей локальной машине. Мне нужно предоставить удаленный доступ к базе данных. Я сделал следующие шаги:
-
Комментарий
bind-address
в my.cnf:# bind-address = 192.168.1.3
-
Предоставляемые привилегии:
GRANT ALL PRIVILEGES ON *.* TO 'nickruiz'@'%' IDENTIFIED BY PASSWORD 'xxxx';
- Настройка перенаправления портов на маршрутизаторе (TCP и UDP, порт 3306, 192.168.1.3)
-
Настроить iptables для брандмауэра
sudo iptables -I INPUT -p udp --dport 3306 -j ACCEPT sudo iptables -I INPUT -p tcp --dport 3306 --syn -j ACCEPT sudo iptables-save
-
Перезагрузите сервер mysql
sudo /etc/init.d/mysql restart
При тестировании я получаю следующее:
LAN:
mysql -h 192.168.1.3 -u nickruiz -p
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 95
Server version: 5.1.63-0ubuntu0.11.04.1 (Ubuntu)
Пульт дистанционного управления:
mysql -h 1xx.xx.4.136 -u nickruiz -p
ERROR 2003 (HY000): Can't connect to MySQL server on '1xx.xx.4.136' (111)
Очевидно, что-то не так, что мешает мне использовать мой глобальный IP-адрес.
Примечания:
- Я пробовал тестировать удаленное соединение на том же компьютере, а также через SSH с удаленной машины.
- Я не уверен, что мой провайдер предоставил мне статический IP-адрес.
Любые идеи?
Обновление: telnet, похоже, не работает.
telnet 192.168.1.3 3306
Trying 192.168.1.3...
Connected to 192.168.1.3.
Escape character is '^]'.
E
5.1.63-0ubuntu0.11.04.1,0g8!:@pX;]DyY0#\)SIConnection closed by foreign host.