AWS RDS for PostgreSQL在几小时后无法连接

sr4lhrrt  于 2023-11-18  发布在  PostgreSQL
关注(0)|答案(5)|浏览(173)

我用PostgreSQL创建了几个RDS示例,遇到了同样的问题:

  • 我可以在创建示例后立即连接到所有这些示例。
  • 几个小时后(我停止工作,关掉笔记本电脑),我不能再连接到任何一个。
  • 我使用DBeaver进行连接,错误显示为“连接尝试超时”。

我附上了

的信息。希望有人能帮助我解决这个问题。提前谢谢你。

csga3l58

csga3l581#

我终于找到了问题的答案。对于“连接超时”错误,其中一个原因可能是安全设置。虽然我在创建RDS示例时将其设置为公共,但示例附带了私有VPC安全组,该安全组未公开。
我们可以在VPC内将RDS示例与公共安全组连接(我认为这不是一个好的设置,只是为了像我这样的AWS初学者),如下所示:

  • 从服务中选择EC2,在左侧面板中选择安全组。
  • 点击“创建安全组”按钮。
  • 在对话框中,输入组的名称,例如“postgres-public-access”
  • 如果您有多个VPC,请确保在最后一个配置文件中选择与数据库所在的VPC相同的VPC
  • 在对话框中,单击“添加规则”按钮。
  • 在“类型”栏中,选择“PostgreSQL”或其他类型的RDS示例(或者您可以输入您的RDS示例的端口,对于Postgres通常为5432)。
  • 在“Source”列中,输入“0.0.0.0/0“。
  • 点击“保存”按钮。
  • 在服务中,选择RDS,选择RDS示例,点击“修改”按钮。
  • 在“网络与安全”,“安全组”中,选择您刚刚创建的VPC安全组,在我的情况下,它是“postgres-public-access”。
  • 点击“继续”按钮。现在您可以继续连接您的数据库无处不在。
wko9yo5t

wko9yo5t2#

我必须向VPC添加/编辑一条规则,以允许来自所有源的连接。
步骤:
1.转到DB > Connectivity & security >单击VPC(vpc-
1.在安全>安全组>下打开sg-[something],其VPC ID与DB VPC匹配
1.修改规则>编辑规则>将源更改为任意位置
因此,即使在创建数据库并选择允许公共访问时,它也只包含来自VPC内部的流量。通过执行上述步骤,您可以允许访问所有来源。

eni9jsuy

eni9jsuy3#

我只是按照指南:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToPostgreSQLInstance.html
通过典型的事情运行:

x1c 0d1x的数据

  • 您可以为TCP端口5432添加一个规则,就像我上面所做的那样。
  • 检查密码/密码-有时不正确的会被缓存。
  • 尝试ping dB,看看是否是互联网连接问题。
8tntrjer

8tntrjer4#

选择DB -> Modify -> Connectivity->保存
x1c 0d1x的数据

k3fezbri

k3fezbri5#

我面临着同样的问题,它最终是因为VPN正在使用,当我断开VPN我申请连接。

相关问题