所以,我刚刚创build了Amazon RDS帐户。 我开始了一个数据库的实例。
The "endpoint" is: abcw3n-prod.cbmbuiv8aakk.us-east-1.rds.amazonaws.com
大! 现在我尝试从我的其他EC2实例之一连接到它。
mysql -uUSER -pPASS -habcw3n-prod.cbmbuiv8aakk.us-east-1.rds.amazonaws.com
但没有任何作品,它只是挂起。
我试图ping它,也没有任何作品。 什么都没发生。
我需要更改一些设置吗?
默认情况下,RDS不允许任何未在安全组(SG)中指定的连接。 您可以根据CIDR地址或亚马逊账号来允许该账号下的任何EC2访问。
由于您尚未将防火墙configuration为接受来自您的其他实例的mySQL连接,因此该数据包正在防火墙级别上丢弃,因此您需要:
注意,服务器的源IP不会是你的弹性IP(在大多数情况下),你将有一个内部IP设备(Linux上的ifconfig会告诉你这一点)。
这里有很多关于安全组的讨论,还要检查:
(路由组是我的问题;在创build一个新的子网时,我忽略了将它添加到带有网关的路由组中。)
固定。
必须在DB下的安全组中授予访问权限…
我遇到过同样的问题 ;
为我工作…
为了在locking访问权限之前完全打开安全性进行testing,我的数据库实例和EC2实例使用相同的安全组,并且将入站和出站端口3306configuration为允许来自任意位置的连接。 这个问题 – 我能够从我的笔记本上连接到Aurora,但是从我的EC2实例来看却不可思议,就好像EC2实例不在任何位置。 解决scheme是添加另一个入站mysql / Aurora规则,并指定与入站连接的源相同的安全组ID 。 我的安全组有一个引用自己的规则,可以从我的笔记本或EC2实例进行连接。
mysql入站规则应该如下所示
这是安全组的问题。