我只能连接到我的一个数据库

问题描述 投票:0回答:1

我有 3 个使用免费层实例的 postgres 数据库,它们都具有相同的配置、相同的 vpc、相同的子网和相同的安全组,其中“所有流量”作为入站和出站规则:

  • db A
  • db B
  • db C

我还在同一个 EC2 实例中运行 3 个容器:

  • 女士A
  • 女士B
  • 女士C

所有这些都在 ecs 集群内,直到这里一切都按预期工作,每个微服务都在运行(作为单独的任务)并且可以与其各自的数据库通信,它可以很好地读写数据,它们甚至可以很好地相互通信.

但是,当我想使用 dbeaver 或 psql 连接到我的任何数据库(来自 arch linux 本地)时,我只能连接到数据库 B,而不是 A 和 C。

当我尝试使用 dbeaver 连接时

  • db B 几乎立即连接
  • db A 和 C 连接挂起几秒钟,然后 dbeaver 告诉我“连接尝试超时。”

当我尝试使用 psql 连接时

  • db B 的命令要求我输入密码,然后我就可以正常连接了
  • db A 和 C 的命令永远挂起,它甚至不提示我输入密码

可能是什么问题?

postgresql amazon-web-services amazon-rds
1个回答
0
投票

检查RDS端以下配置:

  1. 确保 RDS 实例可公开访问。
  2. 验证 RDS 安全组是否允许来自所需端口的公共流量。
  3. 确保将正确的子网(公共子网)附加到 RDS 实例。

您还可以尝试以下命令:

  • 从终端运行
    nslookup
    到 RDS 主机并检查是否 解析为公共 IP。
  • 尝试对 IP 或 RDS 主机进行
    traceroute
    检查网络路径。

如果安全组允许公共访问并且 RDS 启用了公共访问,则您应该能够连接。

© www.soinside.com 2019 - 2024. All rights reserved.