ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法
Oracle使用EXPDP和IMPDP数据泵进行导出导入的方法
使用expdp和impdp时应该注重的事项:
1、exp和imp是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。
2、expdp和impdp是服务端的工具程序,他们只能在oracle服务端使用,不能在客户端使用。
3、imp只适用于exp导出的文件,不适用于expdp导出文件;impdp只适用于expdp导出的文件,而不适用于exp导出文件。
4、对于10g以上的服务器,使用exp通常不能导出0行数据的空表,而此时必须使用expdp导出。
一、创建逻辑目录,该命令不会在操作系统创建真正的目录(请先创建真正的目录),最好以system等管理员创建逻辑目录。
SQL>conn system/manger@orcl as sysdba
SQL>create directory dump_dir as 'd:\test\dump';
二、查看管理员目录(同时查看操作系统是否存在,因为oracle并不关心该目录是否存在,假如不存在,则出错)
SQL>select * from dba_directories;
三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。
SQL>grant read,write on directory dump_dir to scott;
四、用expdp导出数据
1)导出用户
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp directory=dump_dir;
2)导出表
expdp scott/tiger@orcl tables=emp,dept dumpfile=expdp.dmp directory=dump_dir;
3)按查询条件导
expdp scott/tiger@orcl directory=dump_dir dumpfile=expdp.dmptables=empquery='where deptno=20';
4)按表空间导
expdp system/manager@orcl directory=dump_dirdumpfile=tablespace.dmptablespaces=temp,example;
5)导整个数据库
expdp system/manager@orcl directory=dump_dir dumpfile=full.dmp full=y;
五、用impdp导入数据
1)导入用户(从用户scott导入到用户scott)
impdp scott/tiger@orcl directory=dump_dir dumpfile=expdp.dmp schemas=scott;
2)导入表(从scott用户中把表dept和emp导入到system用户中)
impdp system/manager@orcl directory=dump_dirdumpfile=expdp.dmptables=scott.dept,scott.emp remap_schema=scott:system;
3)导入表空间
impdp system/manager@orcl directory=dump_dir dumpfile=tablespace.dmptablespaces=example;
4)导入数据库
impdb system/manager@orcl directory=dump_dir dumpfile=full.dmp full=y;
5)追加数据
impdp system/manager@orcl directory=dump_dir dumpfile=expdp.dmpschemas=systemtable_exists_action
oracle数据泵备份(Expdp命令)
Oracle备份方式主要分为数据泵导出备份、热备份与冷备份三种,今天首先来实践一下数据泵备份与还原。数据泵导出/导入属于逻辑备份,热备份与冷备份都属于物理备份。oracle10g开始推出了数据泵(expdp /impdp),可以使用并行参数选项,因此,相对于传统的exp命令来说,执行效率更高。
一、知晓expdp命令
C:\>expdp -help Export: Release 11.1.0.7.0 - Production on 星期六, 28 9月, 2013 10:21:52 Copyright (c) 2003, 2007, Oracle. All rights reserved. 数据泵导出实用程序提供了一种用于在 Oracle 数据库之间传输数据对象的机制。该实用程序可以使用以下命令进行调用: 示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导出的运行方式。具体方法是: 在 'expdp' 命令后输入各种参数。要指定各参数, 请使用关键字: 格式: expdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 示例: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scot 或 TABLES=(T1:P1,T1:P2), 如果 T1 是分区表 USERID 必须是命令行中的第一个参数。 关键字 说明 (默认) --------------------------------------------------------------------------- ATTACH 连接到现有作业, 例如 ATTACH [=作业名]。 COMPRESSION 减小转储文件内容的大小, 其中有效关键字 值为: ALL, (METADATA_ONLY), DATA_ONLY 和 NONE。 CONTENT <span style="color: #ff0000;"> 指定要卸载的数据, 其中有效关键字 值为: (ALL), DATA_ONLY 和 METADATA_ONLY。</span> --默认值为ALL DATA_OPTIONS 数据层标记, 其中唯一有效的值为: 使用CLOB格式的 XML_CLOBS-write XML 数据类型 DIRECTORY <span style="color: #ff0000;">供转储文件和日志文件使用的目录对象</span>。 DUMPFILE <span style="color: #ff0000;">目标转储文件 (expdat.dmp) 的列表,例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.d </span>ENCRYPTION <span style="color: #ff0000;">加密部分或全部转储文件, 其中有效关键字值为: ALL, DATA_ONLY, METADATA_ONLY,ENCRYPTED_COLUMNS_ONLY 或 NONE。</span> ENCRYPTION_ALGORITHM 指定应如何完成加密, 其中有效关键字值为: (AES128), AES192 和 AES256。 ENCRYPTION_MODE 生成加密密钥的方法, 其中有效关键字值为: DUAL, PASSWORD 和 (TRANSPARENT)。 ENCRYPTION_PASSWORD 用于创建加密列数据的口令关键字。 ESTIMATE 计算作业估计值, 其中有效关键字值为: (BLOCKS) 和 STATISTICS。 ESTIMATE_ONLY 在不执行导出的情况下计算作业估计值。 EXCLUDE <span style="color: #ff0000;">排除特定的对象类型, 例如 EXCLUDE=TABLE:EMP。--EXCLUDE=[object_type]:[name_clause],[object_type]:[name_clause]<br></span>FILESIZE 以字节为单位指定每个转储文件的大小。 FLASHBACK_SCN 用于将会话快照设置回以前状态的 SCN。 -- 指定导出特定SCN时刻的表数据<br>FLASHBACK_TIME 用于获取最接近指定时间的 SCN 的时间。--指定导出特定时间点的表数据,注意FLASHBACK_SCN和FLASHBACK_TIME不能同时使 用<br>FULL <span style="color: #ff0000;">导出整个数据库 (N)。</span> HELP 显示帮助消息 (N)。 INCLUDE 包括特定的对象类型, 例如 INCLUDE=TABLE_DATA。 JOB_NAME 要创建的导出作业的名称。 LOGFILE <span style="color: #ff0000;">日志文件名 (export.log)。 </span>NETWORK_LINK 链接到源系统的远程数据库的名称。 NOLOGFILE 不写入日志文件 (N)。 PARALLEL <span style="color: #ff0000;">更改当前作业的活动 worker 的数目。</span> PARFILE <span style="color: #ff0000;">指定参数文件</span>。 QUERY <span style="color: #ff0000;">用于导出表的子集的谓词子句。--</span>QUERY = [schema.][table_name:] query_clause<br>REMAP_DATA <span style="color: #ff0000;">指定数据转换函数,例如 REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO。 </span>REUSE_DUMPFILES 覆盖目标转储文件 (如果文件存在) (N)。 SAMPLE <span style="color: #ff0000;"> 要导出的数据的百分比; </span>SCHEMAS <span style="color: #ff0000;">要导出的方案的列表 (登录方案)。 </span>STATUS 在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。 TABLES <span style="color: #ff0000;">标识要导出的表的列表 - 只有一个方案。--[schema_name.]table_name[:partition_name][,…]<br></span>TABLESPACES <span style="color: #ff0000;"> 标识要导出的表空间的列表。 </span>TRANSPORTABLE 指定是否可以使用可传输方法, 其中有效关键字值为: ALWAYS, (NEVER)。 TRANSPORT_FULL_CHECK 验证所有表的存储段 (N)。 TRANSPORT_TABLESPACES 要从中卸载元数据的表空间的列表。 VERSION <span style="color: #ff0000;">要导出的对象的版本, 其中有效关键字为:(COMPATIBLE), LATEST 或任何有效的数据库版本。 </span><br>下列命令在交互模式下有效。 注: 允许使用缩写 命令 说明 --------------------------------------------------------------------------- ADD_FILE 向转储文件集中添加转储文件。 CONTINUE_CLIENT 返回到记录模式。如果处于空闲状态, 将重新启动作业。 EXIT_CLIENT 退出客户机会话并使作业处于运行状态。 FILESIZE 后续 ADD_FILE 命令的默认文件大小 (字节)。 HELP 总结交互命令。 KILL_JOB 分离和删除作业。 PARALLEL 更改当前作业的活动 worker 的数目。PARALLEL=<worker 的数目>。 <br>REUSE_DUMPFILES 覆盖目标转储文件 (如果文件存在) (N)。 START_JOB 启动/恢复当前作业。 STATUS 在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。STATUS[=interval] STOP_JOB 顺序关闭执行的作业并退出客户机。STOP_JOB=IMMEDIATE 将立即关闭数据泵作业。 <br><span style="color: #ff0000;">备注:红颜色标记的字体,表示是expdp命令常用的命令选项,这个需要大家掌握理解并能灵活运用。()括号括起来的代表是expdp命令的默认选项</span> |
二、准备工作
1、查询路径信息
查看已经创建的路径信息:
SELECT * FROMdba_directories;
2、创建路径
创建路径需要sys权限,需要有create anydirectory权限才可以创建路径。
选项:DIRECTORY=directory_object
Directory_object用于指定目录对象名称。需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS目录。
eg: CREATE OR REPLACEdirectory backup_path AS'D:\APP\ORADATA\db_backup'; --创建路径名为dackup_path的路径,并指向硬盘的指定位置
对新创建的路径进行授权操作:
eg:grant read,writeon directory backup_path to orcldev; --将对路径的读写权限分配各orcldev用户。
三、操作实例
执行expdp和impdp命令需要拥有exp_full_database和imp_full_database权限,授权语句如下:
eg:grantexp_full_database,imp_full_database to orcldev;
1、导出orcldev这个schema的所用对象[schemas orfull]
eg:expdp orcldev/oracle@orcldev directory=backup_pathdumpfile=orcldev_schema.dmplogfile=orcldev_schema_2013.log schemas=orcldev
2、导出orcldev这个用户下的某些表[tables]
eg:C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_table.dmplogfile=orcldev_table_2013.logtables=('TAB_TEST','TAB_A')
3、只导出orcldev这个用户的元数据[content]
eg:C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_meta.dmplogfile=orcldev_meta_2013.log
SCHEMAS=orcldevCONTENT=METADATA_ONLY
4、只导出orcldev这个用户50%的抽样数据[sample]
eg:C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_samp.dmplogfile=orcldev_samp_2013.log schemas=orcldevsample=50
5、采用并行方式备份整库[parallel]
parallel参数只有在oracle10g之后的版本(包含10g)有效。
oracle_online:you can use theDUMPFILE parameter during export operations tospecify multiple dump files, byusing a substitution variable (%U) in thefilename. This is called a dump filetemplate. The new dump files are createdas they are needed, beginning with 01for %U, then using 02,03,and so on.
eg:C:\>expdporcldev/oracle directory=dackup_pathdumpfile=orcldev_parallel_%U.dmplogfile=orcldev_parallel_2013.log parallel=4
"%U"表示自动生成递增的序列号。
6、导出orcldev这个方案对象,但不包含索引[exclude]
eg: --可以剔除的对象有:VIEW,PACKAGE,FUNCTION,index,constraints,table,schema,user等等
1)C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_exclude.dmplogfile=orcldev_exclude.log SCHEMAS=orcldevEXCLUDE=index
2)C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_exclude.dmplogfile=orcldev_exclude.log SCHEMAS=orcldevEXCLUDE=INDEX:"LIKE'TEST%'" --导出这个orcldev方案,剔除以TEST开头的索引
3)C:\>expdp orcldev/oracle directory=dackup_pathdumpfile=orcldev_exclude.dmplogfile=orcldev_exclude.logEXCLUDE=SCHEMA:"='SCOTT'"
C:\>expdporcldev/oracle directory=dackup_pathdumpfile=orcldev_exclude.dmplogfile=orcldev_exclude.logEXCLUDE=USER:"='SCOTT'"
--备份整库但剔除SCOTT这个用户的对象。
注意:include与exclude不能同时使用。
7、PARFILE选项
expdp命令可以调用parfile文件,在parfile里可以写备份脚本,可以使用query选项。
Oracle highly recommends that you place QUERY specifications ina parameter file; otherwise, you might have to useoperating system-specificescape characters on the command line before eachquotation mark.
如expdp.txt内容如下:
USERID=orcldev/oracledirectory=dackup_path dumpfile=orcldev_parfile.dmplogfile=orcldev_parfile.logTABLES='TAB_TEST'QUERY="WHERETRAN_DATE=TO_DATE('2013-08-31','YYYY-MM-DD')"
执行方法:expdp parfile=expdp.txt 即可执行备份
使用parfile好处是使用query选项是不用使用转义字符,如果将query参数放到外边的话,需要将""进行转义。
eg:
UNIX写法:
expdporcldev/oracle directory=backup_path dumpfile=2013.dmp logfile=2013.logschemas=orcldev INCLUDE=TABLE:\"IN\'TESTA\',\'TESTB\'\" --在Unix系统执行是需要将单引号进行转义操作,否则会报错。
WINDOWS写法:
expdporcldev/oracle directory=backup_path dumpfile=2013.dmp logfile=2013.logschemas=orcldev INCLUDE=TABLE:"IN \('TEST_A','TEST_B')"
8、TABLESPACE导出表空间
eg:expdp orcldev/oracle directory=backup_pathdumpfile=2013.dmplogfile =2013.log tablespaces=user,orcldev
9、Version选项
VERSION选项默认值是COMPATIBLE,即兼容模式。在我们备份的时候,可以指定版本号。
eg:expdp orcldev/oracle directory=backup_pathdumpfile=2013.dmplogfile =2013.log full=Y VERSION=10.2.0.4
10、FLASHBACK_TIME选项
指定导出特定时间点的表数据,可以联系一下FLASHBACK功能。
eg:C:\>expdp orcldev/oracledirectory=dackup_path dumpfile=orcldev_flash.dmplogfile=orcldev_flash.logSCHEMAS=orcldev FLASHBACK_TIME="TO_TIMESTAMP('2013-09-2814:30:00','DD-MM-YYYYHH24:MI:SS')"
四、参考
http://docs.oracle.com/cd/B19306_01/server.102/b14215/dp_export.htm#i1007829
ORACLE数据泵还原(IMPDP命令)
Oracle数据库还原IMPDP命令是相对于EXPDP命令的,方向是反向的。即对于数据库备份进行还原操作。
一、知晓IMPDP命令
C:\>impdp -help Import: Release 11.1.0.7.0 - Production on 星期六, 28 9月, 2013 15:37:03 Copyright (c) 2003, 2007, Oracle. All rights reserved. 数据泵导入实用程序提供了一种用于在 Oracle 数据库之间传输 数据对象的机制。该实用程序可以使用以下命令进行调用: 示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导入的运行方式。具体方法是: 在 'impdp' 命令后输入各种参数。要指定各参数, 请使用关键字: 格式: impdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp USERID 必须是命令行中的第一个参数。 关键字 说明 (默认) ------------------------------------------------------------------------------ ATTACH 连接到现有作业, 例如 ATTACH [=作业名]。 CONTENT <span style="color: #ff0000;">指定要加载的数据, 其中有效关键字为:(ALL),DATA_ONLY和METADATA_ONLY。 </span>DATA_OPTIONS 数据层标记,其中唯一有效的值为:SKIP_CONSTRAINT_ERRORS-约束条件错误不严重。 DIRECTORY <span style="color: #ff0000;"> 供转储文件,日志文件和sql文件使用的目录对象。</span> DUMPFILE <span style="color: #ff0000;">要从(expdat.dmp)中导入的转储文件的列表,例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.dmp。 </span>ENCRYPTION_PASSWORD 用于访问加密列数据的口令关键字。此参数对网络导入作业无效。 ESTIMATE 计算作业估计值, 其中有效关键字为:(BLOCKS)和STATISTICS。 EXCLUDE <span style="color: #ff0000;">排除特定的对象类型, 例如 EXCLUDE=TABLE:EMP。</span> FLASHBACK_SCN 用于将会话快照设置回以前状态的 SCN。 FLASHBACK_TIME 用于获取最接近指定时间的 SCN 的时间。 FULL <span style="color: #ff0000;">从源导入全部对象(Y)。 </span>HELP 显示帮助消息(N)。 INCLUDE <span style="color: #ff0000;">包括特定的对象类型, 例如 INCLUDE=TABLE_DATA。 </span>JOB_NAME 要创建的导入作业的名称。 LOGFILE 日志文件名(import.log)。 NETWORK_LINK <span style="color: #ff0000;">链接到源系统的远程数据库的名称。</span> NOLOGFILE 不写入日志文件。 PARALLEL <span style="color: #ff0000;">更改当前作业的活动worker的数目。</span> PARFILE <span style="color: #ff0000;">指定参数文件。 </span>PARTITION_OPTIONS 指定应如何转换分区,其中有效关键字为:DEPARTITION,MERGE和(NONE) QUERY <span style="color: #ff0000;">用于导入表的子集的谓词子句。 </span>REMAP_DATA 指定数据转换函数,例如REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO REMAP_DATAFILE 在所有DDL语句中重新定义数据文件引用。 REMAP_SCHEMA <span style="color: #ff0000;">将一个方案中的对象加载到另一个方案。 </span>REMAP_TABLE <span style="color: #ff0000;"> 表名重新映射到另一个表,例如 REMAP_TABLE=EMP.EMPNO:REMAPPKG.EMPNO。 </span>REMAP_TABLESPACE <span style="color: #ff0000;">将表空间对象重新映射到另一个表空间。</span> REUSE_DATAFILES 如果表空间已存在, 则将其初始化 (N)。 SCHEMAS <span style="color: #ff0000;">要导入的方案的列表。 </span>SKIP_UNUSABLE_INDEXES 跳过设置为无用索引状态的索引。 SQLFILE 将所有的 SQL DDL 写入指定的文件。 STATUS 在默认值(0)将显示可用时的新状态的情况下,要监视的频率(以秒计)作业状态。 STREAMS_CONFIGURATION 启用流元数据的加载 TABLE_EXISTS_ACTION <span style="color: #ff0000;"> 导入对象已存在时执行的操作。有效关键字:(SKIP),APPEND,REPLACE和TRUNCATE。 </span>TABLES <span style="color: #ff0000;">标识要导入的表的列表。 </span>TABLESPACES 标识要导入的表空间的列表。 TRANSFORM 要应用于适用对象的元数据转换。有效转换关键字为:SEGMENT_ATTRIBUTES,STORAGE,OID和PCTSPACE。 TRANSPORTABLE 用于选择可传输数据移动的选项。有效关键字为: ALWAYS 和 (NEVER)。仅在 NETWORK_LINK 模式导入操作中有效。 TRANSPORT_DATAFILES <span style="color: #ff0000;">按可传输模式导入的数据文件的列表。</span> TRANSPORT_FULL_CHECK 验证所有表的存储段 (N)。 TRANSPORT_TABLESPACES 要从中加载元数据的表空间的列表。仅在 NETWORK_LINK 模式导入操作中有效。 VERSION 要导出的对象的版本, 其中有效关键字为:(COMPATIBLE), LATEST 或任何有效的数据库版本。仅对 NETWORK_LINK 和 SQLFILE 有效。 下列命令在交互模式下有效。 注: 允许使用缩写 命令 说明 (默认) ------------------------------------------------------------------------------ CONTINUE_CLIENT 返回到记录模式。如果处于空闲状态, 将重新启动作业。 EXIT_CLIENT 退出客户机会话并使作业处于运行状态。 HELP 总结交互命令。 KILL_JOB 分离和删除作业。 PARALLEL 更改当前作业的活动 worker 的数目。PARALLEL=<worker 的数目>。 START_JOB 启动/恢复当前作业。START_JOB=SKIP_CURRENT 在开始作业之前将跳过作业停止时执行的任意操作。 STATUS 在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。STATUS[=interval] STOP_JOB 顺序关闭执行的作业并退出客户机。STOP_JOB=IMMEDIATE 将立即关闭数据泵作业。 <br><span style="color: #ff0000;">备注:红色标记的选项是比较常用的,需知晓其用法。</span> |
二、操作实例
1、全库模式导入[full]
impdp orcldev/oracledirectory=backup_pathdumpfile=orcldev_schema.dmp full=Ytable_exists_action=replace --如果表已经存在则进行替换操作。
一般来说,在还原数据库操作的时候,首先要删除这个用户,然后在进行impdp还原操作。
eg:
(1)SQL>DROP USER orcldev CASCADE;
(2)impdporcldev/oracledirectory=backup_path dumpfile=orcldev_2013.dmp full=Y
2、Schema模式导入[schema]
--还原orcldev这个方案(用户)
impdp orcldev/oracledirectory=backup_pathdumpfile=orcldev_schema.dmp schemas=orcldevtable_exists_action=replace
3、表模式导入[table]
--还原某个用户下的具体的表
(1)windows版本:
impdporcldev/oracledirectory=backup_path dumpfile=orcldev_table.dmptables='TAB_TEST'table_exists_action=replace
(2)unix版本:需要将'单引号进行转义操作
impdp orcldev/oracledirectory=backup_pathdumpfile=orcldev_table.dmp tables=\'ius_tran\'table_exists_action=replace
4、表空间模式导入[tablespace]
impdporcldev/oracledirectory=backup_path dumpfile=orcldev_tablespace.dmptablespace=user,orcldev
5、传输表空间模式导入[TransportableTablespace]
(1)Oracle_Online
You cannotexport transportable tablespacesand then import them into a database at a lowerrelease level. The targetdatabase must be at the same or higher release levelas the source database.
The TRANSPORT_TABLESPACES is valid only whentheNETWORK_LINK parameter is also specified.
意思就说,目标库的版本要等于或者高于源数据库的版本,TRANSPORT_TABLESPACES参数选项有效前提条件是NETWORK_LINK参数需被指定。
查询数据库版本号SQL语句:SELECT *FROMv$version;
EG:impdp orcldev/oracleDIRECTORY=dackup_pathNETWORK_LINK=db_link_test01TRANSPORT_TABLESPACES=test0001TRANSPORT_FULL_CHECK=nTRANSPORT_DATAFILES='app/oradata/test0001.dbf'
(2)创建数据库dbLink方法:
语法:
CREATE [PUBLIC] DATABASE LINK LINK_NAME
CONNECT TO Username IDENTIFIED BYPassword
USING 'ConnectString';
注释:
1)创建dblink需要有CREATE DATABASE LINK或CREATE PUBLICDATABASELINK的系统权限以及用来登录到远程数据库的帐号必须有CREATE SESSION权限。
2)ConnectString指的是在tnsnames.ora文件中配置的监听名称。
3)当GLOBAL_NAME=TRUE时,dblink名必须与远程数据库的全局数据库名GLOBAL_NAME相同;否则,可以任意命名。
(3)查看GLOBAL_NAME参数方法:
SQL> show parametersglobal_name;
NAME TYPE VALUE
----------------------------------------------------------------------------
global_names boolean FALSE
6、REMAP_SCHEMA参数
众所周知:IMP工具的FROMUSER和TOUSER参数可以实现将一个用户的的数据迁移到另外一个用户。
(1)impdp数据泵使用REMAP_SCHEMA参数来实现不同用户之间的数据迁移;
语法:
REMAP_SCHEMA=source_schema:target_schema
eg:impdporcldev/oracleDIRECTORY=backup_path DUMPFILE=oracldev.dmpREMAP_SCHEMA=orcldev:orcltwo
与REMAP_SCHEMA类似的参数选项,如REMAP_TABLESPACE将源表空间的所有对象导入目标表空间。
7、REMAP_TABLE参数
将源表数据映射到不同的目标表中
eg:impdp orcldev/oracleDIRECTORY=backup_pathdumpfile=oracldev.dmp remap_table=TAB_TEST:TEST_TB
数据导入到TEST_TB表中,但是该表的索引等信息并没有相应的创建,需要手工初始化。
8、REMAP_DATAFILE参数
语法:REMAP_DATAFILE=source_datafile:target_datafile
Oracle_Online:
Remappingdatafiles is useful when youmove databases between platforms that havedifferent file naming conventions.The source_datafile and target_datafile namesshould be exactly as you wantthem to appear in the SQL statements where theyare referenced. Oraclerecommends that you enclose datafile names in quotationmarks to eliminateambiguity on platforms for which a colon is a valid filespecificationcharacter.
9、PARALLEL参数
使用PARALLEL参数可以提高数据泵还原的效率,前提是必须有多个expdp的文件,如expdp01.dmp,expdp02.dmp,expdp03dmp等等,不然会有问题。运行impdp命令时,会先启动一个WOrKER进程将METADATA导入,然后再启动多个WORKER进程将数据以及其他对象导入,所以在前期只会看到一个WOrKER在导入METADATA,而且IMPDP也需要DUMP文件是多个,也可以使用%U来进行导入。
eg: impdporcldev/oracledirectory=backup_path dumpfile=orcldev_schema_%U.dmpschemas=orcldev parallel=4
备注:
而在11GR2后EXPDP和IMDP的WORKER进程会在多个INSTANCE启动,所以DIRECTORY必须在共享磁盘上,如果没有设置共享磁盘还是指定cluster=no来防止报错。
10、CONTENT参数
CONTENT参数选项有ALL,DATA_ONLY和METADATA_ONLY,默认情况是ALL。可以选择只导入元数据或者是只导入数据。
EG:impdporcldev/oracledirectory=backup_path dumpfile=orcldev_schema.dmpschemas=orcldevCONTENT=DATA_ONLY
11、include、exclude、parfile、query和version参数选项与EXPDP命令的参数选项一致。
三、数据泵备份(EXPDP命令)
(1)http://www.cnblogs.com/oracle-dba/p/3344230.html
(2)http://docs.oracle.com/cd/B19306_01/server.102/b14215/dp_export.htm#i1007829
四、参考资料
ORACLE官网
(1)http://docs.oracle.com/cd/B19306_01/server.102/b14215/dp_import.htm#g1025464