Phi*_*eme 5 amazon-web-services amazon-rds
我无法访问 MySQL RDS 实例。
我正在尝试从 EC2 实例连接到 RDS 实例。RDS 实例和 EC2 实例都包含在同一个 VPC myVPC 中。我通过检查 RDS 实例和 RC2 实例下列出的 VPC 是否匹配来确认这一点。
我发现的有关此问题的大多数问题都与安全组有关。许多用户遇到了这种困难,他们的问题通过确保与 RDS 实例关联的 VPC 安全组与他们的 EC2 实例相同而得到解决。就我而言,两个实例都在同一个 VPC 上并使用同一个安全组。在这个安全组中,我有一个规则,允许跨我的 VPC 的整个 IP 范围(例如 172.35.0.0/16)的所有入站流量。为了让这一切正常工作,我已允许来自该安全组的所有 IP 地址的所有端口的所有流量。这仍然没有奏效。
对文档的一些阅读表明,应该确保您的子网与您的 VPC 使用的相同路由表相关联。我通过转到将 myVPC 中的所有子网与此路由表相关联的路由表来完成此操作。
我也尝试过使用和不使用弹性 IP。我能够使用弹性 IP 地址连接到我的 EC2 实例。
我意识到这个问题被问了很多。到目前为止,我还没有遇到一个解决方案解决了我的问题的人。
编辑:添加更多安全设置的详细信息 ec2 实例和 RDS 使用相同的安全组。在该安全组内有一行内容类似于
MYSQL TCP 3306 172.35.0.0/16 我的 CIDR 范围
我加了
MYSQL TCP 3306 172.35.0.1/32 我的 ec2 实例私有 IP
以上都没有奏效。
我的网络 ACL 设置下的 DID 工作是什么,我更改了一行
1 MySQL(3306) TCP(6) 3306 172.35.0.1/32 ALLOW
到
1 ALL TRAFFIC ALL ALL 0.0.0.0/32 ALLOW
所以我的问题已经解决了,但现在我还有另一个问题。如何避免 3306 对所有入站连接开放。我可能会将此作为新问题发布并在此处链接。
几周前我自己也遇到了这个问题。就我而言,我忘记允许我的 EC2 实例在端口 3306 上的出站流量到 VPC CIDR。尝试将出站规则添加到您的 EC2 实例安全组,如下所示:
Type Protocol Port Range Destination
MYSQL TCP 3306 172.35.0.0/16
Run Code Online (Sandbox Code Playgroud)
您确定您的数据库位于 EC2 实例的 VPC 内吗?假设创建一个安全组,允许来自您的 VPC 的 CIDR 范围的 3306 入站。
要以稍微更熟悉的方式进行测试,您可以临时构建一个带有 MySQL 的实例,只要它也在您的 VPC 中,就应该以相同的方式工作。
确保您的 RDS 位于可从 VPC 中的其他计算机访问的子网组中,例如,如果您是多可用区等,请确保您能够在子网之间路由。
更新:另请尝试使用 VPC IP,而不是外部 DNS 名称来访问它,您的 DNS 可能指向外部网络地址或以其他方式失败。
| 归档时间: |
|
| 查看次数: |
14837 次 |
| 最近记录: |