sql文件导入:ERROR : (2006, ‘MySQL server has gone away’...)

前言

        mysql备份、恢复亦或迁移,对运维工作者来说,都是一项无法推脱而又不得不做的工作。

        这里我将就mysql导入sql文件时报【ERROR : (2006, ‘MySQL server has gone away’...)】这一问题进行解决。

分析及解决

        从字面上看,这玩意儿的意思就是【数据库服务丢了,或者断开连接了】

        为什么呢?十有八九是客户端与mysql服务端之间的通讯发生了问题,导致服务端拒绝或被动断开了与客户端的连接,最终使sql文件导入工作无法继续进行。

        因此,你可能需要从以下几点来判断具体原因:

        1、sql文件过大,超出mysql约定文件缓冲区大小(由此,也会引发Your SQL statement was too large错误)

        max_allowed_packet是MySQL的一个配置参数,用于控制单个查询或数据包的最大大小。

        max_allowed_packet的单位是字节(bytes)。
        通过配置文件或者动态地修改该参数,可以设置MySQL服务器允许的最大数据包大小。默认情况下,该参数的值为4MB(4 * 1024 * 1024 bytes)或其他值,你需要结合实际比较文件与它的大小,如果文件大于它,那就没办法正常导入。

        执行sql语句,看看mysql约定的文件缓冲区大小(下图是我已经调整好的100MB值,默认是4MB,也就是4194304)

show global variables like 'max_allowed_packet';

        如果你的sql文件超过4MB则可能需要更改这个默认值, 才能执行:

        通过sql暂时解决,重启mysql后失效:

set global max_allowed_packet=1024*1024*100;

         在mysql配置文件 [mysqld] 里增加max_allowed_packet属性来永久解决,这个具体数值可以自由调整

max_allowed_packet = 100M

        2、 MySQL连接超时,这个可能是网络原因,也有可能是mysql的wait_timeout配置设的太低了

        使用tcping来看看这个mysql端口是否稳定,如果出现频率较高的丢包、延时,则很有可能是网络原因

        其次可能是mysql的wait_timeout配置设置太低,下图表示mysql链接在无操作28800秒(也就是8小时)后被自动关闭,这个数值是正常的

        

        这里,你可以通过暂时更改wait_timeout属性来解决,重启mysql服务端后失效

set  global wait_timeout=86400

       在mysql配置文件 [mysqld] 里增加wait_timeout属性来永久解决

[mysqld]
wait_timeout=86400

   3、MySQL服务端主动断开(不排除服务端重启可能)

        查看mysql日志,看看是不是它有事没事会自动重启

        你也可以通过sql来看看它最新一次启动至今的时间间隔,单位是秒

 show global status like 'uptime';

        这种是小概率事件,一般不会发生

相关推荐

  1. mysql导入sql文件

    2024-01-25 18:16:02       33 阅读
  2. python3导入sql文件

    2024-01-25 18:16:02       49 阅读
  3. c# sqlite导出导入数据表 作为sql文件

    2024-01-25 18:16:02       38 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-25 18:16:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-25 18:16:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-25 18:16:02       82 阅读
  4. Python语言-面向对象

    2024-01-25 18:16:02       91 阅读

热门阅读

  1. Vue3生命周期和Vue2生命周期对比

    2024-01-25 18:16:02       60 阅读
  2. C语言之初级指针

    2024-01-25 18:16:02       59 阅读
  3. python ast 解析enum为C头文件

    2024-01-25 18:16:02       57 阅读
  4. doris安装文档翻译-标准部署(Standard deployment)

    2024-01-25 18:16:02       47 阅读
  5. webpack笔记

    2024-01-25 18:16:02       54 阅读
  6. 网络安全产品之认识漏洞扫描设备

    2024-01-25 18:16:02       69 阅读
  7. LeetCode 2765. 最长交替子数组

    2024-01-25 18:16:02       67 阅读
  8. ChatGPT在车联网的应用创新浅谈

    2024-01-25 18:16:02       62 阅读
  9. GPT帮我快速解决工作上的问题案例

    2024-01-25 18:16:02       62 阅读
  10. windows环境下设置redis在后台运行

    2024-01-25 18:16:02       63 阅读