ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

导入SQL文件到MySQL报错 - 2006 - MySQL server has gone away

2020-01-08 10:04:53  阅读:399  来源: 互联网

标签:gone Err max MySQL packet server 报错 allowed


从dev环境导出了一个大小为57M的sql文件,使用Navicat导入到一半的时候,报出下面的错误:

[Err] 2006 - MySQL server has gone away
[Err] ...
[Msg] Finished - Unsuccessfully
--------------------------------------------------

然后接着查看了MySQL的console信息:

2020-01-08T01:29:12.787613Z 9 [Note] Aborted connection 9 to db: 'testdbdev' user: 'hecg' host: 'localhost' (Got a packet bigger than 'max_allowed_packet' bytes)

意思是我们导入时候发给MySQL Server的数据包的大小超过了默认的大小,如果要解决这个问题,手动在 my.ini 文件中设置 max_allowed_packet 的大小即可:

[mysqld]
......
# 解决 [Err] 2006 - MySQL server has gone away
max_allowed_packet=128M

解决问题后,接着去MySQL官方参考手册找到了这部分内容 - 数据包太大

  • mysql客户端程序,则其默认 max_allowed_packet变量为16MB,如需要设置更大的值,可以在启动的时候指定参数:

    • mysql --max_allowed_packet=32M
  • mysql服务器的默认 max_allowed_packet值为64MB,如需要设置更大的值,同样也可以指定参数:

    • mysqld --max_allowed_packet=128M
  • 对于服务器端,也可以在配置文件指定,即最上面的方法:在 my.ini 中设置 max_allowed_packet

    [mysqld]
    max_allowed_packet=128M

标签:gone,Err,max,MySQL,packet,server,报错,allowed
来源: https://www.cnblogs.com/HeCG95/p/12165028.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有