当插入数据的sql语句太大的时候,会报Error Code : 2006 MySQL server has gone away,意思就是 max_allowed_packet (MySQL的一个参数==>通信缓冲区)设置的值不够大,改一下就可以。
在window系统中,在mysql的安装路径下,找到my.ini,查找,看看有没有
max_allowed_packet 配置相关的东西,如果没有的话,在配置文件尾部添加上这个配置.
在linux下,从/usr/share/mysql里面找到my-xxx.cnf文件,复制到/etc下改名为my.cnf, xxx可能是small, medium, large, huge ...根据要求更改。
在my.cnf文件中,改变其默认的配置:
保存文件后,重启mySql服务.
还有二种可能就不一一列举了,可以去这个网站上看看,附加上链接.
[u][size=medium]http://www.shenmiguo.com/archives/2009/270_mysql-server-has-gone-away.html[/size][/u]
在window系统中,在mysql的安装路径下,找到my.ini,查找,看看有没有
max_allowed_packet 配置相关的东西,如果没有的话,在配置文件尾部添加上这个配置.
max_allowed_packet = 16M
一般情况下 16M就够了。我导入了23W条数据么有问题。
在linux下,从/usr/share/mysql里面找到my-xxx.cnf文件,复制到/etc下改名为my.cnf, xxx可能是small, medium, large, huge ...根据要求更改。
cp /usr/share/mysql/my-xxx.cnf /etc/my.cnf
在my.cnf文件中,改变其默认的配置:
max_allowed_packet = 1M
改成
max_allowed_packet = 16M
保存文件后,重启mySql服务.
还有二种可能就不一一列举了,可以去这个网站上看看,附加上链接.
[u][size=medium]http://www.shenmiguo.com/archives/2009/270_mysql-server-has-gone-away.html[/size][/u]