2015-02-10 54 views
0

通過指定主機和端口號,我能夠在具有ec-2實例上的mysql客戶端的VPC上的AWS RDS上運行的MySQL連接。無法從Jbdc訪問RDS mysql

當我嘗試使用JDBC它來訪問,我得到這個例外

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure 

我相信安全組的配置是否正確,因爲我能夠訪問用mysql客戶端上的EC2 RDS的MySQL。我該如何調試?

+0

快速說明:您的EC2實例上還運行着JDBC客戶端嗎?相同的VPC?在場所? – 2015-02-10 16:08:40

+0

是在同一個EC2實例。我只有一個vpc並且只有一個安全組。 @SébastienStormacq – Srinivas 2015-02-10 17:10:55

回答

0

確保分配給您的實例的安全組擁有rds安全組的權限。還要確保你的vpc(如果你使用的話)有適當的網絡ACL允許入口和出口流量通過。

0

鑑於您的客戶端(MySQL和JDBC)應用程序在同一實例上運行,它排除了許多您可能面臨的低級別路由問題。

我會仔細檢查下面的列表(排名不分先後)

  • 你試圖連接到從CLI和JDBC相同的IP地址?
  • 你是否連接到相同的端口號?
  • 你使用一個連接的DNS和另一個的IP地址?如果是,請檢查DNS解析。

正如您所說的,在CLI正在連接時,不太可能對安全組或網絡acl進行錯誤配置。但它也值得三重檢查。

+0

我必須創建另一個安全組,而不是ec2實例的默認安全組,然後與RDS關聯。這解決了問題。 – Srinivas 2015-02-11 06:31:52

+0

如果我的回答對你有幫助並且是正確的;你能接受嗎?謝謝 – 2015-02-22 09:13:59