[Data Pump]Learning Data Pump Step by Step -- (2) Data Pump Export

1. What Is Data Pump Export?

 

简单来说,Data Pump Export是Oracle提供的从数据库导出(unload)数据及元数据(metadata)到一系列的文件中(dump file set)的这么一种工具(utility). 这些生成的dump file set只可以被Data Pump Import导入到目标数据库中, 目标数据库既可以是在同一个Sever上,也可以是另外一个Server上。

 

Dump file set包含了表数据,数据库对象的元数据以及相关的控制信息,这些文件是二进制的。在进行导入的时候,Data Pump Import会通过这些文件来找到每个数据库对象在dump file set中的位置。

 

Data Pump Export支持不完全导出,也就是可以只导出一部分的数据和元数据,只需要在Export的时候指定需要过滤掉哪些data/metadata即可。

 

2. Invoking Data Pump Export

Data Pump Export是通过客户端命令expdp来触发调用的。Export操作可以通过设置参数或者指定参数文件来“定制”导出操作。

 

【Note】不要以SYSDBA的身份调用Export, 除非Oracle技术支持这么要求。

 

(1)Data Pump Export的接口

可以通过命令行,参数文件或者在交互模式下(interactive-command)来调用Data Pump Export工具。

- 命令行方式(Command-Line Interface): 这种方式下可以直接指定Export参数。

- 参数文件方式(Parameter File Interface): 可以把命令行方式下的参数放倒一个参数文件中。如果参数值包含引号的话,最好采用参数文件的方式来做。

- 交互模式 (Interactive-Command Interface): 可以在命令行模式(或参数文件模式)下按Ctrl+C来切换到交互模式,这样日志就不会显示到命令行终端,取而代之的是Export提示(prompt). 交互模式同样会在attach到export Job去执行或者停止Job的时候激活。

 

(2)Data Pump Export的模式

Data Pump Export支持的导出模式包括:

Full Export Mode, Schema Mode, Table Mode, Tablespace Mode, Transportable Tablespace Mode.

 

- Full Export Mode

通过设置参数FULL来实现全导出模式。顾名思义,这种方式下,整个数据库都会被导出。这种导出模式需要拥有EXP_FULL_DATABASE的角色。

 

- Schema Mode

这种方式是通过设置SCHEMAS参数来实现的,这同时也是默认的导出模式。如果你拥有EXP_FULL_DATABASE权限(role), 则你可以指定一个或者多个schema,而且可以包含schema的定义,甚至包括这些schema被赋予的系统权限都可以导出。如果没有EXP_FULL_DATABASE权限,只可以导出当前用户的schema.

需要注意的是,如果当前schema引用到其他schema中的对象,而那个schema没有包含在导出schema列表中,则这些schema引用不会被导出。

 

- Table Mode

这种方式是通过设置参数TABLES来实现的。在这种模式下,只有被指定的表,分区和他们依赖的数据库对象被导出。只有在拥有EXP_FULL_DATABASE权限的情况下才可以导出其他schema下的表,否则所有需要导出的表都必须位于当前的schema下。需要注意的是,表的列的类型定义(type definitions for columns)在这种模式下是不会被导出的。Export会假定(期望)改类型定义在目标数据库中是存在的(至少在Import的时候)。 同样在这种模式下,跨schema的引用是不会被导出的。

 

- Tablespace Mode

这种方式是通过设置参数TABLESPACES来实现的。在这种模式下,只有位于指定的表空间中的数据库对象才会被导出。如果一个表被导出了,那它所依赖的对象同样被导出。数据库对象的元数据和数据都会被导出。在这种模式下,如果一个表的任何一部分(i.e. 分区)位于指定的表空间上,那么这个表和它所依赖的数据库对象都会被导出。有权限的用户会得到所有的表,而非特权用户只会得到在他所在的schema下的表。

 

- Transportable Tablespace Mode

