MySQL 文件导入时“server has gone away” 问题解决

 

      MySQL 大文件数据导入时,一般会出现 “server has gone away” 问题,导致导入数据失败。这是由于MySQL会根据配置信息来限制server接受的数据包大小,过大的插入和更新操作,会被max_allowed_packet 参数所限制。

      查看参数信息:

 

show VARIABLES like '%max_allowed_packet%';

    +--------------------+---------+

     | Variable_name      | Value   |

+--------------------+---------+

| max_allowed_packet | 1048576 |

+--------------------+---------+

   目前为:1048576 = 1024*1024 = 1M

 

 

修改方法

1.

可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 500M

如果找不到my.cnf可以通过

mysql --help | grep my.cnf

去寻找my.cnf文件。

2.

进入mysql server

在mysql 命令行中运行

set global max_allowed_packet = 500*1024*1024;

然后关闭掉这此mysql server链接,再进入。

show VARIABLES like '%max_allowed_packet%';

查看下max_allowed_packet是否编辑成功

 

你可能感兴趣的:(mysql)