本文对Oracle数据的导入导出 imp ,exp 两个命令进行了介绍, 并对其相应的参数进行了说明,然后通过一些示例进行演练,加深理解.
文章最后对运用这两个命令可能出现的问题(如权限不够,不同oracle版本)进行了探讨,并提出了相应的解决方案;
本文部分内容摘录自网络,感谢网友的经验总结;

一.说明

oracle 的exp/imp命令用于实现对数据库的导出/导入操作;
   exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件;
   imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库中。

二.语法

可以通过在命令行输入 imp help=y 获取imp的语法信息:
=============================================================================
  C:\Documents and Settings\auduser>imp help=y

Import: Release 9.0.1.1.1 - Production on 星期二 5月 20 18:21:57 2008

(c) Copyright 2001 Oracle Corporation.  All rights reserved.

可以通过输入 IMP 命令和您的用户名/口令
  后接用户名/口令的命令:

例程: IMP SCOTT/TIGER

或者, 可以通过输入 IMP 命令和各种参数来控制“导入”
  按照不同参数。要指定参数,您可以使用关键字:

格式: IMP KEYWORD=value 或 KEYWORD=(value1,value2,...,vlaueN)
  例程: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N
  或 TABLES=(T1: P1,T1: P2),如果 T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字  说明(默认)        关键字      说明(默认)
  --------------------------------------------------------------------------
  USERID   用户名/口令           FULL         导入整个文件 (N)
  BUFFER   数据缓冲区大小         FROMUSER     所有人用户名列表
  FILE     输入文件 (EXPDAT.DMP)    TOUSER       用户名列表
  SHOW     只列出文件内容 (N) TABLES      表名列表
  IGNORE   忽略创建错误 (N)    RECORDLENGTH  IO 记录的长度
  GRANTS  导入权限 (Y)           INCTYPE      增量导入类型
  INDEXES 导入索引 (Y)          COMMIT       提交数组插入 (N)
  ROWS    导入数据行 (Y)        PARFILE      参数文件名
  LOG      屏幕输出的日志文件   CONSTRAINTS  导入限制 (Y)
  DESTROY                覆盖表空间数据文件 (N)
  INDEXFILE              将表/索引信息写入指定的文件
  SKIP_UNUSABLE_INDEXES  跳过不可用索引的维护 (N)
  FEEDBACK               每 x 行显示进度 (0)
  TOID_NOVALIDATE        跳过指定类型 ID 的验证
  FILESIZE               每个转储文件的最大大小
  STATISTICS             始终导入预计算的统计信息
  RESUMABLE              遇到与空格有关的错误时挂起 (N)
  RESUMABLE_NAME         用来标识可恢复语句的文本字符串
  RESUMABLE_TIMEOUT      RESUMABLE 的等待时间
  COMPILE                编译过程, 程序包和函数 (Y)

下列关键字仅用于可传输的表空间
  TRANSPORT_TABLESPACE 导入可传输的表空间元数据 (N)
  TABLESPACES 将要传输到数据库的表空间
  DATAFILES 将要传输到数据库的数据文件
  TTS_OWNERS 拥有可传输表空间集中数据的用户

==============================================
同样可以通过输入 exp help=y 获取exp的语法信息

