[Oracle] Data Pump 详细使用教程(2)- expdp
2013-07-24 11:29
363 查看
[Oracle] Data Pump 详细使用教程(1)- 总览 [Oracle] Data Pump 详细使用教程(2)- 总览 [Oracle] Data Pump 详细使用教程(3)- 总览 [Oracle] Data Pump 详细使用教程(4)- 总览 [Oracle] Data Pump 详细使用教程(5)- 总览
导出模式
有以下5种导出模式,它们之间是互斥的,不可以同时使用,注意:有些schemas是不能被导出的,如SYS,
ORDSYS,
and
MDSYS等。
Full模式
设置Full=y(默认为n),导出全库,例子:> expdp user_name FULL=y DUMPFILE=expdat.dmp DIRECTORY=data_pump_dir LOGFILE=export.log
Schema模式
导出一个或多个Schemas(参数SCHEMAS),默认导出当前用户的schema,只有拥有DATAPUMP_EXP_FULL_DATABASE角色才能导出其它Schemas, 例子:> expdp hr DIRECTORY=dpump_dir1 DUMPFILE=expdat.dmp SCHEMAS=hr,sh,oe
Table模式
导出表、分区以及它们依赖的对象,参数TABLES的语法如下:TABLES=[schema_name.]table_name[:partition_name] [, ...]
如果schema_name省略,表示导出当前用户schema下的表,
expdp hr TABLES=employees,jobs DUMPFILE=dpump_dir1:table.dmp NOLOGFILE=YES
Tablespace模式
导出一个或多个Tablespaces,参数TABLESPACES指定要导出的表空间> expdp hr DIRECTORY=dpump_dir1 DUMPFILE=tbs.dmp TABLESPACES=tbs_4, tbs_5, tbs_6
Transpotable Tablespace模式
只导出Tablespace的元数据,数据文件可由操作系统层拷贝> expdp hr DIRECTORY=dpump_dir1 DUMPFILE=tts.dmp TRANSPORT_TABLESPACES=tbs_1 TRANSPORT_FULL_CHECK=YES LOGFILE=tts.log
导出过程中的过滤
数据过滤
参数QUERY在行级别解析数据,其语法如下:QUERY = [schema.][table_name:] query_clause
下面是一个例子:
QUERY=employees:"WHERE department_id > 10 AND salary > 10000" NOLOGFILE=YES DIRECTORY=dpump_dir1 DUMPFILE=exp1.dmp
参数SAMPLE指定导出百分比,其语法如下:
SAMPLE=[[schema_name.]table_name:]sample_percent
下面是一个例子:
> expdp hr DIRECTORY=dpump_dir1 DUMPFILE=sample.dmp SAMPLE=70
元数据过滤
元数据解析采用EXCLUDE,INCLUDE参数,注意:它们俩互斥。EXCLUDE例子:
expdp FULL=YES DUMPFILE=expfull.dmp EXCLUDE=SCHEMA:"='HR'" > expdp hr DIRECTORY=dpump_dir1 DUMPFILE=hr_exclude.dmp EXCLUDE=VIEW, PACKAGE, FUNCTION
INCLUDE例子:
SCHEMAS=HR DUMPFILE=expinclude.dmp DIRECTORY=dpump_dir1 LOGFILE=expinclude.log INCLUDE=TABLE:"IN ('EMPLOYEES', 'DEPARTMENTS')" INCLUDE=PROCEDURE INCLUDE=INDEX:"LIKE 'EMP%'"
主要参数说明
CONTENT:指定只导出数据、元数据还是全部DIRECTORY:指定数据库定义的DIRECTORY对象
DUMPFILE:指定dump文件名,如果定义了PARALLEL和FILESIZE,一定要包含通配符%U,如:
> expdp hr SCHEMAS=hr DIRECTORY=dpump_dir1 DUMPFILE=dpump_dir2:exp1.dmp, exp2%U.dmp PARALLEL=3
ESTIMATE_ONLY:如果你只想事先评估下dump文件占用空间大小,可以指定ESTIMATE_ONLY=yes
FILESIZE:指定每个文件大小上限
HELP:如果忘记参数,可以执行expdp help=y 显示帮助信息
JOB_NAME:指定expdp的job名称,一般不用指定,系统会指定默认唯一的JOB_NAME,可以在logfile里查看该Job的名称
LOGFILE:指定日志文件名称,默认为export.log
PARALLEL:默认为1,即不启用并行,对于比较大的导出,建议适当增加并行度,但最大不能超过CPU个数的2倍
PARFILE:指定参数文件名称
REMAP_DATA:假设你从生产库导出敏感信息到测试库上,为了不让这些敏感信息泄露,可以在导出时对这些信息进行修改,从而达到保护敏感信息的作用。
REUSE_DUMPFILE:设置是否重用已有的DUMPFILE
相关文章推荐
- [Oracle] Data Pump 详细使用教程(4)- network_link
- [Oracle] Data Pump 详细使用教程(5)- 命令交互模式
- [Oracle] Data Pump 详细使用教程(1)- 总览
- [Oracle] Data Pump 详细使用教程(4)- network_link
- [Oracle] Data Pump 详细使用教程(5)- 命令交互模式
- [Oracle] Data Pump 详细使用教程(3)- impdp
- [Oracle] Data Pump 详细使用教程(1)- 总览
- ORACLE EXPDP/IMPDP命令使用详细 .
- oracle expdp 命令使用详细
- ORACLE expdp和impdp命令使用详细
- ORACLE EXPDP命令使用详细
- [Oracle] SQL*Loader 详细使用教程(4)- 字段列表
- ORACLE EXPDP命令使用详细
- ORACLE EXPDP命令使用详细
- ORACLE EXPDP命令使用详细
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
- [Oracle] SQL*Loader 详细使用教程(3)- 控制文件
- [Oracle] SQL*Loader 详细使用教程(2)- 命令行参数
- ORACLE EXPDP命令使用详细
- [Oracle] SQL*Loader 详细使用教程(1)- 总览