因此,我从获得连接到我的RDS代理时遇到了一个错误。运行python和DB的EC2实例都是在同一个VPC上安装的,我可以可视化运行psql命令的DB (我正在RDS上运行Aurora版本),但是无法与我的应用程序连接,总是得到这个错误:
File "/home/ec2-user/.local/lib/python3.7/site-packages/psycopg2/__init__.py", line 127, in connect
conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
File "/home/ec2-user/.local/lib/python3.7/site-packages/eventlet/support/psycopg2_patcher.py", line 46, in eventlet_wait_callback
state = conn.poll()
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
有人遇到这个吗?下面是我对app.py的设置:
app.config['SECRET_KEY'] = '------------'
app.config['SQLALCHEMY_POOL_SIZE'] = 1
app.config['SQLALCHEMY_MAX_OVERFLOW'] = 0
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
# Flask-SQLAlchemy configuration
app.config['SQLALCHEMY_DATABASE_URI'] = getenv('DATABASE_URL', '-------------------------')
app.config['SQLALCHEMY_BINDS'] = {'logs': getenv(getenv('---------'))}
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
app.config['SQLALCHEMY_ENGINE_OPTIONS'] = {
'echo':False,
'pool_recycle':3600,
'pool_pre_ping':True,
'pool_use_lifo':True
}
发布于 2022-03-17 14:50:11
实例可以与RDS代理与5432通信,但代理在3306与DB通信。因此,我只是将连接字符串中的端口更改为5432,并且它工作得很好。
https://stackoverflow.com/questions/71512926
复制相似问题