Microsoft Windows XP [版本 5.1.2600]
  (C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\auduser>exp help=y

Export: Release 9.0.1.1.1 - Production on 星期二 5月 20 18:26:34 2008

(c) Copyright 2001 Oracle Corporation.  All rights reserved.

通过输入 EXP 命令和用户名/口令,您可以
  后接用户名/口令的命令:

例程: EXP SCOTT/TIGER

或者,您也可以通过输入跟有各种参数的 EXP 命令来控制“导出”
  按照不同参数。要指定参数,您可以使用关键字:

格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
  例程: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
  或 TABLES=(T1: P1,T1: P2),如果 T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字  说明(默认)        关键字      说明(默认)
  --------------------------------------------------------------------------
  USERID   用户名/口令           FULL         导出整个文件 (N)
  BUFFER   数据缓冲区大小         OWNER     所有者用户名列表
  FILE       输出文件 (EXPDAT.DMP)  TABLES       表名称列表
  COMPRESS   导入到一个区 (Y) RECORDLENGTH IO 记录的长度
  GRANTS  导出权限 (Y)           INCTYPE      增量导出类型
  INDEXES    导出索引 (Y)         RECORD       跟踪增量导出 (Y)
  DIRECT     直接路径 (N)            TRIGGERS     导出触发器 (Y)
  LOG        屏幕输出的日志文件  STATISTICS   分析对象 (ESTIMATE)
  ROWS    导出数据行 (Y)        PARFILE      参数文件名
  CONSISTENT 交叉表一致性    CONSTRAINTS  导出约束条件 (Y)

FEEDBACK             每 x 行显示进度 (0)
  FILESIZE             每个转储文件的最大大小
  FLASHBACK_SCN        用于回调会话快照的 SCN
  FLASHBACK_TIME       用来获得最接近于指定时间的 SCN 的时间
  QUERY                用来导出表的子集的选择子句
  RESUMABLE            遇到与空格有关的错误时挂起 (N)
  RESUMABLE_NAME       用来标识可恢复语句的文本字符串
  RESUMABLE_TIMEOUT    RESUMABLE 的等待时间
  TTS_FULL_CHECK       对 TTS 执行完全或部分相关性检查
  TABLESPACES          要导出的表空间列表
  TRANSPORT_TABLESPACE 导出可传输的表空间元数据 (N)
  TEMPLATE 调用 iAS 模式导出的模板名称

三.使用示例

3.1 数据导出:

1 将数据库SampleDB完全导出,用户名system 密码manager 导出到E:\SampleDB.dmp中

exp system/manager@TestDB file=E:\sampleDB.dmp full=y

2 将数据库中system用户与sys用户的表导出

exp system/manager@TestDB file=E:\sampleDB.dmp  owner=(system,sys)

3 将数据库中的表 TableA,TableB 导出

exp system/manager@TestDB  file=E:\sampleDB.dmp  tables=(TableA,TableB)

4 将数据库中的表tableA中的字段filed1 值为 "王五" 的数据导出

exp system/manager@TestDB  file=E:\sampleDB.dmp  tables=(tableA)  query=' where filed1='王五'
 
   如果想对dmp文件进行压缩,可以在上面命令后面 加上 compress=y 来实现。

3.2 数据的导入

1 将备份数据库文件中的数据导入指定的数据库SampleDB 中,如果 SampleDB 已存在该表,则不再导入;

imp system/manager@TEST  file=E:\sampleDB.dmp  full=y  ignore=y

2 将d:\daochu.dmp中的表table1 导入

imp system/manager@TEST  file=E:\sampleDB.dmp  tables=(table1)

3. 导入一个完整数据库

imp system/manager file=bible_db log=dible_db full=y ignore=y

4. 导入一个或一组指定用户所属的全部表、索引和其他对象

imp system/manager file=seapark log=seapark fromuser=seapark imp
 system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

5. 将一个用户所属的数据导入另一个用户

imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy
 imp system/manager file=tank log=tank fromuser=(seapark,amy)
 touser=(seapark1, amy1)

6. 导入一个表

imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)

7. 从多个文件导入

imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G full=y

8. 使用参数文件

imp system/manager parfile=bible_tables.par
bible_tables.par参数文件:
 #Import the sample tables used for the Oracle8i Database Administrator's
Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import
参数文件示例见附录

9. 增量导入

imp system./manager inctype= RECTORE FULL=Y  FILE=A

不少情况下要先将表彻底删除,然后导入。

四.参数说明

4.1、8i EXP常用选项
 1、FULL,这个用于导出整个数据库,在ROWS=N一起使用时,可以导出整个数据库的结构。例如:
 exp sys file=./db_str.dmp log=./db_str.log full=y rows=n compress=y direct=y
 2、BUFFER和FEEDBACK,在导出比较多的数据时,我会考虑设置这两个参数。例如:
 exp new file=yw97_2003.dmp log=yw97_2003_3.log feedback=10000 buffer=100000000 tables=WO4,OK_YT
 3、FILL和LOG,这两个参数分别指定备份的DMP名称和LOG名称,包括文件名和目录,例子见上面。
 需要说明的是,EXP可以直接备份到磁带中,即使用FILE=/dev/rmt0(磁带设备名),但是一般我们都不这么做,原因有二:一、这样做的速度会慢很多,二、现在一般都是使用磁带库的,不建议直接对磁带进行操作。至于没有使用磁带库的朋友可以考虑和UNIX的TAR结合使用。
 如果你真想使用EXP直接到磁带,你可以参考Metalink文章“EXPORTING TO TAPE ON UNIX SYSTEMS”(文档号:30428.1),该文中有详细解释。
 4、COMPRESS参数将在导出的同时合并碎块,尽量把数据压缩到initial的EXTENT里,默认是N,一般建议使用。DIRECT参数将告诉 EXP直接读取数据,而不像传统的EXP那样,使用SELECT来读取表中的数据,这样就减少了SQL语句处理过程。一般也建议使用。不过有些情况下 DIRECT参数是无法使用的。
 5、如何使用SYSDBA执行EXP/IMP?
 这是一个很现实的问题,有时候我们需要使用SYSDBA来执行EXP/IMP,如进行传输表空间的EXP/IMP,以及在9i下用SYS用户来执行EXP/IMP时,都需要使用SYSDBA才可。
