ORACLE 使用sqluldr2和sqlldr进行导入导出

时间:2024-04-07 11:34:44
oracle数据导出工具sqluldr2可以将数据以csv、txt等格式导出,适用于大批量数据的导出,导出速度非常快。导出后可以使用oracle loader工具将数据导入。
下载完sqluldr2,文件夹内容如下:
sqluldr2_linux32_10204.bin和sqluldr2_linux64_10204.bin分别适用于与linux32位和linux64位操作系统;
sqluldr2.exe用于windows平台。
ORACLE 使用sqluldr2和sqlldr进行导入导出

以下是导出导入过程:
1、首先将sqluldr2.exe复制到到$ORACLE_HOME的bin目录,即可开始使用:

2、查看help帮助:
ORACLE 使用sqluldr2和sqlldr进行导入导出

3、执行导出数据命令:
sqluldr2.exe USER=hh/[email protected] QUERY="select /*+ parallel(2) */  *from hh.ent_person" table=ent_person head=yes FILE=C:\ent_person.txt
p.s. head=yes表示第一行为表头;并且query也可以写入一个文件然后使用sql选项。
默认分隔字符为逗号,如果列中有特殊字符,可使用field选项指定新的分隔字符。
ORACLE 使用sqluldr2和sqlldr进行导入导出

4、数据已经导入到C:\ent_person.txt,几十万数据秒速。

5、使用sqlldr进行导入,首先找到$ORACLE_HOME的bin目录生成的ctl文件,当sqluldr2有table选项会默认生成ctl文件,以用于导入。
ORACLE 使用sqluldr2和sqlldr进行导入导出

6、将数据加载到数据库中:
sqlldr jms/[email protected] control=ent_person_sqlldr.ctl log=ent_person_sqlldr.log bad=ent_person_sqlldr_bad.log skip=1  errors=5000 rows=5000 bindsize=335542
p.s. skip=1表示跳过第一行,从第二行开始导入。
ORACLE 使用sqluldr2和sqlldr进行导入导出

7、最后查看log是否有数据没有导入:
ORACLE 使用sqluldr2和sqlldr进行导入导出

转自:http://blog.itpub.net/26770925/viewspace-1379914/