我在办公室运行服务器来处理一些文件并将结果报告给远程MySQL服务器.
文件处理需要一些时间,并且进程在中途死亡,并出现以下错误:
2006, MySQL server has gone away
Run Code Online (Sandbox Code Playgroud)
我听说过MySQL设置,wait_timeout,但我是否需要在我办公室或远程MySQL服务器的服务器上更改它?
今天我的一个网站开始展示
Error Number: 2006 MySQL server has gone away
它是在Apache 2.2.9(Debian),PHP 5.2.6-1 + lenny3(使用CodeIgniter 1.7.1框架)和MySQL 5.0.51a下运行的低流量客户端站点.我显然对这个错误进行了重新研究,但是所有可能的解决方案都意味着有大量的查询可能会超时并重置连接或达到数据包限制.但是,情况并非如此,它是使用最简单的查询处理的小型数据库.为了确保这一点,我编写了几个查询来返回一行,仍然是同样的错误.
数据库凭证很好,我甚至可以直接登录到mysql,运行一些网站的查询并立即获得正确的数据.在同一台服务器上有几个其他站点和数据库的连接,更大的站点,它们都没有问题.
我试过了:
mysql.connect_timeout和default_socket_timeoutPHPmax_allowed_packetMySQL新:
wait_timeout和connect_timeout在MySQL中更新:
它似乎与我的脚本的执行时间有关:它使用Facebook PHP客户端检索一些信息,这个调用似乎今天随机失败,所以我要么没有来自Facebook的数据或MySQL错误.但令我惊讶的是,没有一个给定的解决方案似乎处理超时.
有任何想法吗?感谢您的时间!