我有时会在Django中收到以下错误,它会在页面重新加载时消失,我不知道如何重现它。我尝试在 my.cnf 中将wait_timeout设置为12小时,但错误再次出现在mysqld restart
上,但是当我再次重新启动mysqld时却没有,对我来说非常奇怪。
Traceback (most recent call last):
File ".../python3.4/site-packages/django/db/backends/__init__.py", line 131, in _cursor
return self.create_cursor()
File ".../python3.4/site-packages/mysql/connector/django/base.py", line 536, in create_cursor
cursor = self.connection.cursor()
File ".../python3.4/site-packages/mysql/connector/connection.py", line 1231, in cursor
raise errors.OperationalError("MySQL Connection not available.")
mysql.connector.errors.OperationalError: MySQL Connection not available.
答案 0 :(得分:2)
你使用django 1.6吗?也许12小时内没有特定流程的请求?似乎连接被超时中断并在下一个请求中重新打开。尝试在django设置文件的数据库部分设置CONN_MAX_AGE = 3600。如果此值小于mysql配置中的wait_timeout,则会阻止连接超时错误。
https://docs.djangoproject.com/en/1.6/ref/settings/#conn-max-age