mysql - Amazon Web Service RDS 连接失败

标签 mysql apache amazon-web-services networking tcp

我正在尝试在本地运行基于 PHP 的项目,连接到 Amazon RDS 实例。我在浏览器中收到以下错误:

![SQLSTATE[HY000] [2002]] 1

我已经运行了一系列网络测试,我对以下内容进行了 ping 操作并收到了成功的测试结果。我 ping:

  • iiNet 的网址
  • iiNet 的 DNS 服务器之一
  • 我电脑的环回地址
  • 我对 Google 执行了 ping 操作

然后我尝试使用 mysql 实用程序进行远程连接并收到

ERROR 2003 (HY000): Can't connect to MySQL server

enter image description here

我认为您应该了解我自己的网络情况的最后一个因素,我通过以下方式连接到互联网:

modem->Zyxel VPN->Wireless Router->My laptop

山姆山发生了什么事? 谢谢, 厘米

最佳答案

要使其发挥作用,必须满足以下条件:

  • RDS 实例必须解析为公共(public) IP 地址(我会为您检查这一点,但由于您选择使用屏幕截图而不是文本,因此我无法复制粘贴它,所以我把它留给你)

  • 与 RDS 实例关联的安全组必须允许来自您的公共(public) IP(您将从 http://wtfismyip.com/text 获得的 IP)的流量。默认情况下,此不会为真。我强烈建议您向您的 IP 开放,而不仅仅是所有人,因为如果 Mysql 的端口是公共(public)的,那么它对于 DOS 攻击来说是微不足道的。

  • 托管 RDS 实例的 VPC 的网络 ACL 也必须允许该流量。默认情况下允许这样做,因此除非您更改了 VPC 中的 ACL,否则可以忽略这一点。

如果所有这些都是真的,您应该能够连接!

关于mysql - Amazon Web Service RDS 连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53416921/

相关文章:

Apache 可在本地主机上运行,​​但不能在服务器名称上运行

apache - HTTP 工作正常但 HTTPS 不工作 - Apache 2

php - codeigniter 不显示请求的页面

amazon-web-services - 在 Terraform 中,如何使用请求路径中的变量指定 API 网关端点?

mysql 排序顺序没有返回我需要的值

php - mysqli动态更新查询

amazon-web-services - 如何使用 AWS Lambda 向 postman POST 请求

amazon-web-services - DynamoDBLocal 凭据失败

php - 如何从 sql 查询中删除特殊字符?

mysql - 查找组的所有 USER_ID 的最大日期记录