2015-09-08 154 views
1

我有一個在雲上運行的MySQL,我需要創建具有選擇特權的用戶才能在應用程序中使用。然後,這些用戶應該能夠從外部連接。MySQL不允許遠程連接

我這樣做:

mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass'; 
mysql> GRANT SELECT ON db.* TO 'monty'@'localhost' 
mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass'; 
mysql> GRANT SELECT ON db.* TO 'monty'@'%'; 

/etc/mysql/my.cnf是這樣的:

# Instead of skip-networking the default is now to listen only on 
# localhost which is more compatible and is not less secure. 
bind-address = 0.0.0.0 
#skip-networking 

但是我無法與外界monty本地主機連接。 MySQL Workbench給我錯誤10060

+0

從入站連接的來源開始,一個可能的罪魁禍首是iptables。 TCP 3306是否對遠程主機開放? libwrap在'/ etc/hosts.allow'或'/ etc/hosts.deny'中被拒絕時也是可能的,但是iptables更可能。 –

+0

輕鬆確定您是否可以使用telnet your.db.server 3306從遠程機器打開連接。 –

+0

是你出於問題目的而模糊的IP地址(0.0.0.0),還是與文件中的完全相同? – gabe3886

回答

0

我不得不在Amazon EC2管理控制檯上添加端口才能正常工作。現在我可以從外部訪問我的MySQL服務器。