Navicat中MySQL server has gone away错误怎么办转载

Posted 黑加仑妞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Navicat中MySQL server has gone away错误怎么办转载相关的知识,希望对你有一定的参考价值。

转载链接:http://www.111cn.net/database/mysql/64073.htm

mysql数据库出现MySQL server has gone away错误一般是sql语句太大导致了,下面们在使用Navicat中操作数据库时提示MySQL server has gone away问题解决办法。

备份数据时,生成的sql文件比较大,当然,这个sql是包含了比较多的冗余数据。用Navicat直接导入的话,报错MySQL server has gone away。如下图所示:

解决办法

打开navicat的菜单中的tools,选择server monitor,然后在左列选择数据库,右列则点选variable表单项,寻找max_allowed_packet,将其值改大。

 

 

改好之后,再次导入备份的sql文件,一切正常。

如果还是无法解决,下面我整理了一些mysql查询中碰到MySQL server has gone away问题

找到你的mysql目录下的my.ini配置文件,加入以下代码:

max_allowed_packet=500M

wait_timeout=288000

interactive_timeout = 288000

自己看情况更改数值,我直接改很大,最后记得重启你的mysql服务

这样的话就能很好的解决MySQL server has gone away问题了。max_allowed_packet是mysql允许最大的数据包,也就是你发送的请求; wait_timeout是等待的最长时间,这个值大家可以自定义,但如果时间太短的话,超时后就会现了MySQL server has gone away #2006错误。max_allowed_packet参数的作用是,用来控制其通信缓冲区的最大长度

如果没有修改myql权限我们可以在php程序里面,如果php.ini修改起来不方便,可以以下代码来尝试解决。

ini_set(\'mysql.connect_timeout\', 300); 
 
ini_set(\'default_socket_timeout\', 300);
 
在ini_set后,可以用ini_get来验证参数设置适合符合预期。

以上是关于Navicat中MySQL server has gone away错误怎么办转载的主要内容,如果未能解决你的问题,请参考以下文章

navicat导入sql文件时报错:mysql server has gone away

导入SQL文件到MySQL报错 - 2006 - MySQL server has gone away

关于Window10+MySQL8.0导入数据遇到[ERR] 2006 - MySQL server has gone away问题的解决

关于Window10+MySQL8.0导入数据遇到[ERR] 2006 - MySQL server has gone away问题的解决

MySQL server has gone away

MySQL[Err] [Imp] 2006 - MySQL server has gone away .