报错
sqlalchemy.exc.TimeoutError: QueuePool limit of size 100 overflow 10 reached,
connection timed out, timeout 30 (Background on this error at: http://sqlalche.me/e/3o7r)
查看数据库未活动超时时间
show variables like "interactive_timeout";
一般来说数据库默认的超时时间是8小时,注意设置连接回收时间小于数据库配置的失效时间
engine配置
配置SQLAlchemy的engine是很重要的,有些参数一定要知道,我这里的配置方式大致如下:
engine = create_engine(
"mysql+pymysql://user:password@127.0.0.1:3306/test?charset=utf8",
pool_size=10,
pool_recycle=1600,
pool_pre_ping=True,
pool_use_lifo=True,
echo_pool=True,
max_overflow=5
)
https://www.osgeo.cn/sqlalchemy/core/pooling.html