sqlldr批量导入导出数据测试

sqlldr是在处理大数据量的操作中建议采用的方式,它有许多性能想关的开关,能最大程度的减少redo,undo的生成,控制数据的处理方式(insert,append,replace,truncate)

因为项目需要,对比datapump性能还是不理想,所以还是希望采用sqlldr来做。个人做了简单的测试。

根据thomas kyte的介绍,并行执行路径加载时最快的方式,能够直接写只格式化的数据块,最大限度的减少redo,undo的生成。

Linux环境下sqlldr一个csv文件

sqlldr加载文件,ORA-01722: invalid number解决

Oracle sqlldr导入以回车和回车换行字符结尾的文本

sqlldr 导入乱码 Oracle客户端字符集问题

Oracle sqlldr导入数据使用默认值和提高性能的方法

先写了如下的脚本。可以动态的从某个用户的表中生成元数据。
 
sqlplus -s $1 <<EOF
 set pages 0
 col object_name format a30
 set linseize 10000
 set feedback off
 set colsep ','
 spool $2.lst
 select *from $2 ;
 spool off;
 EOF
 
运行后生成的数据大体如下。
 [ora11g@rac1 sqlldr]$ ksh spooldata.sh n1/n1 t
    370753,    10205,KU$_DOMIDX_OBJNUM_VIEW        ,VIEW
    370754,    10207,KU$_OPTION_OBJNUM_T          ,TYPE
    370755,    10208,KU$_EXPREG                    ,VIEW
    370756,    10210,SYS_YOID0000010209$          ,TYPE
    370757,    10209,KU$_OPTION_OBJNUM_VIEW        ,VIEW
    370758,    10211,KU$_OPTION_VIEW_OBJNUM_VIEW  ,VIEW
    370759,    10212,KU$_MARKER_T                  ,TYPE
    370760,    10214,SYS_YOID0000010213$          ,TYPE
    370761,    10213,KU$_MARKER_VIEW              ,VIEW
    370762,    10215,KU$_TABPROP_VIEW              ,VIEW
    370763,    10216,KU$_PFHTABPROP_VIEW          ,VIEW
    370764,    10217,KU$_REFPARTTABPROP_VIEW      ,VIEW
    370765,    10218,KU$_MVPROP_VIEW              ,VIEW
    370766,    10219,KU$_MVLPROP_VIEW              ,VIEW
    370767,    10220,KU$_TTS_VIEW                  ,VIEW
    370768,    10221,KU$_TAB_TS_VIEW              ,VIEW
    370769,    10222,KU$_TTS_IND_VIEW              ,VIEW
    370770,    10223,KU$_IND_TS_VIEW              ,VIEW
    370771,    10224,KU$_CLU_TS_VIEW              ,VIEW
 
然后准备控制文件 sqlldr.ctl,把数据从t加载到tt里面去。
 load data
 into table tt
 fields terminated by ','
 (id,object_id,object_name,object_type)
 
尝试导入:
 [ora11g@rac1 sqlldr]$ sqlldr n1/n1 control=sqlldr.ctl data=t.lst
 SQL*Loader: Release 11.2.0.3.0 - Production on Tue May 27 08:09:25 2014
 Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
 但是没有任何的反馈。
 查看自动生成的sqlldr.log
 里面有如下的错误。
 
  Column Name                  Position  Len  Term Encl Datatype
 ------------------------------ ---------- ----- ---- ---- ---------------------
 ID                                  FIRST    *  ,      CHARACTER           
 OBJECT_ID                            NEXT    *  ,      CHARACTER           
 OBJECT_NAME                          NEXT    *  ,      CHARACTER           
 OBJECT_TYPE                          NEXT    *  ,      CHARACTER           
 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8ffbeeca064581c28b55b95724fe4477.html