【问题标题】:MYSQL server has gone awayMYSQL 服务器已经消失
【发布时间】:2010-12-20 13:59:17
【问题描述】:

我正在为我的 Web 应用程序使用 WAMP 服务器。有时我会看到这个一般错误:2006 MySQL server has gone away'

我正在通过 PDO PHP 更新 MySQL 数据库。

有什么建议可以避免这种情况吗?

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    尝试调试问题。这可能是由许多事情引起的。常见的有:

    • MySQL 服务器崩溃
    • 客户端和服务器之间的通信问题
    • 以非预期方式滥用客户端库,可能是乱序发送命令或通过套接字发送垃圾。

    我上次使用它时,PDO 驱动程序非常不稳定,可以创建最后一个案例。

    如果生产中可能出现通信问题,您的应用程序应重新连接并重试事务。

    【讨论】:

      【解决方案2】:

      来自 php 的 mysql_connect 有一个参数名称 client_flag。如果你的脚本持续时间超过 mysql server wait_timeout,你需要设置这个

      MYSQL_CLIENT_INTERACTIVE 在关闭连接之前允许 interactive_timeout 秒(而不是 wait_timeout )不活动。

      【讨论】:

        【解决方案3】:

        一种可能性:

        打开你的mysql/bin/my.ini,修改

        max_allowed_packet = 1M 在 [mysqld] 和 [mysqldump] 下都有

        max_allowed_packet = 100M
        

        【讨论】:

        • 谢谢。修复了 CiviCRM 的一个问题。
        猜你喜欢
        • 2011-06-07
        • 2015-01-15
        • 2016-03-06
        • 2017-04-02
        • 2011-11-09
        • 2014-02-12
        • 2015-04-05
        • 1970-01-01
        相关资源
        最近更新 更多