要學的東西很多,一直在努力中............!

EXPDP和IMPDP使用说明

上一篇 / 下一篇  2007-12-04 00:00:00 / 个人分类:ORACLE 開發

EXPDP和IMPDP使用说明

Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中.
#Io c/VQ li!bd7590422数据泵导出导入(EXPDP和IMPDP)的作用
d }+JGV5P](F75904221,实现逻辑备份和逻辑恢复.
HjK5OQ|1e4s75904222,在数据库用户之间移动对象.ITPUB个人空间*i"ZDsGSH
3,在数据库之间移动对象ITPUB个人空间i b5Z6h$Ek
4,实现表空间搬移.

数据泵导出导入与传统导出导入的区别
v,`q"j,b\%{%f @:m t7590422在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项;ITPUB个人空间#V LVk&^(BE2_/Qw
EXP和IMP是客户段工具程序,它们既可以在可以段使用,也可以在服务段使用.
%R4wAzUQ7590422EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用ITPUB个人空间j-~^ {:s4[zk"f&I
IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件.

数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式.ITPUB个人空间1AdP%O5tL
EXPDP命令行选项ITPUB个人空间8?PO IxiJOt `
1. ATTACHITPUB个人空间9A&S6][]0q] s#iE2|
该选项用于在客户会话与已存在导出作用之间建立关联.语法如下ITPUB个人空间P)Zx;Fp9{DksZ
ATTACH=[schema_name.]job_name
0?!ba.I U(f4V/W o&CC7590422Schema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:ITPUB个人空间,r {[{m)f8N3|c
Expdp scott/tiger ATTACH=scott.export_jobITPUB个人空间6DBvoP-q$|o w
2. CONTENTITPUB个人空间g\ oxE
该选项用于指定要导出的内容.默认值为ALL
2n6~,~B0|4v7590422CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
$R"Q^ D h qT(_7590422当设置CONTENT为ALL 时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义
~?O HzT/P n7590422Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump ITPUB个人空间t] e9v"O$RX
CONTENT=METADATA_ONLYITPUB个人空间:Lk j3^$u/i
3. DIRECTORY
)pr~%f`)]@;e7590422指定转储文件和日志文件所在的目录ITPUB个人空间l)rIeN/\ z
DIRECTORY=directory_objectITPUB个人空间_G,z2I5J&M
Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS 目录ITPUB个人空间;f ]?+AMo'V
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump

建立目录:
O/ZzH6Rn7590422CREATE DIRECTORY dump as ‘d:dump’;ITPUB个人空间pVS*p+c5HK] n
查询创建了那些子目录:
!bc[6lr Zy7590422SELECT * FROM dba_directories;
a X;?x5I I75904224. DUMPFILEITPUB个人空间u6X"p{1Gl3V1vFh#Qd
用于指定转储文件的名称,默认名称为expdat.dmp
'^ w,kP.g.f7590422DUMPFILE=[directory_object:]file_name [,….]
MG8gJ2EF~LX7590422Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象
-i` M2}4HC y8c'`7590422Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmpITPUB个人空间2x+|5wY,P
5. ESTIMATEITPUB个人空间 ?$Mv2lO6V@
指定估算被导出表所占用磁盘空间分方法.默认值是BLOCKSITPUB个人空间~Gq5HM7q9TF
EXTIMATE={BLOCKS | STATISTICS}
6{Pq4D*d SSl7590422设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间ITPUB个人空间[l/_FJ*E9O-q8O`H
Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS
G3?.UD]Ni ds7590422DIRECTORY=dump DUMPFILE=a.dump

6. EXTIMATE_ONLY
1a7_8oO'_7590422指定是否只估算导出作业所占用的磁盘空间,默认值为NITPUB个人空间_&k(M-|M Y|
EXTIMATE_ONLY={Y | N}
5D pnviI i*^0g7590422设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作.ITPUB个人空间{n:B7sdjw
Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=yITPUB个人空间-K:QcE t
7. EXCLUDE
MD8H&yl}(Qwz7590422该选项用于指定执行操作时释放要排除对象类型或相关对象
O3M ` cJ5Le7590422EXCLUDE=object_type[:name_clause] [,….]ITPUB个人空间 K-c0y)^}4?j4n
Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE和INCLUDE不能同时使用
!u q p4M1WE%YGJ7590422Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEWITPUB个人空间h*xBXdU[q4L
8. FILESIZE
)fe'X pq4W0S6U7590422指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)ITPUB个人空间-{?BV2q0?B
9. FLASHBACK_SCNITPUB个人空间{;Sp5bj
指定导出特定SCN时刻的表数据
1E Xq$E y(Y7590422FLASHBACK_SCN=scn_valueITPUB个人空间8|k^VGb&o4@0i B2_
Scn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用ITPUB个人空间*s7W%Q7jL
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp
"}(\1SE|L/bw9F-t7590422FLASHBACK_SCN=358523
TWMQM1O.]759042210. FLASHBACK_TIMEITPUB个人空间;[A$N$U&e%@:_Q
指定导出特定时间点的表数据ITPUB个人空间2k(t!}ZX.q$]q O
FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”
3So"x?9bq:u7590422Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=
W9g5C*G%H7590422“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”

11. FULLITPUB个人空间7M!|%aU5IC
指定数据库模式导出,默认为NITPUB个人空间o](S*Q#W J)D,\ W
FULL={Y | N}ITPUB个人空间?]|^!|5Yc)N|$Y
为Y时,标识执行数据库导出.
mQ-z9q%Va1n759042212. HELPITPUB个人空间Z4`n"IN;y!rA
指定是否显示EXPDP命令行选项的帮助信息,默认为N
C PIV,m dW6p Y\7590422当设置为Y时,会显示导出选项的帮助信息.ITPUB个人空间!seB/ec rl4j z
Expdp help=y
&f4WO(eh;sY.m G759042213. INCLUDEITPUB个人空间$N:fCeUX(y
指定导出时要包含的对象类型及相关对象ITPUB个人空间,W@:s tV9k t} R
INCLUDE = object_type[:name_clause] [,… ]
CD!VC*MM,D759042214. JOB_NAMEITPUB个人空间@e.["K`Hj1i
指定要导出作用的名称,默认为SYS_XXX
},m;t8i+Xw7590422JOB_NAME=jobname_stringITPUB个人空间#@og*k/uS0w1q%M
15. LOGFILEITPUB个人空间L$IENvJ'g"A1`I
指定导出日志文件文件的名称,默认名称为export.log
DYpAn/F_:qF7590422LOGFILE=[directory_object:]file_nameITPUB个人空间)yj Qz4ZeKvj7y#j
Directory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值.
z4yTp4OQ]P7590422Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.logITPUB个人空间)Cf(a^i
16. NETWORK_LINK
U a!n)xp7590422指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.ITPUB个人空间 Q q3u w/L
17. NOLOGFILEITPUB个人空间3\/x"K)[.D \
该选项用于指定禁止生成导出日志文件,默认值为N.
? k"S/@ o5_ KX7U759042218. PARALLEL
%Y~ g.@j V!I7590422指定执行导出操作的并行进程个数,默认值为1ITPUB个人空间 j-Hu/C;iw/Y7mL
19. PARFILE
*_n7|V3FLs h7590422指定导出参数文件的名称
:q}#vO[J5d0^X/A/c S7590422PARFILE=[directory_path] file_name
m)w8C9Y;]W759042220. QUERYITPUB个人空间1Bv$fH7bK%C
用于指定过滤导出数据的where条件
e*Z4?A6uI7590422QUERY=[schema.] [table_name:] query_clauseITPUB个人空间 a5[HJA0C
Schema用于指定方案名,table_name用于指定表名,query_clause用于指定条件限制子句.QUERY选项不能与CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES等选项同时使用.ITPUB个人空间2P)@L m RN7J+~ hd
Expdp scott/tiger directory=dump dumpfiel=a.dmpITPUB个人空间K J;uLO)T+md
Tables=emp query=’WHERE deptno=20’ITPUB个人空间Da?D*bco g
21. SCHEMASITPUB个人空间q]!VHTwuC
该方案用于指定执行方案模式导出,默认为当前用户方案.
Xl'Z+iA)w759042222. STATUSITPUB个人空间E^Yo&qx#B#B(x*Si
指定显示导出作用进程的详细状态,默认值为0
E&k9BO)rL3{~d759042223. TABLES
&R9`{ca!NpR7590422指定表模式导出
SrJ,L0zj7590422TABLES=[schema_name.]table_name[:partition_name][,…]
oxj%_2SzU&Y7590422Schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.ITPUB个人空间cOk;eTO
24. TABLESPACESITPUB个人空间9i q A+T6m'E NE~i
指定要导出表空间列表ITPUB个人空间h2K#ie(@*z
25. TRANSPORT_FULL_CHECK
Z+`APl7590422该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N.
1p2v8k8QI$O9]J;r7590422当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.当设置为N时,导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.

