避免 'MySQL server has gone away' 和 'Lost connection to MySQL server during query'

Avoiding 'MySQL server has gone away' and 'Lost connection to MySQL server during query'

我遇到了上述错误。

sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError)
(2013, 'Lost connection to MySQL server during query') 

sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) 
(2006, 'MySQL server has gone away')

我们使用了很多 ORM 查询,但我们使用相同的 connection/session,如果一个 orm 抛出错误,另一个则由于无效的 trx 回滚错误而失败。是否建议对每个orm查询使用每个connection/session??????

我在 sqlalchemy NOT flask-sqlalchemy 中收到此错误,而且我们的应用程序作为 gunicorn 服务器运行,它是一个 flask 应用程序。应用运行在应用工厂下。

修改 MySQL 配置文件中的 max_allowed_packetnet_read_timeout。或 运行 以下查询:

SET GLOBAL max_allowed_packet=268435456;

SET GLOBAL net_read_timeout = 1000;

修改MySQL配置检查Setting max_allowed_packet