- 浏览: 7862874 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
http://dbahacker.com/mysql/%E9%81%AD%E9%81%87mysql-server-has-gone-away#comments
出现了MySQL server has gone away的错误,MySQL服务器端表示毫无压力。
而通过mysql客户端的连接方式mysql -hxx -uxx -pxx databasename -e xxx则毫无问题
而App服务器的netstat -a | grep 3306 | grep TIME_WAIT个数非常小,只有2个。
MySQL在连接超时这块的参数如下
root@(none) 09:24:51>show variables like '%out%';
+------------------------------+----------+
| Variable_name | Value |
+------------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| handlersocket_timeout | 300 |
| handlersocket_wrlock_timeout | 12 |
| innodb_lock_wait_timeout | 100 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 28800 |
| lock_wait_timeout | 31536000 |
| log_output | FILE |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+------------------------------+----------+
最终MM把PHP连接MySQL的连接方式从长连接改成了短连接,就再没出现了。
后来查了下资料,总结如下
1.MySQL服务器的wait_timeout参数为默认的28800秒,即8小时。该参数的意思是MySQL等待睡眠的连接的持续时间,如果超过8小时不活动,MySQL就会关闭这个连接。这个参数可以动态修改,但这个参数是session级别的,需要应用重新建立连接获取这个变量值才会生效。
2.PHP的默认php.ini里面,default_socket_timeout参数是默认60s.default_socket_timeout参数的意思是socket超时为60s。 官方解释
3.在MySQL的官方文档里面,有专门的章节介绍MySQL Server has gone away。但并没有提及到客户端本身也会有超时机制,以前曾经试过把wait_timeout设置为1年,但App还是继续出现MySQL server has gone away的错误。
4.在PHP程序里面,如果php.ini修改起来不方便,可以以下代码来尝试解决。
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
在ini_set后,可以用ini_get来验证参数设置适合符合预期。
出现了MySQL server has gone away的错误,MySQL服务器端表示毫无压力。
而通过mysql客户端的连接方式mysql -hxx -uxx -pxx databasename -e xxx则毫无问题
而App服务器的netstat -a | grep 3306 | grep TIME_WAIT个数非常小,只有2个。
MySQL在连接超时这块的参数如下
root@(none) 09:24:51>show variables like '%out%';
+------------------------------+----------+
| Variable_name | Value |
+------------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| handlersocket_timeout | 300 |
| handlersocket_wrlock_timeout | 12 |
| innodb_lock_wait_timeout | 100 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 28800 |
| lock_wait_timeout | 31536000 |
| log_output | FILE |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| slave_net_timeout | 3600 |
| wait_timeout | 28800 |
+------------------------------+----------+
最终MM把PHP连接MySQL的连接方式从长连接改成了短连接,就再没出现了。
后来查了下资料,总结如下
1.MySQL服务器的wait_timeout参数为默认的28800秒,即8小时。该参数的意思是MySQL等待睡眠的连接的持续时间,如果超过8小时不活动,MySQL就会关闭这个连接。这个参数可以动态修改,但这个参数是session级别的,需要应用重新建立连接获取这个变量值才会生效。
2.PHP的默认php.ini里面,default_socket_timeout参数是默认60s.default_socket_timeout参数的意思是socket超时为60s。 官方解释
3.在MySQL的官方文档里面,有专门的章节介绍MySQL Server has gone away。但并没有提及到客户端本身也会有超时机制,以前曾经试过把wait_timeout设置为1年,但App还是继续出现MySQL server has gone away的错误。
4.在PHP程序里面,如果php.ini修改起来不方便,可以以下代码来尝试解决。
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
在ini_set后,可以用ini_get来验证参数设置适合符合预期。
发表评论
-
mybatis generator中的字段大小写生成问题
2017-10-22 19:35 11265mybatis generator插件中,如果 mysql数据 ... -
MySQL统计一个列中不同值的数量
2017-07-11 14:04 16240https://yiqiwuliao.com/post/mys ... -
mysql 1449 : The user specified as a definer ('root'@'%') does not exist 解决方法
2017-03-02 09:44 1745权限问题,授权 给 root 所有sql 权限 mysql ... -
几个不错的MYSQL 优化TIPS
2016-11-19 12:30 778图片来自http://imysql.com/的PDF分享 [ ... -
powerdesign 逆向ORACLE的坑
2016-09-27 17:08 532要注意的是,在WIN 64中,如果要用powerdesin 来 ... -
( 转)mysql中删除两条重复记录中的一条
2015-10-19 20:19 1303| id | createTime | labId | pub ... -
mysql中sql语句=,>的时候的索引设置
2015-05-02 12:27 1290在 https://www.percona.com/blog/ ... -
mysql中profile的使用
2015-04-30 11:11 2196mysql 的 sql 性能分析器主要用途是显示 sql 执行 ... -
mysql中的sql mode
2015-04-13 11:29 1121mysql sql mode小结 1 sql mode可以 ... -
PROCEDURE ANALYSE()为mysql提高性能提供建议
2015-04-02 16:37 1420procedure analyse();语法如下 select ... -
mongodb中意外退出的问题
2015-02-11 14:32 1319mongodb启动的时候,意外退出: Unclean shut ... -
mysql 5.5中保留字查询
2014-06-05 23:16 1458mysql 5.5中保留字查询 http://www.5is ... -
(转)oracle 临时表空间的增删改查
2014-03-18 12:44 1105oracle 临时表空间的增删改查 1、查看临时表空间 (d ... -
pl-sql developer安装
2014-02-07 09:16 1101一直都是机器本机上有oracle,所以装pl sql deve ... -
oracle中的nvl,nvl2等参数
2013-12-26 11:18 22501.nul函数将一个null值转换为一个实际的值。 数据类型可 ... -
Oracle中的ROWNUM rowid 以及MySQL中实现rownum功能类似的语句
2013-12-26 11:08 2333http://gong-10140.iteye.com/blo ... -
ORACLE XE版本的限制
2013-12-07 08:11 361710g中用户数据最大为4G, 11G中最大为11G,如果超出大 ... -
oracle中监控索引是否可用
2013-11-04 07:22 1046在oracle中,可以使用如下的方法监控索引是否可用: a ... -
mysql 5.6中的时间类型的新精度介绍
2013-10-28 09:33 8379留意到mysql 5.6中,可以使用select now(6) ... -
<<oracle索引技术》读书笔记1
2013-08-25 16:23 1299expert indexing in oracle datab ...
相关推荐
此文档中详细的记载了,MySQL server has gone away 问题的解决方法,希望可以帮助到你!
今天遇到类似的情景,MySQL只是冷冷的说:MySQL server has gone away。
MySQL导入sql脚本错误:2006 – MySQL server has gone away 到如一些小脚本很少报错,但最近导入一个10+M的SQL脚本,却重复报错: Error occured at:2014-03-24 11:42:24 Line no.:85 Error Code: 2006 - MySQL ...
在我们使用mysql导入大文件sql时可能会报MySQL server has gone away错误,该问题是max_allowed_packet配置的默认值设置太小,只需要相应调大该项的值之后再次导入便能成功。该项的作用是限制mysql服务端接收到的包...
主要介绍了gearman中worker常驻后台,导致MySQL server has gone away的解决方法,较为详细的分析了造成MySQL server has gone away的原因与相关的解决方法,需要的朋友可以参考下
MYSQL server has gone away 引起这个原因是不可怕的.原因是更改了系统的断开时间. mysql>show gloable variables like “%timeout%”; 进行查看 interactive_timeout 的黓认值为28800 wait_timeout 的默认值这:...
最全面的MySQL数据库的调优方法,欢迎大家下载!
若导入时报错,ERROR 2006 (HY000):MySQL server has gone away 。我们可以通过语句查看一下允许的最大包大小:show global variables like 'max_allowed_packet'; MySQL使用最大数据包站站点进行服务器和客户端...
Qt5.4下连接Mysql,QSqlDatabase: QMYSQL driver not loaded but available-附件资源
Django 自称是“最适合开发有限期的完美WEB框架”。本文参考《Django web开发指南》,快速搭建一个blog 出来,在中间涉及诸多知识点,这里不会详细说明,如果你是第一次接触Django ,本文会让你在感性上对Django有个...
解决办法是: 运行下面SQL 代码如下:USE master; GO DECLARE @SQL VARCHAR(MAX); SET @SQL=” SELECT @SQL=@SQL+’;... 您可能感兴趣的文章:MySQL server has gone away 问题的解决方法MySQL提示:The
基于tp5的swoole支持,对th5的connection进行改造,使用Swoole\Coroutine\MySQL重写了基于swoole的PDO接口,实现了mysql的数据库连接池,本地测试可用。使用时,替换thinkphp/library/think/db/Connection.php,并...
OperationalError: (2006, ‘MySQL server has gone away’) OperationalError: (2013, ‘Lost connection to MySQL server during query’) 查询mysql全局变量SHOW GLOBAL VARIABLES;可以看到wait_timeout,此变量...
ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... 这个报错信息就意味着当前的连接已经断开,需要重新建立连接。 那么,连接的时长是如何确认的? 其实,这个与interactive_...