Oracle数据加载和卸载的实现方法


当前第2页 返回上一页

  创建文件lottu.txt;和表tbl_load_01。

[oracle@oracle235 ~]$ seq 1000|awk -vOFS="," '{print $1,"lottu",systime()-$1}' > lottu.txt
[oracle@oracle235 ~]$ sqlplus lottu/li0924
SQL*Plus: Release 11.2.0.4.0 Production on Mon Aug 13 22:58:34 2018
Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> create table tbl_load_01 (id number,name varchar2(10),accountid number);
Table created.

3.2 创建控制文件lottu.ctl

load data
characterset utf8
    infile '/home/oracle/lottu.txt'
    truncate into table tbl_load_01
    fields terminated by ','
    trailing nullcols
 optionally enclosed by ' ' TRAILING NULLCOLS
(
 id ,
 name,
 accountid
)

3.3 执行sqlldr

[oracle@oracle235 ~]$ sqlldr 'lottu/"li0924"' control=/home/oracle/lottu.ctl log=/home/oracle/lottu.log bad=/home/oracle/lottu.bad
SQL*Loader: Release 11.2.0.4.0 - Production on Mon Aug 13 23:10:12 2018
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Commit point reached - logical record count 64
Commit point reached - logical record count 128
Commit point reached - logical record count 192
Commit point reached - logical record count 256
Commit point reached - logical record count 320
Commit point reached - logical record count 384
Commit point reached - logical record count 448
Commit point reached - logical record count 512
Commit point reached - logical record count 576
Commit point reached - logical record count 640
Commit point reached - logical record count 704
Commit point reached - logical record count 768
Commit point reached - logical record count 832
Commit point reached - logical record count 896
Commit point reached - logical record count 960
Commit point reached - logical record count 1000

四.Oracle卸载数据-sqludr

  sqludr是将Oracle数据表导出到文本中;是牛人楼方鑫开发的。并非Oracle自带工具;需要下载安装才能使用。

4.1 sqludr安装

[oracle@oracle235 ~]$ unzip sqluldr2linux64.zip 
Archive: sqluldr2linux64.zip
 inflating: sqluldr2linux64.bin   
[oracle@oracle235 ~]$ mv sqluldr2linux64.bin $ORACLE_HOME/bin/sqludr

4.2 查看sqludr帮助

[oracle@oracle235 ~]$ sqludr -?
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

4.3 执行sqludr

[oracle@oracle235 ~]$ sqludr lottu/li0924 query="tbl_load_01" file=lottu01.txt field=","
      0 rows exported at 2018-08-13 23:47:55, size 0 MB.
    1000 rows exported at 2018-08-13 23:47:55, size 0 MB.
     output file lottu01.txt closed at 1000 rows, size 0 MB.

总结

以上所述是小编给大家介绍的Oracle数据加载和卸载的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...