Mysql数据库的压力

Wesley13
• 阅读 869
  • rationalError: (2006, 'MySQL server has gone away')

2017年10月10日 20:04:43

阅读数:377

问题描述

使用django+celery时, 运行长时间的任务, 一开始操作一次数据库, 20个小时后再次操作数据库.

过了20多个小时, 再次操作数据库时报错.

raised unexpected: OperationalError(2006, 'MySQL server has gone away')
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 85, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 374, in get num = len(clone) File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 232, in __len__ self._fetch_all() File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 1118, in _fetch_all self._result_cache = list(self._iterable_class(self)) File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 53, in __iter__ results = compiler.execute_sql(chunked_fetch=self.chunked_fetch) File "/usr/local/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 894, in execute_sql raise original_exception OperationalError: (2006, 'MySQL server has gone away')

原因

连接超时

我出现问题就是这个原因. 
进入mysql,执行下面的命令:

mysql> show global variables like '%timeout';

+----------------------------+----------+
| Variable_name              | Value    |
+----------------------------+----------+
| connect_timeout            | 10 | | delayed_insert_timeout | 300 | | innodb_lock_wait_timeout | 50 | | innodb_rollback_on_timeout | OFF | | interactive_timeout | 28800 | | lock_wait_timeout | 31536000 | | net_read_timeout | 30 | | net_write_timeout | 60 | | slave_net_timeout | 3600 | | wait_timeout | 28800 | +----------------------------+----------+

wait_timeout 是28800秒,即mysql链接在无操作28800秒后被自动关闭

解决方法

立即生效

执行下面的sql命令

mysql> set global wait_timeout=60*60*30;
  • 1

该命令是将wait_timeout设置为30小时. 
用这种方法,修改完立即生效. 如果重启mysql, 又恢复原来的28800秒.

永久生效

该方法修改完之后, 需要重启mysql才能生效. 
编辑mysql配置文件my.cnf,添加或修改为下面这条命令. 
(我的mysql配置文件路径: /etc/mysql/my.cnf )

wait_timeout = 108000
  • 1

其他原因

还有一些其他原因, 简单描述一下 
1: mysql服务关闭 
2: 数据包 过大 
解决方法: 修改 max_allowed_packet 的值, 方法同上.

版权声明:文为昔日之积累,常忘食废寝而得,望友传之时注以源。 https://blog.csdn.net/win\_turn/article/details/78196789

文章标签: mysqldjangoceleryoperationagone-away

个人分类: djangomysql

宿迁90后小伙在家无聊玩微信,存款惊呆父母!鑫迪科技 · 顶新

想对作者说点什么?  我来说一句

mysql导入数据错误“ERROR 2006 (HY000): MySQL server has gone away”

mysql导入数据错误“ERROR 2006 (HY000): MySQL server has gone away”和mysql导入导出命令...

Mysql数据库的压力  ron03129596

2016-12-11 13:34:14

阅读数:3254

MySQL server has gone away 问题的解决方法

MySQL server has gone away 问题的解决方法 投稿:mdxy-dxy 字体:[增加 减小] 类型:转载 时间:2010-06-05 我要评论 MySQL ser...

Mysql数据库的压力  boshuzhang

2017-06-22 14:15:15

阅读数:11980

Mysql数据库的压力

从前端到后台,开发一个完整功能的小程序

微信开发 | wanghui_777

mysql导入大批量数据出现MySQL server has gone away的解决方法

本文提供mysql导入大批量数据出现MySQL server has gone away的解决方法,及问题分析。...

Mysql数据库的压力  fdipzone

2016-07-20 23:11:11

阅读数:142419

MYSQL Error 2006:MySQL server has gone away的解决方案

MySQL server has gone away有几种情况。1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。    最常见的就是采集或者新旧数据转化。    解决方案:     在my...

Mysql数据库的压力  phphot

2008-08-19 16:36:00

阅读数:8666

ERROR 2006 (HY000): MySQL server has gone away

1.版本 1)操作系统  cat /etc/issue Red Hat Enterprise Linux Server release 5.5 (Tikanga) Kernel \r on an ...

Mysql数据库的压力  shaochenshuo

2015-11-24 20:09:20

阅读数:1694

Yii 数据库重连告别General error: 2006 MySQL server has gone away

General error: 2006 MySQL server has gone away Yii wait_timeout 制造错误 解决办法 错误原因Mysql has gone away my...

Mysql数据库的压力  u011042188

2016-10-21 16:24:55

阅读数:3297

新出的微赚钱方式,网友:白玩这么多年手机了万达广场投资 · 顶新

ERROR 2006 (HY000) at line xx: MySQL server has gone away

1.执行批量的MYSQL语句,例如备份恢复的时候,时间过长。  对应:修改my.cnf中的wait_timeout和interactive_timeout变量  在一些不便修改的情形下,如租用的空...

Mysql数据库的压力  haoyuxuan

2015-04-29 09:48:39

阅读数:365