26. TRANSPORT_TABLESPACESITPUB个人空间@"sTnB5y Ce j
指定执行表空间模式导出ITPUB个人空间h5xo+IX}
27. VERSIONITPUB个人空间O$aZ5G)H[
指定被导出对象的数据库版本,默认值为COMPATIBLE.ITPUB个人空间Y3X8~,sPA#usv
VERSION={COMPATIBLE | LATEST | version_string}
F3O%L&aF%rZ7590422为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.

调用EXPDPITPUB个人空间8c"Gs,rO)E$n g
使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录.因此,使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.ITPUB个人空间KYh(mts {5[*v|
CREATE DIRECTORY dump dir AS ‘D:DUMP’;ITPUB个人空间/p)h2a/`a#j5e0M*c+rl"Ul
GRANT READ, WIRTE ON DIRECTORY dump_dir TO scott;
6w)sFW+Q"?D75904221,导出表
'WH)LyW0\J$m7590422Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,empITPUB个人空间^0U i*p9A8a]
2,导出方案ITPUB个人空间o c6CZsJ-g
Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp ITPUB个人空间g9Y)x-o(t @J
SCHEMAS=system,scottITPUB个人空间Y&lun9s`[u(C
3.导出表空间ITPUB个人空间t"X;Fl*t[W
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmpITPUB个人空间0ss#]{f+OR
TABLESPACES=user01,user02ITPUB个人空间zA-jWv^C#X*J8vp(F
4,导出数据库ITPUB个人空间(q oGuSt F%L
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y

ITPUB个人空间X$T6U:uF6y&d
使用IMPDPITPUB个人空间6[1o}5_1jk-^B
IMPDP命令行选项与EXPDP有很多相同的,不同的有:ITPUB个人空间?5Gob Q$Cz"[
1,REMAP_DATAFILE
O Ra"V&?;@T:j7590422该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.
j'c9BN.S8t7590422REMAP_DATAFIEL=source_datafie:target_datafile
4^%zp+D+X75904222,REMAP_SCHEMAITPUB个人空间V_e1u7\!u6f/I7i
该选项用于将源方案的所有对象装载到目标方案中.ITPUB个人空间ETt.n RJ&gx{A$\8h
REMAP_SCHEMA=source_schema:target_schema
-fp(~n&WZd QC X75904223,REMAP_TABLESPACEITPUB个人空间0r \v J0D:[7U,um
将源表空间的所有对象导入到目标表空间中ITPUB个人空间3D} pBz'zU1C#n
REMAP_TABLESPACE=source_tablespace:target:tablespace
J4mp&S oM9fG75904224.REUSE_DATAFILESITPUB个人空间E,t*A:W,N
该选项指定建立表空间时是否覆盖已存在的数据文件.默认为N
)V4Z)s:J&e7590422REUSE_DATAFIELS={Y | N}
\vje6_ E3q8z8`[}a75904225.SKIP_UNUSABLE_INDEXESITPUB个人空间'm4H l| g{!u]
指定导入是是否跳过不可使用的索引,默认为N

ITPUB个人空间u A)d)i,^5Oc
6,SQLFILE
(yZ0b(c~,Y7590422指定将导入要指定的索引DDL操作写入到SQL脚本中
DHur&C-b7590422SQLFILE=[directory_object:]file_name
%g8N |&?&L`:a7590422Impdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql
a6]1d9? _?;s75904227.STREAMS_CONFIGURATIONITPUB个人空间Tj'W T/f
指定是否导入流元数据(Stream Matadata),默认值为Y.ITPUB个人空间&Dk?]2[? J$W
8,TABLE_EXISTS_ACTION
(D I/P.HrO7590422该选项用于指定当表已经存在时导入作业要执行的操作,默认为SKIP
8l~8I4I Hn2b^7590422TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
4n3AM d*U5o7590422当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项
7n!JP'S"}$OH`J75904229.TRANSFORM
!e#i&l1Uv"E r7590422该选项用于指定是否修改建立对象的DDL语句
x1p8y!i8j+v/I&fy7m#[7590422TRANSFORM=transform_name:value[:object_type]
6lV,n4ti-k:u P7590422Transform_name用于指定转换名,其中SEGMENT_ATTRIBUTES用于标识段属性(物理属性,存储属性,表空间,日志等信息),STORAGE用于标识段存储属性,VALUE用于指定是否包含段属性或段存储属性,object_type用于指定对象类型.ITPUB个人空间 z#Y2?8lRJA
Impdp scott/tiger directory=dump dumpfile=tab.dmpITPUB个人空间BYh9[s{gM
Transform=segment_attributes:n:table
I6s0fwE759042210.TRANSPORT_DATAFILES
z MeYbF"S7590422该选项用于指定搬移空间时要被导入到目标数据库的数据文件ITPUB个人空间^w.{;MF
TRANSPORT_DATAFILE=datafile_name
gA3c$Ua)dI7@7590422Datafile_name用于指定被复制到目标数据库的数据文件ITPUB个人空间j3gL[OJ;?S
Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp
/K~z7B)RL#u2k4|(S7590422TRANSPORT_DATAFILES=’/user01/data/tbs1.f’

调用IMPDPITPUB个人空间R-Ts1~2bM/m j,}h8h;T
1, 导入表
t"F m B4G4eg{b`7590422Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmpITPUB个人空间Ljh2~!g
TABLES=dept,emp

Impdp system/manage DIRECTORY=dump_dir DUMPFILE=tab.dmpITPUB个人空间5kl#hZTkO H.c}P
TABLES=scott.dept,scott.emp REMAP_SCHEMA=SCOTT:SYSTEMITPUB个人空间;c9Ou4q G
第一种方法表示将DEPT和EMP表导入到SCOTT方案中,第二种方法表示将DEPT和EMP表导入的SYSTEM方案中.ITPUB个人空间hz!c@6mx7n0~
注意,如果要将表导入到其他方案中,必须指定REMAP SCHEMA选项.

2,导入方案ITPUB个人空间:C!C"g0|t2Ibt
Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmpITPUB个人空间?4u Hnmj,l5|$vF
SCHEMAS=scott

Impdp system/manager DIRECTORY=dump_dir DUMPFILE=schema.dmpITPUB个人空间L,JL.mt4}6HP
SCHEMAS=scott REMAP_SCHEMA=scott:system
hcb p*y f7P {jMH75904223,导入表空间
nU/r;l(H _7590422Impdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp
-G9[L*|!a)f7590422TABLESPACES=user01ITPUB个人空间\G;{Pc7v
4,导入数据库
s:E n'M0F+eB9k+a7590422Impdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y

ITPUB个人空间#I8R9{j p+l

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-01-27  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 264
  • 日志数: 390
  • 图片数: 1
  • 建立时间: 2007-12-13
  • 更新时间: 2008-01-21

RSS订阅

Open Toolbar