【问题标题】:MySQL 5.5 : "Got an error reading communication packets"MySQL 5.5:“读取通信数据包时出错”
【发布时间】:2015-01-27 17:26:09
【问题描述】:

我刚刚将 MySQL 从 5.1 升级到 5.5

我修复了一些运行 mysql_upgrade 的问题,并更改了一些已弃用的配置...

我还更新了 PHP,从 5.3.3-75.3.29-1

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


1.客户端* - PHP 警告

警告:数据包乱序。预计 1 收到 0。数据包大小=1 in /home/www/www.mywebsite.com/shared/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php 第 694 行

2。客户端* - PHP 警告

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

3.服务器* - MySQL 警告:

150127 17:25:15 [警告] 与 db 的连接 309 已中止: “my_database”用户:“root”主机:“127.0.0.1”(出现错误 读取通讯包)

4.客户端* - PHP 错误

PDOStatement::execute() [pdostatement.execute]: MySQL 服务器 已经离开 /home/www/www.mywebsite.com/shared/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php 第 694 行

*NB:我所说的“客户端”是 PHP 应用程序,而“服务器”是 MySQL 服务器,即使它们都在同一个 localhost 服务器上。


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

但是当我搜索这个错误时,我找不到很多答案,而且它们大多数时候与我的问题无关:我使用 Doctrine 作为抽象,所以我不编写任何查询或获取任何结果我。另外,它的值几乎与我不同,但在我的情况下 我总是得到这些值(“预期 1 收到 0。数据包大小=1强>")。

最接近的结果是this MySQL bug report,但是“一个多月没有为这个错误提供任何反馈,所以它是 被自动暂停”...

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

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

任何帮助将不胜感激!

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


更新

我从我的 PHP 客户端中隔离了一个反复失败的 SQL 查询。当我使用 MySQL Workbench 从本地执行时,它的效果完全相同(使用 MySQL server has gone away 消息关闭连接)。当我从sql 命令行执行此操作时,它也执行相同操作。然后我从服务器主机上的sql 命令行执行它,它成功了。但是过了一段时间,当我从 Workbench 再次尝试/不管它工作时......所以看起来那些“损坏的数据包”被缓存并在一段时间后消失了。

【问题讨论】:

    标签: mysql mysql-5.5


    【解决方案1】:

    谢谢,我解决了这个问题: 重置查询缓存; 刷新查询缓存;

    【讨论】:

    • 不能说这是否能解决我的问题,我不再使用这个 MySQL 实例了......但是感谢您的回答,这可能对其他人有所帮助!
    • 没有帮助 mariadb 10.3.29。
    猜你喜欢
    • 2011-06-26
    • 2018-08-03
    • 2022-10-05
    • 1970-01-01
    • 1970-01-01
    • 2020-02-04
    • 2019-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多