【发布时间】:2018-03-01 15:30:05
【问题描述】:
使用 MySQL 数据库和 flask-sqlalchemy 我遇到了丢失连接错误 ('Lost connection to MySQL server during query')。我已经将app.config['SQLALCHEMY_POOL_RECYCLE'] 调整为小于engine timeout。我还添加了pool_pre_ping,以确保数据库在两次请求期间不会消失。现在我不知道这仍然是一个问题,因为据我了解,flask-sqlalchemy 应该正确地处理打开和关闭会话。
作为一种解决方法,我想了一种方法来告诉 flask-sqlalchemy 捕获丢失的连接响应并即时重新启动连接。但我不知道该怎么做。所以,我的问题是:
- 您知道什么可能导致我的连接中断吗?
- 您认为我最近的捕捉方法是个好主意还是您有更好的建议?
- 如果这是一个好主意,我怎样才能最方便地做到这一点?我不想将所有请求都包装在 try-catch-statements 中,因为我有很多代码。
【问题讨论】:
-
您在应用程序中使用多线程吗?什么样的mysql驱动?
标签: python mysql flask flask-sqlalchemy