解决MySQL server has gone away
2019独角兽企业重金招聘Python工程师标准>>>
针对MySQL server has gone away,大概浏览了一下,主要可能是因为以下几种原因:
一种可能是发送的SQL语句太长,以致超过了max_allowed_packet的大小,如果是这种原因,你只要修改my.cnf,加大max_allowed_packet的值即可。
还有一种可能是因为某些原因导致超时,比如说程序中获取数据库连接时采用了Singleton的做法,虽然多次连接数据库,但其实使用的都是同一个连接,而且程序中某两次操作数据库的间隔时间超过了wait_timeout(SHOW STATUS能看到此设置),那么就可能出现问题。最简单的处理方式就是把wait_timeout改大,当然你也可以在程序里时不时顺手mysql_ping()一下,这样MySQL就知道它不是一个人在战斗。
解决MySQL server has gone away
1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。最常见的就是采集或者新旧数据转化。
解决方案:
在my.cnf文件中添加或者修改以下两个变量:
wait_timeout=2880000
interactive_timeout = 2880000
关于两个变量的具体说明可以google或者看官方手册。如果不能修改my.cnf,则可以在连接数据库的时候设置CLIENT_INTERACTIVE,比如:
sql = "set interactive_timeout=24*3600";
mysql_real_query(...)
2、执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。比如,图片数据的处理
解决方案:
在my.cnf文件中添加或者修改以下变量:
max_allowed_packet = 10M(也可以设置自己需要的大小)
max_allowed_packet 参数的作用是,用来控制其通信缓冲区的最大长度。
转载于:https://my.oschina.net/zhangdapeng89/blog/59040
解决MySQL server has gone away相关推荐
- 解决MySQL Server Logs不能正常查看的问题
我安装完了MySQL社区版之后,在Workbench Centra的server Administration中点击Manage Instance: 输入Root的用户名和密码,访问服务器实例loca ...
- mysql之解决“mysql server has gone away“的问题
1) 临时修改 1. 在terminal中输入: mysql 2.查看当前的timeout设置: show variables like '%timeout%':(其中有用的是: interactiv ...
- MySQL server has gone away 问题的解决方法
mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了. 造成这样的原因一般是s ...
- 解决Lost connection to MySQL server during query错误方法
昨天使用Navicat for MySQL导入MySQL数据库的时候,出现了一个严重的错误,Lost connection to MySQL server during query,字面意思就是在查询 ...
- 【mysql错误】MySQL server has gone away 问题的解决方法
mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了. 造成这样的原因一般是s ...
- 如何解决MySQL连接超时关闭
最近做网站有一个站要用到WEB网页采集器功能,当一个PHP脚本在请求URL的时候,可能这个被请求的网页非常慢慢,超过了mysql的 wait-timeout时间,然后当网页内容被抓回来后,准备插入到M ...
- MySQL连接问题【如何解决MySQL连接超时关闭】
--MySQL连接问题[如何解决MySQL连接超时关闭] ------------------------------------------------转载 最近做网站有一个站要用到WEB网页采集器 ...
- navicat mysql server has gone away_Navicat中MySQL server has gone away错误怎么办【转载】
打开navicat的菜单中的tools,选择server monitor,然后在左列选择数据库,右列则点选variable表单项,寻找max_allowed_packet,将其值改大. 改好之后,再次 ...
- (2006, ‘MySQL server has gone away‘) 原因和解决方案
mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了. 首选分析给出可能出现的 ...
最新文章
- MySQL修改和查看表类型
- mvn本地生成jar包放在mvn项目依赖(将jar包传到本地仓库)
- python的learn_python_learn1
- Linux下各种常见环境变量的配置
- 多用户企业文件管理系统源码_固定资产管理系统的细节分析
- WordPress主题LensNews模板源码,2.2版本多功能新闻积分商城主题
- java经典密码算法,浅析五种最常用的Java加密算法,以后可以直接拿来用了
- VB.NET 中图形旋转任意角度 [ZT]
- paip.python3 的类使用跟python2 的不同之处
- 翻译:web制作、开发人员需知的Web缓存知识
- STM32--舵机(SG90)
- Android Expandable List View
- “马太效应”与“二八法则”
- stm32使用cubemx生成HAL库工程驱动mlx90614
- 【Android Studio】如果你不管怎么折腾都提示Minimum supported Gradle version is 7.0.2. Current version is 6.8,请看这里
- 云服务器分割成虚拟主机销售,IDC行业为何兴起云虚拟主机业务
- [问题已处理]-helm提示kubernetes configuration file is group-readable
- 常见的嵌入式微处理器(Micro Processor Unit,MPU)
- UC浏览器怎么将mht转HTML,极速模式下的MHT
- UE4导入PMX模型记录