这种方式是通过设置参数TRANSPORTABLE_TABLESPACES参数来实现的。在这种模式下,只有位于指定表空间的表(以及其依赖的其他数据库对象)的元数据(Metadata)会被导出。这样,可以使得这些表空间对应的数据文件直接拷贝到目标数据库上,然后和Transportable Tablesace Import协同操作来完成整个导入操作。这种方式要求有EXP_FULL_DATABASE权限。

跟Tablespace Mode不同的是,这种模式要求导出的表的自包含的(self-contained),也就是说如果该表的分区表,则所有的分区都必须在指定的tablespace上。

这种方式的导出是不能够重启的,而且不能够并行执行(Parallelism 不能超过1)

【Note】不可以导出transportable tablespace,然后导入到一个低版本的数据库中。目标数据库必须跟导出数据库拥有相同的版本号,或者更高的版本号。 

 

(3)网络考虑(network considerations)

 可以在invoke Data Pump Export的时候 (expdp) 指定连接标识(connect identifier), 如下,(这样做主要是连接的instance可能跟当前环境变量SID不相同, 比如同一个Server装了不止一个数据库)

 

expdp hr / hr@inst1 DIRECTORY = dpump_dir1 DUMPFILE = hr.dmp TABLES = employees

 

 

这里面的inst1一般对应与tnasname.ora中的连接字符串,因此需要启动监听器。(lsnrctl start).  这种方式下,本地的expdp连接到inst1指定的数据库上进行导出。

 

注意不要将这种方式同设置NETWORK_LINK参数的Data Pump Export方式相混淆。在设置NETWORK_LINK的模式下,本地的expdp连接到connection string(如果存在的话)指定的数据库实例上,然后获取database link (NETWORK_LINK)指向的“远程”数据库,然后进行数据的导出。导出的数据被写到connect string指向的数据库server上。

 

3. Filtering During Export Operations

(1) Data Filters

通过设置参数QUERYSAMPLE来进行数据导出时的过滤。数据过滤也可以在进行metadata filtering的时候间接进行。

在一个Data Pump Export job中,每个table只可以进行一次数据过滤操作。如果不同的过滤(filter),作用于某个表或者整个job,碰巧又拥有相同的名字,这种情况下针对表的过滤优先选择。 

 

 (2) Metadata Filters

 Metadata的过滤是通过设置参数EXCLUDEINCLUDE来实现的。这两个参数是相互排他的。

需要注意的是,如果一个数据库对象被设置过滤(exclude/include),那依赖该object的所有其他object也同样会被过滤(exclude/include)。比如说一个表如果被include了,那表上的index, trigger等同样也会被include。

可以通过查看如下视图来得到哪些对象可以被filtered,

DATABASE_EXPORT_OBJECTS, SCHEMA_EXPORT_OBJECTS, TABLE_EXPORT_OBJECTS. 如下例所示, 

  

 

SQL > SELECT  object_path, comments  FROM  schema_export_objects
2      WHERE  object_path  LIKE   ' %GRANT '   AND  object_path  NOT   LIKE   ' %/% ' ;
 

 

 

 

 4. Parameters Available in Export's Command-Line Mode

 (1) ATTACH

 缺省默认值是当前user下的job,(如果只有一个job)

用法:ATTACH [=schema.]job_name] 

举例: expdp hr/hr ATTACH=hr.export_job

注意:在使用ATTACH的时候,处理user/pass参数之外,不能有其他参数。 

 

(2)COMPRESSION 

缺省默认值是:METADATA_ONLY

用途:用来设置是否对metadata进行压缩 

用法: COMPRESSION=(METADATA_ONLY | NONE)

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr_comp.dmp COMPRESSION=METADATA_ONLY

 

(3)  CONTENT

默认值:ALL

用途:用来设置export导出哪些数据,data only, metadata only, or both

用法:CONTENT={ALL | DATA_ONLY | METADATA_ONLY} 

举例:expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr.dmp CONTENT=METADATA_ONLY

注意:CONTENT=METADATA_ONLY不能和TRANSPORTABLE_TABLES参数一起使用。

 

(4)DIRECTORY

默认值:DATA_PUMP_DIR

用法: DIRECTORY=directory_object

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=employees.dmp CONTENT=METADATA_ONLY

 

