码迷,mamicode.com
首页 > 数据库 > 详细

MySQL导入sql文件,过大导致错误

时间:2019-08-30 22:30:17      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:navicat   mys   variables   解决办法   通信   原因   set   导致   gone   

--导入sql脚本文件,报错:

Navicat 导入数据报错 --- 1153 - Got a packet bigger than ‘max_allowed_packet‘ bytes
2006 - MySQL server has gone away

--原因

查了一下,原来是MySQL默认读取执行的SQL文件最大为16M

--解决办法

今天从MySQL导入sql文件的时候发现出现错误,查看日志发现报2006 - MySQL server has gone away 错误,出现这个的原因一般是传送的数据过大,解决的办法是:

查看通信缓冲区的最大长度:

show global variables like ‘max_allowed_packet‘;

默认最大是1M,可以修改通信缓冲区的最大长度,修改为16M:

set global max_allowed_packet=1024*1024*400;

接下来重新导入,导入成功!

注:修改只对当前有效, 重启了MySQL他就还是会恢复原来的大小。如果是想永久生效,可以修改配置文件,在my.ini(windows下)或者my.cnf(linux下)加入或修改配置:

max_allowed_packet = 16M
重启MySQL服务...

 

MySQL导入sql文件,过大导致错误

标签:navicat   mys   variables   解决办法   通信   原因   set   导致   gone   

原文地址:https://www.cnblogs.com/sung1024/p/11437303.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!