方法一:

找到服务器mysql安装目录下的my.ini(linux系统下为my.cnf)配置文件,加入以下代码:


max_allowed_packet=500M
wait_timeout=288000
interactive_timeout = 288000

三个参数注释如下:

max_allowed_packet是mysql允许最大的数据包,也就是你发送的请求;

wait_timeout是等待的最长时间,这个值大家可以自定义,但如果时间太短的话,超时后就会现了MySQL server has gone away #2006错误。

max_allowed_packet参数的作用是,用来控制其通信缓冲区的最大长度

方法二:

如果你不方便登陆到服务器上,也可以按照这个方法修改,我是因为服务器上安装的是mysql5.6找了半天没找到my.ini文件,所以尝试了下面的方法,发现也可以解决这个问题。

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

汉化版在菜单中,工具–>服务器监控–>在左侧数据库连接列表前勾选要操作的数据库连接–>在右侧变量中找到max_allowed_packet、wait_timeout、interactive_timeout这三个值,分别将其值改大。