分类: Oracle
2009-03-31 19:19:51
一、关于数据泵的概述
二、数据泵的使用
示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
注意到与EXP不同,EXPDP增加了一个主要的参数:DIRECTORY
这个参数是用来定义一个路径,前面已经提到,数据泵主要在Server端工作,导出文件需要写出到Server端本地目录,这个DIRECTORY就是对应的Server端的路径
如:
//创建目录
create or replace directory
//查找目录
SQL> select * from dba_directories;
//给test赋予目录的读写权限
grant read,write on directory expdir to test;
//导出数据
C:\>expdp
三、EXPDP/IMPDP的停止与重启动
EXPDP和IMPDP的本质在于,通过API调用,把传统的EXP/IMP类交付式模式的操作,转变成数据库内部的job任务,从而实现了任务的可终止与重启动。
c:\expdp directory=dpdata dumpfile=full.dmp full=y job_name=expfull
在执行过程中,可以拿下Ctrl+C组合键,退出当前交互模式,退出之后,导出操作不会停止,这不同于Oracle以前的EXP。以前的EXP,如果退出交互式模式,就会出错终止导出任务。
在Oracle 10中,由于EXPDP是数据库内部定义的任务,已经与客户端无关。退出交互之后,会进入export的命令行模式,此时支持status等查看命令:
Export> status
如果想停止改任务,可以发出stop_job命令
Export> stop_job
如果有命令行提示
是否确实要停止此作业([Y]/N):
或
Are you sure you wish to stop this job ([yes]/no):
回答应是yes或者no
接下来可以通过命令行再次连接到这个任务
c:\expdp attach=expfull
通过start_job命令重新启动导出
Export> start_job
4、EXPDP排出部分对象的导出
在EXPDP的帮助文件中,可以看到存在EXCLUDE和INCLUDE参数
这个两个参数文档中介绍的命令格式存在问题,这个两个参数的正确用法是:
EXCLUDE=OBJECT_TYPE[:name_clause][,...]
INCLUDE=OBJECT_TYPE[:name_clause][,...]
示例:
expdp
impdp
有了这些还不够,由于命令中包含了多个特殊字符,在不同的操作系统下需要通过转义字符才能使上面的命令顺利执行
如:EXCLUDE=TABLE:\"IN('BIGTALE')\"