通过 psycopg2 连接到 AWS RDS 数据库
Connect to AWS RDS database via psycopg2
我正在尝试使用 psycopg2 通过 python 脚本从我的计算机连接到我的 RDS 数据库。
python代码:
import psycopg2
from db_credentials import *
import logging
def get_psql_conn():
conn = psycopg2.connect(dbname=DB_NAME, user=DB_USER, password=DB_PASS, host=DB_HOST)
logging.info("connected to DB!")
return conn
我收到以下错误:
psycopg2.OperationalError: could not connect to server: Operation timed out
Is the server running on host ********* and accepting
TCP/IP connections on port 5432?
我分配给 RDS 数据库的安全组:
SG 1:
SG 2:
现在我尝试创建一个安全组,允许我的计算机IP访问数据库。
研究组 3:
我可以从我的 ec2 实例连接到数据库,运行 与上面相同的 python 脚本。这似乎与第二个安全组有关,因为当我删除它时,我也无法再从我的 ec2 实例进行连接。然后它会抛出我在尝试从我的计算机连接时遇到的相同错误。
我对RDS和安全组了解甚少,只是跟着网上的教程,但貌似没看懂。
任何帮助是极大的赞赏!谢谢
从 Internet 访问 Amazon RDS 数据库时,需要为数据库配置 Publicly Accessible = Yes
。
这将为数据库实例分配一个 Public IP 地址。实例的 DNS 名称也将解析为 public IP 地址。
为了 public 只能访问的数据库的良好安全性,请确保安全组只允许从您的个人 IP 地址进行访问。
我正在尝试使用 psycopg2 通过 python 脚本从我的计算机连接到我的 RDS 数据库。 python代码:
import psycopg2
from db_credentials import *
import logging
def get_psql_conn():
conn = psycopg2.connect(dbname=DB_NAME, user=DB_USER, password=DB_PASS, host=DB_HOST)
logging.info("connected to DB!")
return conn
我收到以下错误:
psycopg2.OperationalError: could not connect to server: Operation timed out
Is the server running on host ********* and accepting
TCP/IP connections on port 5432?
我分配给 RDS 数据库的安全组:
SG 1:
SG 2:
现在我尝试创建一个安全组,允许我的计算机IP访问数据库。
研究组 3:
我可以从我的 ec2 实例连接到数据库,运行 与上面相同的 python 脚本。这似乎与第二个安全组有关,因为当我删除它时,我也无法再从我的 ec2 实例进行连接。然后它会抛出我在尝试从我的计算机连接时遇到的相同错误。
我对RDS和安全组了解甚少,只是跟着网上的教程,但貌似没看懂。
任何帮助是极大的赞赏!谢谢
从 Internet 访问 Amazon RDS 数据库时,需要为数据库配置 Publicly Accessible = Yes
。
这将为数据库实例分配一个 Public IP 地址。实例的 DNS 名称也将解析为 public IP 地址。
为了 public 只能访问的数据库的良好安全性,请确保安全组只允许从您的个人 IP 地址进行访问。