导入大文件的 SQL 语句(大约 100 多 M)时,会提示 “2006 - MySQL server has gone away” 的错误。
1 分析
原来 MySQL 对于所接收的数据包是有一个大小限制的。默认值太小了(只有几 M ),当然很快就不够用啦。
2 解决
在 my.ini 文件中(MySQL 的安装目录下,如果不创建就新建一个),新增以下设置:
max_allowed_packet=500M
max_allowed_packet 要根据实际的服务器情况进行配置哦。
完整的 my.ini 文件配置如下:
[client]
port=3306
[mysqld]
basedir =C:\Program Files\mysql-5.6.24-winx64
datadir =C:\Program Files\mysql-5.6.24-winx64\data
port=3306
character-set-server=utf8
max_allowed_packet=500M
wait_timeout=288000
interactive_timeout = 288000
[mysql]
default-character-set=utf8