记一次数据库 MySQL Server has gone away的解决过程

MySQL Server has gone away

问题产生?

在一次清理完 数据库表的碎片之后,并重启了Mysql实例 线上项目进行sql查询时则产生了下面的问题。 MySQL Server has gone away

在这里插入图片描述

问题排查。

  1. MySQL服务宕机了 (因为已经重启 所以排除)
  2. Mysql的链接进程被主动kill掉。(这个也排除了 因为无人操作)
  3. Mysql 链接超时 ,在某个mysql长连接的很久没有新的请求,达到了server端的timeout,被server强行关闭,此后再通过这个connection发起查询时,就会报错 server has gone away。(经过排查是属于这种)

问题分析

排查到属于第三种报错情况,因为当前项目使用的是一个基于swoole的常驻内存的框架,所以在进行mysql重启实例时,没有重启 swoole进程,导致连接是旧的然后报了 server has gone away的错误,接着我们重启了项目以后,就正常运行了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值