简介
Django 数据库连接超过 wait_timeout 导致连接丢失时自动重新连接数据库
https://github.com/zhanghaofe…
安装
pip install django_db_reconnect
注意仅支持 pymysql,使 django 使用 pymysql 需要先安装包并在 settings.py 所在目录的__init__.py 增加如下代码:
import pymysql
pymysql.install_as_MySQLdb()
使用
添加 django_db_reconnect 到 settings.py 的 INSTALLED_APPS
INSTALLED_APPS = (
# 省略其他配置
‘django_db_reconnect’,
)
其他问题
事务或者其他 autocommit=False 非自动提交情况下将不会自动重连,否则可能导致连接丢失前的写入没有 commit 被丢弃