この質問は、次の質問に関連しています。
ローカルマシンで新しい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経由でリモート接続をテストしてみました。
- ISPから静的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.