运行处理文件和报告的服务器时将结果发送到远程 MySQL 服务器时,用户可能会遇到错误“2006,MySQL 服务器已经消失”。这表明与服务器的连接已意外提前终止。
与常见假设相反,该问题通常与 wait_timeout 设置无关。相反,解决方案在于另一个 MySQL 参数:max_allowed_packet。
默认的 max_allowed_packet 设置,通常会低至4MB(4194304 字节)可能不足以处理大型数据包。当数据负载超过此限制时,服务器会断开连接,从而导致“MySQL 服务器已消失”错误。
要解决此问题,请增加 /etc/my.cnf 文件的 [mysqld] 部分中的 max_allowed_packet 值。服务器上的 cnf 配置文件。设置为 8 或 16MB 通常就足够了。
例如:
或者,您可以使用以下命令动态设置参数(重新启动后更改将丢失):
以上是为什么我的 MySQL 连接失败并出现错误 2006('MySQL 服务器已消失”)以及如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!