最近我们的Django项目供Java Sofa应用进行tr调用时, 经常会出现一个异常: django.db.utils.OperationalError: (2006, 'MySQL server has gone away'). 本文记录了分析, 本地重现与解决此问题的全过程. 原因分析: Django在1.6引入长链接(Persistent connections)的概念, 可以在一个HTTP请求中一直用同一个连接对数据库进行读写操作.但我们的应用对数据库的操作太不频繁了, 两次操作数据库…
有个django的定时任务的需求,调用django的orm来对数据库进行数据处理.  在交互环境下直接启动pyhton脚本没有问题,放在定时任务中时候,总是出现 (2006, 'MySQL server has gone away') 的错误,开始以为是定时框架外部调用的问题,但是后来想想也不合理,为啥直接在shell中调用就没错呢, 想到django1.6的一些数据库连接的新属性(例如持久化连接等)会不会有影响,于是google了下. 看到django官网上有人提过这个类似于bug的东西: 有…
这篇主要介绍在这次项目中使用的peewee 文档地址:http://peewee.readthedocs.org/en/latest/index.html 首先我们要初始化一个数据库连接对象.这里我使用了peewee提供的链接池.当然你也可以直接指定连接例如: db = SqliteDatabase('base.db') 我这里使用了peewee扩展pool,并初始化db对象参数. from playhouse import pool db = pool.PooledMySQLDatabase(…
背景: 今天导入一个数据量很大的.sql文件时,报错: 原因: 可能是sql语句过长,超过mysql通信缓存区最大长度. 解决:1. 编辑 MySQL 安装目录下的 my.ini,在最后添加以下内容: max_allowed_packet=16M 2. 重启 MySQL 服务 参考资料: [1] MySQL 数据批量恢复时 [Err] 2006 - MySQL server has gone away 错误的解决 [2] #2006-MySQLserverhasgoneaway…
到如一些小脚本很少报错,但最近导入一个10+M的SQL脚本,却重复报错: Error occured at:2014-03-24 11:42:24 Line no.:85 Error Code: 2006 - MySQL server has gone away 最终找到原因,原来是MySQL导入大批量数据的时候超出了默认允许最大的数据包所以就提示2006 - MySQL server has gone away 于是找到my.cnf,在[mysqld]加入: max_allowed_packe…
到如一些小脚本很少报错,但最近导入一个10+M的SQL脚本,却重复报错: Error occured at:2014-03-24 11:42:24Line no.:85Error Code: 2006 - MySQL server has gone away 最终找到原因,原来是MySQL导入大批量数据的时候超出了默认允许最大的数据包所以就提示2006 - MySQL server has gone away 于是找到my.cnf,在[mysqld]加入: max_allowed_packet=…
#2006 - MySQL server has gone away 问题解决方法 原文地址:http://www.cnblogs.com/bisonjob/archive/2009/08/18/1548611.html 1.应用程序(比如PHP)长时间的执行批量的MYSQL语句. 最常见的就是采集或者新旧数据转化. 解决方案: 在my.ini文件中添加或者修改以下两个变量: wait_timeout=2880000 interactive_timeout = 2880000 关于两个变量的具体…
导SQL数据库结构+数据时,如果数据是批量插入的话会报错:2006 - MySQL server has gone away. 解决办法:找到你的mysql目录下的my.ini配置文件(如果安装目录没有my.ini文件,那么你应该可以看见一个my-default.ini文件,那就直接拷贝一份然后修改名字为my.ini),加入以下代码 max_allowed_packet=500M wait_timeout=288000 interactive_timeout = 288000 自己看情况更改数值…
Yii2 解决2006 MySQL server has gone away问题 Yii2版本 2.0.15.1 php后台任务经常包含多段sql,如果php脚本执行时间较长,或者sql执行时间较长,经常会碰到mysql断连,报2006 MySQL server has gone away错误.通常,mysql断连了,重连数据库就好了,但是在哪里执行重连呢?这是一个值得思考的问题. 手动重连 最直接的解决办法,是在执行较长sql,或者脚本执行合适的时机,手动重连 \Yii::$app->db->…
https://blog.csdn.net/niqinwen/article/details/8693044 导入数据库的时候 SQLyog 报错了 Error Code: 2006 – MySQL server has gone away 搜了下,说是max_allowed_packet (MySQL的一个参数)设置的值不够大. 那我改下就行了 嘿嘿 In Windows: In the MySQL server installation directory,in my.ini file, a…