navicat还原mysql备份数据时,部分表无数据

最近在使用navicat正在本地恢复数据时,发现部分表数据,百度一下,发现是由于max_allowed_packed设置过小,而insert时数据过多导致出错,修改max_allowed_packed的值即可恢复,我修改后的值为1024*1024*50。

表无数据:

navicat还原mysql备份数据时,部分表无数据_第1张图片

部分数据未同步成功:

navicat还原mysql备份数据时,部分表无数据_第2张图片

 

在mysql中执行sql命令修改。

程序中将数据分批插入。

在这里主要说一下第1和2种方法:

在my.ini(my.cnf)文件中添加或者修改以下变量:

max_allowed_packet = 50M

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

命令:

//查看当前max_allowed_packet的大小

show global variables like 'max_allowed_packet';

//修改max_allowed_packet的大小

 set global max_allowed_packet=1024*1024*50;

你可能感兴趣的:(mysql)