用mysqldump导出一个数据库,其中有两个表数据有20多W,执行导入的时候老是保内存溢出,试验了多种方法,始终不行,后来看mysql的服务器的配置,发现里面没有啥设置,于是在里面增加一个max_allowed_packet=32M配置,然后重新导入时候没有报错,数据完全导入了。 后来发现mysqldump导出的数据默认是–complete-insert,及把所有的值都写在一行,估计插入的时候会全部读入内存从而导致内存溢出,然后可以通过–extended-insert=false(默认为true)来设置每一条记录都是一个insert语句,但是这样速度上肯定不及前面那种。 (责任编辑:IT) |