Mysql导入sql文件可能出现的问题

Mysql导入sql文件可能出现的问题

1、可能出现的错误

本地导入sql文件时,出现‘MySQL server has gone away‘的错误

2、问题分析:

‘MySQL server has gone away‘的问题意思就是指clientMySQL server之间的链接断开了。造成这样的原因一般是sql操作的时间过长,或者是传送的数据太大。mysql根据配置文件会限制server接受的数据包大小。有时候大量数据的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。

3、解决办法:

查看目前配置:show VARIABLES like ‘%max_allowed_packet%‘;

 Mysql导入sql文件可能出现的问题

以上说明目前的配置是:1M1024*1024

4、修改方法

1修改配置文件(永久生效,需要重启才能生效

编辑mysql的配置文件my.ini或者my.cnf(不同环境,mysql配置文件的后缀名可能不同)

max_allowed_packet = 20M(最大可输入256M即256*1024*1024)

2)命令行修改 (临时生效,好处是不用重启mysql,下次重启失效)

mysql 命令行中运行

set  global max_allowed_packet = 20M(最大可输入256M),然后退出命令行,重启mysql服务,再进入。

在命令行下改配置项的时候使用set global或者set session,设置完查看如果不生效只需退出命令行重新进入。

3)有时如果文件太大,需要配置这三项:

interactive_timeout = 120

wait_timeout = 120

max_allowed_packet = 32M