1.需要DBA用户授予系统权限CREATE ANY DIRECTORY

grant create any directory to ygqd;
 
2.创建外部目录指针

create directory YGQD_PUMP as '/home/db/oracle/pump';


select * from user_tab_privs a
inner join all_directories b on a.table_name=b.directory_name; 
 
3.将YGQD_PUMP目录上的READ和WRITE权限授予用户ecp_app
grant read,write on directory YGQD_PUMP to ecp_app;
 
4.将作业参数存储在一个参数文件中dp_ygqd.par
directory=YGQD_PUMP
dumpfile=YGQD.dmp
content=metadata_only
 
5.使用参数文件启动数据泵作业
expdp ygqd/ygqd@ecpdb parfile=dp_ygqd.par
 
6.停止和重启正在运行的作业
关闭窗口:Ctrl+C
退出客户程序:Export> exit_client
重启客户程序并连接:expdp ygqd/ygqd@ecpdb attach或者expdp ygqd/ygqd@ecpdb attach=exp_job_name
查看日志:Export>continue_client
停止作业(只是被挂起,未取消):Export>stop_job
开始作业:Export>start_job
 
6.使用EXCLUDE、INCLUDE和QUERY
如果CONTENT=DATA_ONLY,则不能指定EXCLUDE、INCLUDE
EXCLUDE=object_type[:\"=\'name_clause\'\"] [, …]
INCLUDE=object_type[:\"=\'name_clause\'\"] [, …]
QUERY=[schema.][table_name:] query_clause
 
select * from database_export_objects;
select * from schema_export_objects;
select * from table_export_objects;
 

7.导出

单张表导出
expdp ods/ods123@dwpt directory=DIR_ZX_PUMP dumpfile=AD28DKJY.dmp tables=ODS_HX_AD28DKJY logfile=AD28DKJY.log
多张表导出
expdp ods/ods123@dwpt directory=DIR_ZX_PUMP dumpfile=xxt.dmp tables=ods_xxt_cux_repayment_asset_if,ods_xxt_segment1_data_b logfile=xxt.log
查询条件导出
expdp ods/ods123@dwpt directory=DIR_ZX_PUMP dumpfile=xxt.dmp tables=ods_xxt_segment1_data_b logfile=xxt.log query='"where rownum<11"'
表空间导出
expdp lttfm/lttfm@fgisdb dumpfile=expdp_tablespace.dmp tablespaces=GCOMM.DBF logfile=expdp_tablespace.log directory=dir_dp
整库导出
expdp lttfm/lttfm@fgisdb dumpfile =full.dmp full=y logfile=full.log directory=dir_dp
按用户导
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dir_dp
 
 
Data Pump Export支持5中导出模式
Full(全库)                             导出数据库的所有数据和元数据
Schema(模式)                           导出特定用户模式的数据和元数据
Tablespace(表空间)                     导出表空间的数据何元数据
Table(表)                              导出表和表分区的数据和元数据
Transportable Tablespace(可移动表空间)  为了将一个表空间从一个数据库移动到另一个数据库而导出特定表空间和元数据
全库导出或可移动表空间导出,需要系统权限EXP_FULL_DATABASE
 
Data Pump Export选项
ATTACH                 将一个客户会话连接到一个当前运行的Data Pump Export作业上
COMPRESS               指定要压缩的数据:ALL、DATA_ONLY、METADATA_ONLY、NONE
CONTENT                筛选导出的内容:DATA_ONLY、METADATA_ONLY、ALL
DATA_OPTIONS           如果此参数设置为XML_CLOBS,则不压缩地导出XMLType列
DIRECTORY              指定用于日志文件和转储文件集的目的目录
DUMPFILE               为转储文件指定名字和目录,可使用多目录和文件:DUMPFILE=directory1:file1.dmp,directory2:file2.dmp
ENCRYPRION             输出的加密级别:ALL、DATA_ONLY、ENCRYPTED_COLUMNS_ONLY、METADATA_ONLY、NONE
ENCRYPTION_ALGORITHM   执行加密使用的加密方法:AES128、AES192、EAS256
ENCRYPTION_MODE        使用密码或Oracle钱夹或者二者都使用:DUAL、PASSWORD、TRANSPARENT
ESTIMATE               确定用于估计转储文件大小的方法:BLOCKS、STATISTICS
ESTIMATE_ONLY          用于向Data Pump指示是否应该导出数据或者只是进行估计:Y、N
EXCLUEDE               规定用于排除导出对象和数据的标准
FILESIZE               规定每个导出转储文件的最大文件尺寸
FLASHBACK_SCN          用于数据库在导出过程中闪回的系统更改号:SCN)
FLASHBACK_TIME         用于数据库在导出过程中闪回的时间戳:FLASHBACK_TIME
FULL                   在一个full模式导出下通知Data Pump导出所有的数据和元数据
HELP                   显示一个可用的命令和选项的清单
INCLUDE                规定用于导出对象和数据的标准
JOB_NAME               为作业指定一个名字,默认情况下是系统生成的名字
LOGFILE                导出日志的名字和可选的目录名
NETWORK_LINK           为一个导出远程数据库的Data Pump作业指定源数据库链接,需要使用本地表空间
NOLOGFILE              一个用于禁止创建日志文件的标记:Y、N
PARFILE                如果要使用参数文件的话,命名参数文件
PARALLEL               为Data Pump Export作业设置工作进程的数量
QUERY                  在导出过程中从表中筛选行
REMAP_DATA             指定能转换数据中一列或多列的函数,以便测试或屏蔽敏感数据
REUSE_DUMPFILES        覆盖已有的转储文件
SAMPLE                 指出数据块的百分比,以便轻松地从每个表中选择一定百分比的行
SCHEMAS                在一个Schema模式导出中命名将导出的模式
STATUS                 显示Data Pump作业的详细状态
TABLES                 列出将用于一个Table模式导出而导出的表和分区
TABLESPACES            列出将导出的表空间
TRANSPORT_FULL_CHECK   指定是否首先应该验证正在导出的表空间是一个自包含集
TRANSPORT_TABLESPACES  指定一个Transportable Tablespace模式导出
TRANSPORTABLE          只为表模式导出而导出元数据
VERSION                规定将创建的数据库对象的版本,以便兼容早期版本,包含COMPATIBLE、LATEST和版本号
 
Data Pump Export交互模式参数
ADD_FILE        添加转储文件
CONTINUE_CLIENT   退出交互模式并进入日志模式
EXIT_CLIENT       退出客户会话,但是允许服务器Data Pump Export作业继续运行
FILESIZE          重新为随后的转储文件定义默认大小
HELP              显示用于导入的联机帮助
KILL_JOB          取消当前的作业并释放相关的客户会话
PARALLEL          改变用于Data Pump Export作业的工作进程的数量
START_JOB         重新启动附属的作业
STATUS            显示Data Pump作业的详细状态
STOP_JOB          停止作业以便随后重启
posted on 2018-01-31 09:55  明星程序员  阅读(296)  评论(0)    收藏  举报