1. 问题描述:
往MySQL批量插入数据,一次插入六万行数据,大约是一个6M的json文件,然后报错 2006, 'MySQL server has gone away'
解决方法:
1. 执行命令
show global variables like 'max_allowed_packet';
2. 原因是 max_allowed_packet默认值是4M,在导入数据的时候,如果文件大于4M了,就会抛出这个错误的。
3. 解决办法是:
1. 修改允许最大的文件是 40M
set GLOBAL max_allowed_packet = 41943040
2.
在my.cnf文件中添加或者修改以下变量:
max_allowed_packet = 40M(也可以设置自己需要的大小)
max_allowed_packet参数的作用是,用来控制其通信缓冲区的最大长度。