Oracle快速导入数据工具
2017-09-20 22:29
399 查看
sqlldr是oracle自带的快速导入批量数据的工具,常用于性能测试。考虑手工构造控制文件较为繁琐,因此使用脚本完成批量数据的自动导入。
选项介绍
控制文件格式
1、从USER_TAB_COLUMNS表中获取输入的欲导入数据标的表结构属性(列名和类型);
2、对DATE和TIMESTAMP类型进行转换,完成sqlldr要求的控制文件格式。
3、调用sqlldr命令执行自动导入数据。
2、登录oracle用户,执行chmod +x loadOradata.sh赋可执行权限。
3、执行./loadOradata.sh 数据库名/数据库密码 待导入的表名 构造生成的数据文件。
说明:建议在导入数据前先备份并清理待导入的表。原因是sqlldr命令的direct=True,,可能会由于存在重复数据导致索引失效。
基本知识
sqlldr命令语法sqlldr dbname/dbpassword@oracle_sid control=control.ctl log=sqlldr.log bad=sqlldr.bad
选项介绍
1、control 控制文件:包含导入数据和表的信息 2、log 日志文件:导入过程中的日志记录 3、bad 失败文件:导入失败的数据记录 4、rows 每次提交记录数 5、bindsize 每次提交记录的缓冲区大小 6、direct 使用直接路径导入,默认为false 7、parallel 并行导入
控制文件格式
load data infile 'datafile' append into table tablename fields terminated by '|' ( col1, col2 )
设计思路
核心是创建sqlldr导入使用的控制文件1、从USER_TAB_COLUMNS表中获取输入的欲导入数据标的表结构属性(列名和类型);
2、对DATE和TIMESTAMP类型进行转换,完成sqlldr要求的控制文件格式。
3、调用sqlldr命令执行自动导入数据。
脚本使用
1、下载代码:loadOradata.sh,上传到oracle用户任意目录下。2、登录oracle用户,执行chmod +x loadOradata.sh赋可执行权限。
3、执行./loadOradata.sh 数据库名/数据库密码 待导入的表名 构造生成的数据文件。
说明:建议在导入数据前先备份并清理待导入的表。原因是sqlldr命令的direct=True,,可能会由于存在重复数据导致索引失效。
相关文章推荐
- ORACLE 快速批量导入文本数据到数据库(sqlldr工具)方法与分析
- oracle如何快速导入导出文本格式数据
- 通过Sqoop工具将Oracle数据导入到HBase
- oracle下的sqlldr命令使用方法(sqlldr工具的使用(批量导入数据))
- 使用Ora2Pg工具把数据从Oracle导入到PostgreSQL
- Oracle中用exp/imp命令快速导入导出数据
- oracle下的sqlldr命令使用方法(sqlldr工具的使用(批量导入数据))
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- 在pl/sql中使用exp/imp工具实现oracle数据导出/导入
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- 在pl/sql中使用exp/imp工具实现oracle数据导出/导入
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- Oracle中用exp/imp命令快速导入导出数据(整理)
- oracle12c:通过oracle客户端工具配置tns,并使用sqlldr进行批量导入数据
- 批量快速的导入导出Oracle的数据(spool缓冲池、java实现)
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- 批量快速的导入导出Oracle的数据
- Oracle Imp and Exp (导入和导出) 数据 工具使用
- oracle批量数据导入工具 sqlldr
- Oracle中用exp/imp命令快速导入导出数据