解决 MySQL server has gone away

来源:互联网 发布:淘宝店铺一钻要卖多少 编辑:程序博客网 时间:2024/05/21 08:36

导致 MySQL server has gone away 问题出现的最常见原因是服务超时跟连接已关闭。

默认情况下,当没有进行任何操作,MySQL 服务会在 8 小时之后关闭,通过在启动 mysqld 时设置 wait_timeout 变量可以改变这个时间限制,参考 “Server System Variables”。

我遇到这个问题是因为执行 sql 文件时,数据量过大的原因。这时候需要增大执行量,在启动 mysqld 时设置 max_allowed_packet ,默认是 1M

mysqld --max_allowed_packet=16M

也可以在配置文件如 my.ini 中的 [mysqld] 部分中添加

max_allowed_packet=16M

导致这个问题的原因有很多,比如

  • 正在运行的线程被结束
  • 尝试在关闭连接后进行查询操作
  • 客户端 TCP/IP 连接超时

参考 官方文档 B.5.2.9 MySQL server has gone away

原创粉丝点击