我们在做数据备份时,如果一个表中的数据很大,通常会把这个表的数据写成一个很大的insert into语句,导致插入语句超过数据库缓冲区的大小,解决办法通常是加大缓冲区的容量,当然也可以拆分insert into语句,参考工具是SplitInsert;
加大缓冲区容量的办法:
修改my.cnf配置文件:
[mysqld]
max_allowed_packet = 50M
大小根据实际情况来定,我曾看过一个表的插入语句有30M左右,所以这里设置为50M。
我们在做数据备份时,如果一个表中的数据很大,通常会把这个表的数据写成一个很大的insert into语句,导致插入语句超过数据库缓冲区的大小,解决办法通常是加大缓冲区的容量,当然也可以拆分insert into语句,参考工具是SplitInsert;
加大缓冲区容量的办法:
修改my.cnf配置文件:
[mysqld]
max_allowed_packet = 50M
大小根据实际情况来定,我曾看过一个表的插入语句有30M左右,所以这里设置为50M。