MySQL5.5:“;读取通信数据包时出错“;

MySQL5.5:“;读取通信数据包时出错“;,mysql,mysql-5.5,Mysql,Mysql 5.5,我刚刚将MySQL从5.1升级到5.5 我修复了运行mysql\u升级和更改一些不推荐的配置时出现的一些问题 我还将PHP从5.3.3-7更新为5.3.29-1 但是,从那以后,我遇到了一个新的问题(总是按此顺序抛出): 1。客户端*-PHP警告 警告:数据包出现故障。预期1收到0。数据包大小=1英寸 /home/www/www.mywebsite.com/shared/vendor/doctor/dbal/lib/doctor/dbal/Connection.php 第694行 2。客户端*

我刚刚将MySQL从5.1升级到5.5

我修复了运行
mysql\u升级
和更改一些不推荐的配置时出现的一些问题

我还将PHP从
5.3.3-7
更新为
5.3.29-1

但是,从那以后,我遇到了一个新的问题(总是按此顺序抛出):


1。客户端*-PHP警告

警告:数据包出现故障。预期1收到0。数据包大小=1英寸 /home/www/www.mywebsite.com/shared/vendor/doctor/dbal/lib/doctor/dbal/Connection.php 第694行

2。客户端*-PHP警告

警告:PDOStatement::execute()[PDOStatement.execute]:读取错误 中的结果集标题 /home/www/www.mywebsite.com/shared/vendor/doctor/dbal/lib/doctor/dbal/Connection.php 第694行

3。服务器*-MySQL警告:

150127 17:25:15[警告]中止309到db的连接: “my_database”用户:“root”主机:“127.0.0.1”(出错 读取通信数据包

4。客户端*-PHP错误

PDOStatement::execute()[PDOStatement.execute]:MySQL服务器 已经消失了 /home/www/www.mywebsite.com/shared/vendor/doctor/dbal/lib/doctor/dbal/Connection.php 第694行

*注意:我称之为“客户端”的是PHP应用程序,“服务器”是MySQL服务器,即使它们都在同一台本地主机服务器上


因此,显然,所有这些问题的根源是第一个:“数据包无序”

但当我搜索这个错误时,我找不到很多答案,而且大多数情况下,这些答案与我的问题无关:我使用条令作为抽象,所以我自己不编写任何查询或获取任何结果。另外,它几乎从来没有和我一样的值,但在我的例子中,我总是得到那些值(“预期1收到0。数据包大小=1”)

最接近的结果是,但是“一个多月来没有对此错误提供反馈,所以是这样 自动暂停“

另外,一些“2.”错误不是由我的PHP规则代码引发的(它们不是从本地主机执行的,而是从另一个已知的外部服务执行的,可能使用一些旧的PHP代码)

因此,这可能意味着我的MySQL配置本身存在问题,但我尝试更改一些参数,但没有获得任何明显的效果(例如,有时在重新启动MySQL后需要更多的时间才能获得第一个错误)

任何帮助都将不胜感激

这是我的(我有两个MySQL实例,第二个使用复制的实例主要用于只读)。 我还用Munin检查了大部分系统资源,没有发现任何异常(例如RAM使用率很高,但由于服务器上有50Go,所以根本没有满)


更新


我从我的PHP客户机中分离出一个反复失败的SQL查询。当我从本地with MySQL Workbench执行时,它的执行方式与此完全相同(关闭了与
MySQL服务器的连接,但消息已消失)。当我从
sql
命令行执行此操作时,它也执行了相同的操作。然后,我从服务器主机上的
sql
命令行执行它,它成功了。但过了一段时间,当我再次尝试从Workbench/无论它如何工作时。。。因此,看起来这些“损坏的数据包”会在一段时间后被缓存并解除。

谢谢,我通过以下操作修复了此问题: 重置查询缓存;
刷新查询缓存

不能说这是否解决了我的问题,我不再使用这个MySQL实例了。。。但是谢谢你的回答,这可能会帮助别人!