无法从本地机器连接到 AWS RDS PostgreSQL 实例

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

我创建了一个启用了公共访问的 AWS RDS PostgreSQL 实例,但我无法连接到它。这是我的代码:

try:
   conn = psycopg2.connect(dbname="elevate_permission",
                            user="postgres",
                            password="password123",
                            host="database-1.ce2ilrafe9ry.ap-southeast-1.rds.amazonaws.com")
   print("Connected to DB")
except psycopg2.OperationalError as e:
   logger.error(e)
   sys.exit()

编辑 我在上面的代码中添加了上述异常,这是我收到的错误消息:

操作超时。服务器是否在该软管上运行并接受 TCP/IP 连接?

python postgresql amazon-web-services psycopg2
2个回答
0
投票

您没有在 psycopg2 连接函数中指定端口。


0
投票

显示您的安全组的屏幕截图表明您正在使用名为

default
的安全组。不太可能允许端口 5432(由 Postgres 使用)上的入站连接。

我推荐以下内容:

  • 在 Amazon EC2 管理控制台中创建一个新的安全组
  • 从您的 IP 地址添加端口 5432 的入站规则(或
    0.0.0.0/0
    ,这是整个互联网,但安全性要低得多)
  • 在 Amazon RDS 管理控制台中,修改数据库并将安全组更改为这个新的安全组(并删除
    default
    安全组)
© www.soinside.com 2019 - 2024. All rights reserved.