oracle数据导出工具sqluldr2安装及使用

sqluldr2是一款Oracle数据快速导出工具,包含32、64位程序,sqluldr2在大数据量导出方面速度超快,能导出亿级数据为excel文件,另外它的导入速度也是非常快速,功能是将数据以TXT/CSV等格式导出

1,下载sqluldr2,选择linux64位版本

https://pan.baidu.com/s/1JCH8Rn-aCFyqEyouXE0k7Q

2,将sqluldr2_linux64_10204.bin 拷贝到oracle安装目录

3,执行命令sqluldr2_linux64_10204.bin,报错如下


4,发现当前环境有libclntsh.so.11.1,与sqluldr2 所需包差小版本号,尝试建立软连接文件

ln -s  libclntsh.so.11.1 libclntsh.so.10.1

再次执行sqluldr2_linux64_10204.bin,成功,显示其相关参数帮助。

[oracle@base0182 ~]$ sqluldr2_linux64_10204.bin 

SQL*UnLoader: Fast Oracle Text Unloader (GZIP, Parallel), Release 4.0.1
(@) Copyright Lou Fangxin (AnySQL.net) 2004 - 2010, all rights reserved.

License: Free for non-commercial useage, else 100 USD per server.

Usage: SQLULDR2 keyword=value [,keyword=value,...]

Valid Keywords:
   user    = username/password@tnsname
   sql     = SQL file name
   query   = select statement
   field   = separator string between fields
   record  = separator string between records
   rows    = print progress for every given rows (default, 1000000) 
   file    = output file name(default: uldrdata.txt)
   log     = log file name, prefix with + to append mode
   fast    = auto tuning the session level parameters(YES)
   text    = output type (MYSQL, CSV, MYSQLINS, ORACLEINS, FORM, SEARCH).
   charset = character set name of the target database.
   ncharset= national character set name of the target database.
   parfile = read command option from parameter file 

  for field and record, you can use '0x' to specify hex character code,
  \r=0x0d \n=0x0a |=0x7c ,=0x2c, \t=0x09, :=0x3a, #=0x23, "=0x22 '=0x27
主要参数说明
  Field  分隔符  指定字段分隔符,默认为逗号
  record 分隔符  指定记录分隔符,默认为回车换行,Windows下的换行
  quote  引号符  指定非数字字段前后的引号符
  例如现在要改变默认的字段分隔符,用“#”来分隔记录,导出的命令如下所示:
  sqluldr2  test/test sql=tmp.sql field=#
  在指定分隔符时,可以用字符的ASCII代码(0xXX,大写的XX为16进制的ASCII码值)来指定一个字符,常用的字符的ASCII代码如下:
  回车=0x0d,换行=0x0a,TAB键=0x09,|=0x7c,&=0x26,双引号=0x22,单引号=0x27

  在选择分隔符时,一定不能选择会在字段值中出现的字符, 如有文字描述字段,就不能使用默认的逗号分隔符。


5,执行数据导出

5.1,常规导出

sqluldr2_linux64_10204.bin  user=test/test@history_162 query="select * from temp_001" head='yes' file=/home/oracle/temp_001.txt

5.2,使用sql参数

sqluldr2_linux64_10204.bin  user=test/test@history_162 query=tmp.sql head='yes' file=/home/oracle/temp_001.txt

tmp.sql的内容为:select * from temp_001

5.3,使用log参数
  当集成sqluldr2在脚本中时,就希望屏蔽上不输出这些信息,但又希望这些信息能保留,这时可以用“LOG”选项来指定日志文件名。

  sqluldr2_linux64_10204.bin  user=test/test@history_162 query=tmp.sql head='yes' file=/home/oracle/temp_001.txt log=+d:\tmp001.log

5.4,使用 table 参数

  当使用 table 参数时,在目录下会生成对应的ctl控制文件,如下语句会生成temp_001_sqlldr.ctl文件。

sqluldr2_linux64_10204.bin  user=test/test@history_162 query=tmp_sql table=temp_001 head='yes' file=/home/oracle/temp_001.txt


  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值