(5) DUMPFILE

默认值:expdat.dmp

用法: DUMPFILE=[directory_object:]file_name [, ...]

举例: expdp hr/hr SCHEMAS=hr DIRECTORY=dpump_dir1 DUMPFILE=dpump_dir2:exp1.dmp, exp2%U.dmp PARALLEL=3

说明:在上面的这个例子里,exp1.dmp会放在dpump_dir2目录下,因为exp1.dmp设置了它自己的目录dpump_dir2; 而exp201.dmp, exp202.dmp(parallel 设置成3,而且用了替代变量%U,因此会生成两个dump文件)会放在dpump_dir1目录下。

 

(6) ENCRYPTION_PASSWORD

默认值:none

用法:ENCRYPTION_PASSWORD = password

注意:这个参数值知针对于表中的加密列, 而不会对整个dump file set加密。

( CREATE TABLE emp (col1 VARCHAR2(256) ENCRYPT IDENTIFIED BY "xyz")  

另外这个参数需要设置好Transparent Data Encryption才行。

 

(7) ESTIMATE

默认值: BLOCKS

用法:ESTIMATE={BLOCKS | STATISTICS}

注意:ESTIMATE只针对data, 不包括metadata 

举例: expdp hr/hr TABLES=employees ESTIMATE=STATISTICS DIRECTORY=dpump_dir1 DUMPFILE=estimate_stat.dmp

  

(8) ESTIMATE_ONLY

 默认值: n

用法:ESTIMATE_ONLY={y|n}

举例: expdp hr/hr ESTIMATE_ONLY=y NOLOGFILE=y

 

(9)EXCLUDE

默认值: none

用法:EXCLUDE=object_type[:name_clause][,..]

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr_exclude.dmp EXCLUDE=VIEW, PACKAGE, FUNCTION

 

(10)FILESIZE 

默认值: 0 (unlimited)

用法:FILESIZE=integer[B | K | M | G]

限制:文件大小的最小值是10倍的Data Pump block大小,即4K 

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr_3m.dmp FILESIZE=3m

  

 (11)FLASHBACK_SCN

 默认值: none

用法:FLASHBACK_SCN=scn_value

        导出操作会导出给定scn那个时刻的数据库数据。 

举例:expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr_scn.dmp FLASHBACK_SCN=36345345

注意:FLASHBACK_SCN和FLASHBACK_TIME是相互排他。

 

 (12)FLASHBACK_TIME

默认值: none

用法:FLASHBACK_TIME="TO_TIMESTAMP(time_value)"

举例: 因为TO_TIMESTAMP需要引号,最好放在参数文件中

       -- flashback.par

       DIRECTORY=dpump_dir1

       DUMPFILE=hr_time.dmp

       FLASHBACK_TIME="TO_TIMESTAMP('25-082003 14:35:00', 'DD-MM-YYYY HH24:MI:SS')" 

 

      > expdp hr/hr PARFILE=flashbak.par 

 

 (13) FULL

 默认值: n

用法:FULL={y|n}

举例:  expdp hr/hr DIRECTORY=dpump_dir2 DUMPFILE=expfull.dmp FULL=y NOLOGFILE=y

注意:以下系统schema不会包含在FULL database export,

       SYS, ORDSYS, EXFSYS, MDSYS, DMSYS, CTXSYS, ORDPLUGINS, LBACSYS, XDB, SI_INFORMTN_SCHEMA, DIP, DBSNMP, and WMSYS

 

 

 (14)HELP

 默认值: n

用法:HELP = { y | n }

举例:  expdp HELP = y

 

(15)INCLUDE

 默认值: none

用法:INCLUDE=object_type[ :name_clause] [, ...]

举例: expdp hr/hr INCLUDE=TABLE DUMPFILE=dpump_dir1:exp_inc.dmp NOLOGFILE=y

 

 (16)JOB_NAME

默认值: SYS_EXPORT_<mode>_NN

说明: Job的名字跟Master表的名字是一样的。 

用法:JOB_NAME=jobname_string

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=exp_job.dmp JOB_NAME=exp_job NOLOGFILE=y

 

 (17)LOGFILE

默认值: export.log

用法:LOGFILE=[directory_object:].file_name

注意:除非设置了参数NOLOGFILE, 否则总是会生成log文件的。 

        Data Pump Expor用Server端的字符集来写日志文件的,如果客户端的NLS_LANG环境变量的设置跟Server端不同,有可能会使得日志文件中的表的名字跟客户端看到的不太一样。

举例:expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr.dmp LOGFILE=hr_export.log

 

 

 (18)NETWORK_LINK

默认值:none

用法:NETWORK_LINK=source_database_link

注意: 如果source数据库是只读的,那么source数据库上的用户必须有一默认的locally managed临时表空间。

当NETWORK_LINK和TABLES参数一起使用时,该表会被整个导出,而不能指导出某个分区(如果是分区表的话)。

database link必须是public, fixed_user, and connected_user。 current_user db link是不支持的。

举例: expdp hr/hr DIRECTORY=dpump_dir1 NETWORK_LINK=source_database_link DUMPFILE=network_export.dmp LOGFILE=network_export.log

 

 (19)NOLOGFILE

默认值: n

用法:NOLOGFILE={y|n}

举例:  expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=hr.dmp NOLOGFILE=y

 

 (20)PARALLEL

默认值: 1

用法:PARALLEL=integer

注意:设置的这个参数值最好不要超过dump file set中的dump文件的数目。 

举例:expdp hr/hr DIRCTORY=dpump_dir1 LOGFILE=parallel_export.log JOB_NAME=part4_job DUMPFILE=par_exp%u.dump PARALLEL=4

说明:这个参数只在企业版的数据库中才支持。 

 

 (21)PARFILE

默认值:none

用法:PARFILE=[directory_path]file_name

举例:  -- hr.par

          SCHEMAS=HR

          DUMPFILE=ex.dmp

          DIRECTORY=dpump_dir1

          LOGFILE=exp.log

      >  expdp hr/hr parfile = hr.par 

 

 

(22)QUERY

默认值: none

用法:QUERY=[schema.][table_name:]query_clause

注意:参数QUERY不能和一下参数同事使用:

        CONTENT=METADATA_ONLY

        ESTIMATE_ONLY

        TRANSPORT_TABLESPACES

举例: expdp hr/hr parfile=query.par

         -- query.par

         QUERY=employees:' "WHERE department_id > 10 AND salary > 10000"'

          NOLOGFILE=y

          DIRECTORY=dpump_dir1

          DUMPFILE=exp1.dmp

           


 (23)SAMPLE

默认值: none

用法:SAMPLE=[[schema_name.]table_name:]sample_percent

注意:SAMPLE不适用于network exports 

举例:  expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=sample.dmp SAMPLE=70

 

 (24)SCHEMAS

默认值: 当前用户的schema

用法:SCHEMAS=schema_name [, ...]

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=expdat.dmp SCHEMAS=hr, sh, oe

 

 (25)STATUS

默认值: 0

用法:STATUS=[integer]

举例: expdp hr/hr DIRECTORY=dpump_dir1 SCHEMAS=hr, sh STATUS=300

 

 (26)TABLES

默认值: none

用法:TABLES=[schema_name.]table_name[:partition_name][, ...]

举例:  >expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=tables.dmp

TABLES=employees, jobs, departments

 

> expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=tables_part.dmp TABLES=sh.sales:sales_q1_2000, sh.sales:sales_Q2_2000 

 

 (27)TABLESPACES

默认值: none

用法:TABLESPACES=tablespace_name[, ...]

举例:expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=tbs.dmp TABLESPACES=tbs_4, tbs_5, tbs_6 

 

 (28)TRANSPORT_FULL_CHECK

默认值: n

注意:这个参数只适用于transportable-tablespace mode的导出。 

用法: TRANSPORT_FULL_CHECK={y|n}

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=tts.dmp TRANSPORT_TABLESPACES=tbs_1 TRANSPORT_FULL_CHECK=y LOGFILE=tts.log 

 

  (29)TRANSPORT_TABLESPACES

默认值: none

用法:TRANSPORT_TABLESPACES=tablespace_name [, ...]

注意: transportable jobs是不可以重启的

         transportable job并行度只能为1

         transportable tablespace  mode要求有EXP_FULL_DATABASE role. 

举例: expdp hr/hr DIRECTORY=dpump_dir1 DUMPFILE=tts.dmp TRANSPORT_TABLESPACE=tbs_1 TRANSPORT_FULL_CHECK=y LOGFILE=tts.log 

 

 (30)VERSION

默认值: COMPATIBLE

用法:VERSION={COMPATIBLE | LATEST | version_string }

举例: expdp hr/hr TABLES=hr.employees VERSION=LATEST DIRECTORY=dpump_dir1 DUMPFILE=emp.dmp NOLOGFILE=y

 

5.  How Data Pump Export Parameters Map to Those of the Original Export Utility

 

 下表列出了Data Pump Export和之前Export参数的对应情况, 

 

以前Export中参数    | Data Pump Export中的对应参数

------------------------------------------------------------------

BUFFER                       |             没有对应的参数,因为不需要了

COMPRESS                  |             没有对应的参数,不需要了

CONSISTENT               |             没有对应的参数,可以用FLASHBACK_SCN 和FLASHBACK_TIME 

CONSTRAINTS             |              EXCLUDE=CONSTRAINT

DIRECT   |             不需要了,因为Data Pump Export自动选择最优的方式 (Direct Path或者external tables) 

FEEDBACK                   |              STATUS

FILE    |              DUMPFILE

FILESIZE    |              FILESIZE

FLASHBACK_SCN          |              FLASHBACK_SCN

FLASHBACK_TIME         |              FLASHBACK_TIME

FULL            |              FULL

GRANTS    |              EXCLUDES=GRANT

HELP      |              HELP

INDEXES    |   EXCLUDE=INDEX

LOG    |              LOGFILE

OBJECT_CONSTRAINT    |             不需要了

OWNER                         |             SCHEMAS

PARFILE             |              PARFILE

QUERY     |              QUERY

RECORDLENGTH            |              不需要

RESUMABLE     |              不需要

RESUMABLE_NAME         |              不需要

RESUMABLE_TIMEOUT     |             不需要

ROWS=N                        |             CONTENT=METADATA_ONLY

ROWS=Y                        |             CONTENT=ALL

STATISTICS                    |             不需要,因为statistics总是会被保存

TABLES                          |              TABLES

TABLESPACES                 |             TABLESPACES

TRANSPORT_TABLESPACE |             TRANSPORT_TABLESPACES

TRIGGERS                       |      EXCLUDE=TRIGGER

TTS_FULL_CHECK             |             TRANSPORT_FULL_CHECK

USERID                           |             不需要这个参数,因为才invoke expdp的时候,用username/password就可以了

VOLSIZE                         |              不需要

 

 

6. Commands Available in Export's Interactive-Command Mode

 

在交互模式下(interactive-command mode), 当前的export job仍然在执行,只是终端(client)的显示会被挂起,export prompt会显示在客户端。

 

可以通过如下几种方式切换到交互模式

(1) 在expdp客户端,按下Ctrl+C

  (2)  新打开一个expdp客户端,输入参数ATTACH, 这样就会切换到交互模式下。

 

在expdp交互模式下可以完成以下操作:

(1) 增加dump文件, 借助命令ADD_FILE

(2) 离开交互模式: CONTINUE_CLIENT

(3) 离开expdp,但是让job继续执行: EXIT_CLIENT

(4)重新设置dump文件的大小,通过命令FILESIZE 

(5) 显示可用的命令:HELP

(6) 杀掉当前的Job: KILL_JOB

(7) 增加或减少active worker process的数目: PARALLEL命令

(8)重启Job: START_JOB

(9)显示当前Job的运行状态信息:STATUS

(10)暂停当前的job: STOP_JOB

 

 

 下面列出了每个命令的用法:

(1) ADD_FILE

用法:ADD_FILE=[directory_object]file_name [, ...]

举例: Export> ADD_FILE=hr2.dmp, dpump_dir2:hr3.dmp

 

(2) CONTINUE_CLIENT

用法:CONTINUE_CLIENT

举例:Export> CONTINUE_CLIENT

 

(3) EXIT_CLIENT

用法:EXIT_CLIENT

举例: Export> EXIT_CLIENT

说明:EXIT_CLIENT只是退出了客户端expdp,但是Job仍然在运行,可以通过 ATTACH重新连接到该Job. 可以通过查看视图USER_DATAPUMP_JOBS 和 V$SESSION_LONGOPS来查询Job的运行状态信息。

 

(4) FILESIZE

用法:FILESIZE=number

举例:Export > FILESIZE=100M

 

(5) HELP

用法:HELP

举例:Export> HELP

 

(6) KILL_JOB

用法:KILL_JOB

举例: Export> KILL_JOB

说明:通过KILL_JOB杀掉的Job不能够重启。 

 

(7) PARALLEL

用法:PARALLEL=integer

举例:PARALLEL=10

 

(8) START_JOB

用法:START_JOB

举例:Export> START_JOB

 

(9) STATUS

用法:STATUS [=integer]

举例:EXport>  STATUS=300

说明:数值表示每隔多长时间(单位为秒)刷新Job的状态信息,如果没有设置这个参数值,或者设置为0,则状态只显示一次,不会间隔刷新。

 

(10) STOP_JOB

用法:STOP_JOB[=IMMEDIATE]

举例:Export> STROP_JOB=IMMEDIATE

 

7. Examples of Using Data Pump Export

 

先做好以下准备工作先:

 

复制代码
sys @ORCL >   CREATE  DIRECTORY dpump_dir1  AS   ' E:\app\fangyu\product\11.1.0\wkdir ' ;

Directory created.

sys
@ORCL >   GRANT   READ , WRITE  ON  dpump_dir1  TO  hr;
GRANT   READ , WRITE  ON  dpump_dir1  TO  hr
                     
*
ERROR at line 
1 :
ORA
- 00942 table   or   view  does  not  exist


sys
@ORCL >   GRANT   READ , WRITE  ON   DIRECTORY  dpump_dir1  TO  hr;

Grant  succeeded.

sys
@ORCL >
复制代码

 

 


 (1) Table-Mode Export

 

 E:\>expdp hr/hr TABLES=employees, jobs DUMPFILE=dpump_dir1:table.dmp NOLOGFILE=y

复制代码

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   21 : 22 : 59

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
Starting "HR"."SYS_EXPORT_TABLE_01":   hr /* ******* TABLES=employees, jobs DUMPFILE=dpump_dir1:table.dmp NOLOGFILE=y
Estimate in progress using BLOCKS method...
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 128 KB
Processing object type TABLE_EXPORT/TABLE/TABLE
Processing object type TABLE_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type TABLE_EXPORT/TABLE/COMMENT
Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processing object type TABLE_EXPORT/TABLE/TRIGGER
Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
. . exported "HR"."EMPLOYEES"                            16.80 KB     107 rows
. . exported "HR"."JOBS"                                 6.984 KB      19 rows
Master table "HR"."SYS_EXPORT_TABLE_01" successfully loaded/unloaded
******************************************************************************
Dump file set for HR.SYS_EXPORT_TABLE_01 is:
  E:\APP\FANGYU\PRODUCT\11.1.0\WKDIR\TABLE.DMP
Job "HR"."SYS_EXPORT_TABLE_01" successfully completed at 21:23:28


E:\>
复制代码

 

 

(2) Data-Only Unload of Selected Tables and Rows

 

 创建一个参数文件exp.par,内容如下:


DIRECTORY
= dpump_dir1
DUMPFILE
= dataonly.dmp
CONTENT = DATA_ONLY
EXCLUDES
= TABLE :" IN  ( ' COUNTRIES ' ' REGIONS ' )"
QUERY
= employees:" WHERE  department_id  !=   50   ORDER   BY  employee_id"

 

 

 

复制代码

E:\ > expdp hr / hr PARFILE = E:\app\fangyu\product\ 11.1 . 0 \wkdir\ exp .par

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   21 : 34 : 13

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
Starting "HR"."SYS_EXPORT_SCHEMA_01" :  hr /* ******* PARFILE=E:\app\fangyu\product\11.1.0\wkdir\exp.par
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 384 KB
. . exported "HR"."DEPARTMENTS"                          7.015 KB      27 rows
. . exported "HR"."EMPLOYEES"                            13.65 KB      61 rows
. . exported "HR"."JOBS"                                 6.984 KB      19 rows
. . exported "HR"."JOBS_HIST"                            6.992 KB      19 rows
. . exported "HR"."JOB_HISTORY"                          7.054 KB      10 rows
. . exported "HR"."LOCATIONS"                            8.273 KB      23 rows
Master table "HR"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for HR.SYS_EXPORT_SCHEMA_01 is:
  E:\APP\FANGYU\PRODUCT\11.1.0\WKDIR\DATAONLY.DMP
Job "HR"."SYS_EXPORT_SCHEMA_01" successfully completed at 21:34:40
复制代码

 

 

 

(3)Estimating Disk Space Needed in a Table-Mode Export

 

 

复制代码

E:\
> expdp hr / hr DIRECTORY = dpump_dir1  ESTIMATE_ONLY = y  TABLES = employees, locations LOGFILE = estimate. log

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   21 : 38 : 32

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
Starting "HR"."SYS_EXPORT_TABLE_01":   hr /* ******* DIRECTORY=dpump_dir1 ESTIMATE_ONLY=y TABLES=employees, locations LOGFILE=estimate.log
Estimate in progress using BLOCKS method...
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
.  estimated "HR"."EMPLOYEES"                               64 KB
.  estimated "HR"."LOCATIONS"                               64 KB
Total estimation using BLOCKS method: 128 KB
Job "HR"."SYS_EXPORT_TABLE_01" successfully completed at 21:38:50

复制代码

 

 

(4) Performing a Schema-Mode Export

 

复制代码
E:\ > expdp hr / hr DUMPFILE = dpump_dir1:expschema.dmp LOGFILE = dpump_dir1:expschema. log

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   21 : 43 : 49

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
Starting "HR"."SYS_EXPORT_SCHEMA_01":  hr
/* ******* DUMPFILE=dpump_dir1:expschema.dmp LOGFILE=dpump_dir1:expschema.log
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 512 KB
Processing object type SCHEMA_EXPORT/
PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/SEQUENCE/SEQUENCE
Processing object type SCHEMA_EXPORT/TABLE/TABLE
Processing object type SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type SCHEMA_EXPORT/TABLE/COMMENT
Processing object type SCHEMA_EXPORT/PROCEDURE/PROCEDURE
Processing object type SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE
Processing object type SCHEMA_EXPORT/VIEW/VIEW
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/TRIGGER
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Processing object type SCHEMA_EXPORT/
POST_SCHEMA/PROCACT_SCHEMA
. . exported "HR"."COUNTRIES"                            6.375 KB      25 rows
. . exported "HR"."DEPARTMENTS"                          7.015 KB      27 rows
. . exported "HR"."EMPLOYEES"                            16.80 KB     107 rows
. . exported "HR"."JOBS"                                 6.984 KB      19 rows
. . exported "HR"."JOBS_HIST"                            6.992 KB      19 rows
. . exported "HR"."JOB_HISTORY"                          7.054 KB      10 rows
. . exported "HR"."LOCATIONS"                            8.273 KB      23 rows
. . exported "HR"."REGIONS"                              5.484 KB       4 rows
Master table "HR"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for HR.SYS_EXPORT_SCHEMA_01 is:
  E:\APP\FANGYU\PRODUCT\11.1.0\WKDIR\EXPSCHEMA.DMP
Job "HR"."SYS_EXPORT_SCHEMA_01" successfully completed at 21:44:30
复制代码

 

  

(5) Performing a Parallel Full Database Export

 

复制代码

E:\
> expdp hr / hr  FULL = y  DUMPFILE = dpump_dir1: full % U.dmp FILESIZE = 2G  PARALLEL = 3   LOGFILE = dpump_dir1:expful. log   JOB_NAME = expful

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   21 : 50 : 14

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
ORA
- 31631 privileges  are required
ORA - 39161 Full   database  jobs require  privileges
复制代码

 

 

 


sys
@ORCL >   GRANT   EXP_FULL_DATABASE  TO  hr;

Grant  succeeded.

sys
@ORCL >

 

 

E:\>expdp hr/hr FULL=y DUMPFILE=dpump_dir1:full%U.dmp FILESIZE=2G PARALLEL=3 LOGFILE=dpump_dir1:expful.log JOB_NAME=expful 
Full Database Export

 

 

  

(6) Using Interactive Mode to Stop and Reattach to a Job

 

复制代码

E:\
> expdp hr / hr  FULL = y DUMPFILE = dpump_dir1: full % U.dmp FILESIZE = 2G PARALLEL = 3  LOGFILE = dpump_dir1:expful. log  JOB_NAME = expful

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   22 : 00 : 53

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options
Starting "HR"."EXPFUL":  hr
/* ******* FULL=y DUMPFILE=dpump_dir1:full%U.dmp FILESIZE=2G PARALLEL=3 LOGFILE=dpump_dir1:expful.log JOB_NAME=expful
Estimate in progress using BLOCKS method...
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
复制代码

 

 

 这个时候按下Ctrl+C,进入交互模式, 然后停止这个Job,

  


Export >  STOP_JOB = IMMEDIATE
Are you sure you wish 
to  stop this job ( [ yes ] / no): yes


E:\
>

 

 

 现在重新attach到刚才的Job (expful)...

 

复制代码


E:\
> expdp hr / hr  ATTACH = EXPFUL

Export: Release 
11.1 . 0.6 . 0   -  Production  on  Wednesday,  03  March,  2010   22 : 05 : 32

Copyright (c) 
2003 2007 , Oracle.   All  rights reserved.

Connected 
to : Oracle  Database  11g Enterprise Edition Release  11.1 . 0.6 . 0   -  Production
With  the Partitioning, OLAP, Data Mining  and   Real  Application Testing options

Job: EXPFUL
  Owner: HR
  Operation: EXPORT
  Creator Privs: TRUE
  GUID: BB311C3A570D49E3A879DDAF02FE98D3
  Start Time: Wednesday, 
03  March,  2010   22 : 05 : 36
  Mode: 
FULL
  Instance: orcl
  
Max  Parallelism:  3
  EXPORT Job Parameters:
  Parameter Name      Parameter Value:
     CLIENT_COMMAND        hr
/* ******* FULL=y DUMPFILE=dpump_dir1:full%U.dmp FILESIZE=2G PARALLEL=3 LOGFILE=dpump_dir1:expful.log JOB_NAME=expful
  State: IDLING
  Bytes Processed: 0
  Current Parallelism: 3
  Job Error Count: 0
  Dump File: E:\app\fangyu\product\11.1.0\wkdir\full01.dmp
    size: 2,147,483,648
    bytes written: 4,096
  Dump File: E:\app\fangyu\product\11.1.0\wkdir\full%u.dmp
    size: 2,147,483,648

Worker 1 Status:
  Process Name: DW01
  State: UNDEFINED

Export>
复制代码

 

 

 然后可以通过命令CONTINUE_CLIENT回到logging模式,继续执行job, 

复制代码


Export
>   CONTINUE_CLIENT
Job EXPFUL has been reopened at Wednesday, 
03  March,  2010   22 : 05
Restarting "HR"."EXPFUL":  hr
/* ******* FULL=y DUMPFILE=dpump_dir1:full%U.dmp FILESIZE=2G PARALLEL=3 LOGFILE=dpump_dir1:expful.log JOB_NAME=expful
Estimate in progress using BLOCKS method...
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA

..... 

复制代码

 

 

 

 




---------
Regards, 
Fangwen.Yu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值