文章出处:http://www.diybl.com/course/7_databases/oracle/oraclejs/2008819/136406.html

转载于:https://www.cnblogs.com/jinqiuqiu1120/archive/2008/11/17/1335068.html

转载:Oracle导入导出命令的使用相关推荐

  1. oracle导入导出命令impdp和expdp

    impdp为oracle的数据文件导入命令,expdp为oracle的数据文件导出命令,导入或导出的数据文件格式都是.dmp文件,导入导出命令需要对应,使用expdp命令导出的dmp文件才能使用imp ...

  2. 开发人员常用的Oracle导入/导出命令

    作为我们开发人员经常使用exp导出某一个用户下的所有对象从某一个数据库, 然后导入.通常导入的时候总是会遇到一些意想不到的问题,其中一个问题就是数据库中已经存在同名对象, 同时也为那些比较复杂的参数而 ...

  3. oracle导入导出命令

    Su –oracle 导出数据库指令: expdp  YBDCS/drgs@10.10.202.135/orcl directory=DATA_PUMP_DIR  dumpfile=YBDCS.dmp ...

  4. oracle定时备份详解,oracle导入导出命令详解(附数据库每天定时备份脚本)

    一. 导出工具 exp 1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移 它有三种模式: ...

  5. oracle导入导出版本规则,Oracle不同版本间的导入导出命令详解 - wangzhuoyan的专栏 - CSDN博......

    wangzhuoyan的专栏 明月松间照,清泉石上流 登录 注册 欢迎 退出 我的博客 配置 写文章 文章管理 博客首页   全站 当前博客  空间 博客 好友 相册 留言 用户操作 [发私信]  [ ...

  6. 数据库oracle数据导入导出命令,数据库oracle数据导入导出命令

    exp Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成 ...

  7. Oracle数据库导入导出命令!

    oracle数据库导入导出命令! 转自:http://www.cnblogs.com/fjfzhkb/archive/2007/09/03/879807.html Oracle数据导入导出imp/ex ...

  8. oracle中imp命令详解,ORACLE EXPDP IMPDP数据导入导出命令详解及同EXP IMP命令详细对照...

    ORACLE EXPDP IMPDP数据导入导出命令详解及同EXP IMP 命令详细对比 一.EXPDP IMPDP EXP IMP 可以实现 1.可以实现逻辑备份和逻辑恢复 2.可以在数据库用户之间 ...

  9. (转ORCLE导入导出命令)

    oracle数据库导入导出命令! Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份.   大多情况都可以用Oracle数据导入导出 ...

  10. oracle 导入导出数据库、删除用户以及该用户所有的对象

    一.oracle数据库导入导出命令! Oracle数据导入导出imp/exp   在cmd下(安装oracle后已经配置好环境变量,可用该命令imp.exp) 功能:Oracle数据导入导出imp/e ...

最新文章

  1. Abaqus用户子程序umat的学习
  2. cisco PIX防火墙的配置及注解完全手册
  3. Powershell获取当前机器的序列号用户名域
  4. JVM是如何进行多线程并行编程的
  5. 开源创新、软件定义网络和网络功能虚拟化特性
  6. 倾斜摄影技术在城市规划行业中扮演着什么样的角色?
  7. C++中的继承(派生)的一些误区
  8. 开发缺点_利用模板去建设开发企业网站好不好?模板建站的缺点?
  9. Chapter 04-Using Conversion Functions and Conditional Expressions-Conditional Expressions
  10. Illustrator 教程,如何在 Illustrator 中使用图层组织内容?
  11. mac 系统下 刻录centos 系统到 U盘中
  12. 商品销售数据分析报告
  13. PCL:RANSAC 空间直线拟合
  14. python day 5
  15. MMKV 组件-快速丶读丶查丶写的sp
  16. pics_IE的内容顾问,PICS评级和当今的ASP.NET Flakey
  17. mysql保留小数位数函数
  18. matlab时频分析代码
  19. 控制科学与工程学科简介
  20. 9.4 基础和应用的平衡中找到大学的节奏——《逆袭大学》连载

热门文章

  1. 2019.02.12 bzoj3944: Sum(杜教筛)
  2. python_列表_常用操作
  3. Confluence 6 数据库表-杂项(Miscellaneous)
  4. linux 共享内存 信号量 同步
  5. java拷贝字符文件
  6. ubuntu下编译ffmpeg并用eclipse调试
  7. JetBrains注册码计算(IntelliJ IDEA 15.0注册码激活)
  8. 使用Spark core和SparkSQL的窗口函数分别实现分组取topN的操作
  9. Caused by: java.lang.ClassNotFoundException: backtype.storm.topology.IRichSpout
  10. 『TensorFlow』读书笔记_TFRecord学习