Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1800340
  • 博文数量: 334
  • 博客积分: 11301
  • 博客等级: 上将
  • 技术积分: 3452
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-18 10:19
个人简介

路虽弥,不行不至;事虽少,不做不成。

文章分类

全部博文(334)

文章存档

2013年(4)

2012年(19)

2011年(27)

2010年(71)

2009年(45)

2008年(15)

2007年(84)

2006年(69)

分类: Oracle

2007-06-12 10:55:36

EXP/IMP用法


exp/imp适合于同类型数据库之间数据转换
共有四种不同模式:表,用户,表空间,数据库

现分别举例说明

1.表级别

$ exp hr/hr tables=jobs direct=y file=/data/table_jobs.dmp

$ imp hr/hr tables=jobs direct=y file=/data/table_jobs.dmp

2.用户级别

$ exp "'sys/sys as sysdba'" owner=hr direct=y file=/data/owner_hr.dmp

$ imp "'sys/sys as sysdba'" fromuser=hr touser=hr file=/data/owner_hr.dmp

 

3.表空间级别

$ exp "'sys/sys as sysdba'" transport_tablespace=y direct=y tablespaces=examples file=/data/ts_examples.dmp

 

4.数据库级别

$ exp "'sys/sys as sysdba'" full=y  file=/data/db.dmp

 

说明:如要使用as sysdba或as sysoper进行操作,则必须使

     用如下用法:

     "'sys/sys as sysdba'"

     "'system/system as sysoper'"

 

SQL*LOADER用法



sql*loader不仅适用于同类型数据库,也适合外面数据添加到oracle中,尤其是数据量大。

1.sql*loader direct-path用法

  insert /*+ append */ into [schema.] tablename [nologging | logging] sub-query

 举例:

  SQL>insert /*+ append */ into hr.jobs2

      nologging

      select * from hr.jobs;

  SQL>commit;

 并行direct-path用法

  举例说明:

    SQL>alter session enable parallel dml;

    SQL>insert /*+ parallel(hr.jobs2,3) */ into hr.jobs2 select * from hr.jobs;

    SQL>commit;

2.SQL*LOADER用法

  举例说明:

  $ sqlldr hr/hr control=/data/control.txt log=/data/log.txt direct=y

  control.txt内容如下



  load data
  infile '/data/datafile.txt'
  badfile '/data/badfile.txt'
  insert
  into table emp
  fields terminated by ','
  (id , name ,birthday,tel,address)

说明:insert适合空表,append是适合表中已有数据

 

 


 

 

 
阅读(2152) | 评论(0) | 转发(0) |
0

上一篇:The Oracle/PHP FAQ

下一篇:QFII和QDII是什么

给主人留下些什么吧!~~