Oracle批量导入文本文件快速的方法(sqlldr实现)
程序员文章站
2022-05-23 18:23:15
前言
最近做项目的时候需要导入一批3000多万条的poi数据到oracle数据库,简单的插入导入速度太慢,使用sqlldr 批量导入3000多万条数据花了20分钟左右...
前言
最近做项目的时候需要导入一批3000多万条的poi数据到oracle数据库,简单的插入导入速度太慢,使用sqlldr 批量导入3000多万条数据花了20分钟左右,速度还可以,现在分享给大家,具体方法如下:
1.新建导入控制文件 input.ctl,文件内容如下:
load data characterset utf8 infile 'h:\poi\baidu.txt' append into table tbl_poi_baidu fields terminated by "," optionally enclosed by '""' trailing nullcols (poi_name,class_all,addr,phone,tel,longitude,latitude,city,citycode,province,district,street,streenumber,class_1,class_2,class_3,class_4)
2.命令行窗口输入:
sqlldr userid=sde/sde control=input.ctl log=log.out discard=discard.txt errors=1000000
注意:文件字符集要与oracle服务等字符集一致,建议文件另存为utf-8无bom,导入文件内添加 characterset utf8
,解决oracle数据导入中文乱码:export nls_lang='simplified chinese_china.al32utf8'
dos环境下文件快速合并: copy *.csv newfile.txt
总结
以上就是这篇文章的全部内容,希望能对大家学习或者使用oracle数据库有所帮助,如有有疑问大家可以留言交流。
上一篇: Web应用单点压力测试调优-第5季