批量插入数据方案

之前有过从日志拉去70w条数据到数据,insert到数据库,结果跑了好几个小时,这里使用mysql另一套方案插入数据

 我们采用load data infile方案,官方文档说这个插入数据方案速度要比insert速度快几十倍,有兴许的同学可以尝试下,下面我给出具体的操作:
 样本文件,可以假定是通过shell脚本从日志拉取文件输出到txt中,当然,也可以其他方案拿到的数据。


image.png

记录好他的位置


image.png

我们可以在服务器新建一张test表


image.png

如图为空数据
运行

load data local infile "C:\\Users\\Administrator\\Desktop\\aa.txt" ignore into table liuqs.test fields terminated by ','  enclosed by '"'  lines terminated by '\r\n' (id,num);
image.png

我们就可以看到数据插入进数据库了


image.png

我们这里对 load data local infile "C:\Users\Administrator\Desktop\aa.txt" ignore into table liuqs.test fields terminated by ',' enclosed by '"' lines terminated by '\r\n' (id,num);
解析下


image.png

这块前边为本地样本文件位置,后边是远程库的表名

terminated 是以某个符号为字段分隔


image.png

这里是以,为单位,则第一行是两个字段数据
enclosed by '"'这个是表示用某个字符包括字段值,就是处理"111","222",这里省略掉也可以,大家可以试下这种玩法。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容