关于"[MYSQL ERROR(2006):MySQL server has gone away]"的解决方法

产生这个错误一般是由于两个方面的原因,一个是由于向mysql server发送的数据包大小超过了参数max_allowed_packet设置的大小,这个可以通过减小数据包或加大max_allowed_...

Mysql数据库的压力  xtjsxtj

2013-11-13 11:19:13

阅读数:1589

MySQL ERROR 2006 (HY000): MySQL server has gone away

1.版本1)操作系统 cat /etc/issueRed Hat Enterprise Linux Server release 5.5 (Tikanga)Kernel \r on an \m cat...

Mysql数据库的压力  u011666411

2018-04-25 16:50:06

阅读数:30

MySQL错误 ERROR 2006 (HY000): MySQL server has gone away

MySQL下当我导入一个比较大的SQL文件时出现了ERROR 2006 (HY000): MySQL server has gone away错误,具体情况如下: > ll *.sql -rwxr...

Mysql数据库的压力  selifecn

2017-06-15 19:20:09

阅读数:258

MySQL 出现 2006 - MySQL server has gone away 问题的解决方法

导入大文件的 SQL 语句(大约 100 多 M)时,会提示 “2006 - MySQL server has gone away” 的错误。 1 分析 原来 MySQL 对于所接收的数据包是有一...

Mysql数据库的压力  deniro_li

2018-02-06 21:55:48

阅读数:141

amoeba连接mysql--ERROR 2006 (HY000): MySQL server has gone away

amoeba下载地址:http://sourceforge.net/projects/amoeba/files amoeba version:amoeba-mysql-binary-2.1.0-RC...

Mysql数据库的压力  lwei_998

2012-03-05 17:55:21

阅读数:8301

python 操作数据库 OperationalError: (2006, 'MySQL server has gone away') 解决方法

用python连接mysql数据库时有时会提示OperationalError: (2006, 'MySQL server has gone away')的错误,其原因主要是python与数据库的连接...

Mysql数据库的压力  whw1874

2013-09-02 19:16:34

阅读数:9913

[django1.6]跑批任务错误(2006, 'MySQL server has gone away')

有个django的定时任务,调用django的orm来对数据库进行数据处理。  在交互环境下直接启动pyhton脚本没有问题,放在定时任务中时候,总是出现 (2006, 'MySQL server h...

Mysql数据库的压力  lzz957748332

2014-11-25 13:45:02

阅读数:5734

pymysql.err.operationalerror: (2006, "MySQL server has gone away (ConnectionResetError(10054, '远程主机强

错误:pymysql.err.operationalerror: (2006, "MySQL server has gone away (ConnectionResetError(10054...

Mysql数据库的压力  u013764485

2018-05-11 09:29:42

阅读数:143

_mysql_exceptions.OperationalError: **(2002, "Can't connect to local MySQL server through socket '/v

在linux下安装django的时候,python manage.py syncdb 报错, Validating models... Unhandled exception in threa...

Mysql数据库的压力  quanliyadan

2013-09-12 17:14:39

阅读数:3913

Django1.6报错 2006 mysql server has gone away解决方法

最近在开发一个django项目,后面需要从mysql数据库中获取大量数据,使用django自带的模板系统真是方便,同时操作简化了很多,但是由于数据量太大,导致每次获取数据都慢的要死,后来想了个办法,做...

Mysql数据库的压力  guowei11264

2015-04-09 14:31:52

阅读数:282

django操作mysql时django.db.utils.OperationalError: (2003, "Can't connect to MySQL server")错误的解决办法

错误描述 django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)"...

Mysql数据库的压力  xxm524

2015-08-08 17:29:23

阅读数:9242

django疑难杂症

1.这个问题折磨我很久了(用models中定义的class访问其他业务创建的没有主键的table都有这问题) def testRawSql(uid): from boosencms.sina...

Mysql数据库的压力  xiarendeniao

2012-05-26 15:18:58

阅读数:7801

mysql出现ERROR : 2006, 'MySQL server has gone away'

使用Navicat运行SQL文件导入数据库时出现“ MySQL server has gone away”。 原因:SQL语句过大或者语句中含有BLOB或者longblob字段,超出了默认允许最大的...

Mysql数据库的压力  shiyong1949

2015-07-27 15:36:52

阅读数:2150

个人资料

Mysql数据库的压力

win_turn

关注

原创

98

粉丝

80

喜欢

165

评论

56

等级:

 

访问:

 

61万+

积分:

 

4493

排名:

 

8794

勋章:

归档

展开

热门文章

最新评论

联系我们

Mysql数据库的压力

请扫描二维码联系客服

webmaster@csdn.net

400-660-0108

QQ客服 客服论坛

关于招聘广告服务 网站地图

©2018 CSDN版权所有 京ICP证09002463号

百度提供支持

经营性网站备案信息

网络110报警服务

中国互联网举报中心

北京互联网违法和不良信息举报中心

登录

注册

关闭

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这