十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。

IMPDP table_exists_action 参数的应用

上一篇 / 下一篇  2011-04-15 08:49:11 / 个人分类:Oracle

当使用IMPDP完成数据库导入时,如遇到表已存在时,Oracle提供给我们如下四种处理方式:
!t%L;f9Q[O `(b0a.忽略(SKIP,默认行为);51Testing软件测试网JW(k3^ [r3pl
b.在原有数据基础上继续增加(APPEND);51Testing软件测试网8_V~*}i8U
c.先DROP表,然后创建表,最后完成数据插入(REPLACE);51Testing软件测试网6f] e-e6O'A*s7z/Q
d.先TRUNCATE,再完成数据插入(TRUNCATE)。
Af#vR5FP0下面做实验来看看几种方式的效果:
v0T1?7p9hx2H [I5n#]0==============================REPLACE=================================
;K)LR dE0
h^ OT0_S w q0C:\Users\aaaa>impdp \"system/yang as sysdba \"  remap_schema=scott:scott  directory=dumpdir  51Testing软件测试网R*[.KcL"jY[;JY
dumpfile=scott_%U.dmp table_exists_action=replacelogfile=scott_impdp_replace.log
0jbQ]0mV)UN1Ps0Import: Release 11.1.0.6.0 - Production on 星期一, 14 3月, 2011 15:40:2651Testing软件测试网~A T2c nw9K
Copyright (c) 2003, 2007, Oracle.  All rights reserved.51Testing软件测试网+xAY$iGFJ
连接到: Oracle Database11gEnterprise Edition Release 11.1.0.6.0 - Production
:gl1z.R2Yd M[6X0With the Partitioning, OLAP, Data Mining and Real Application Testing options51Testing软件测试网*d8y q7jX]
已成功加载/卸载了主表 "SYS"."SYS_IMPORT_FULL_01"
[i-^3d2l2[6D0启动 "SYS"."SYS_IMPORT_FULL_01":  "system/******** AS SYSDBA" remap_schema=scott:scott directory=dum51Testing软件测试网3}8S}!^l^7\
pdir dumpfile=scott_%U.dmp table_exists_action=replace logfile=scott_impdp_replace.log
c9^+O X$U7c0处理对象类型 SCHEMA_EXPORT/USER51Testing软件测试网l [ _RC8ML~4a
ORA-31684: 对象类型 USER:"SCOTT" 已存在
cH._a"Q\5M\2l'n*^0处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
{,qF3Tk$UH4x1x0处理对象类型 SCHEMA_EXPORT/ROLE_GRANT51Testing软件测试网!`a-j/k O5H6Y s1X(f;W
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE51Testing软件测试网ZeUz1i^9d O
处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
r!^7N Fx U|$k?0处理对象类型 SCHEMA_EXPORT/TABLE/TABLE51Testing软件测试网\s.Y-dp5JY
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA51Testing软件测试网5?_&xn&b.[6s#Q%[!r+o
. . 导入了 "SCOTT"."DEPT"                              5.937 KB       4 行51Testing软件测试网 ] ?o5I+b9|J$GZ2X
. . 导入了 "SCOTT"."EMP"                               8.570 KB      14 行51Testing软件测试网N Z1m'wL?7s:^z;@b@&?
. . 导入了 "SCOTT"."EXPTAB"                            5.015 KB       2 行51Testing软件测试网4]4e},Q2[Y ?
. . 导入了 "SCOTT"."SALGRADE"                          5.867 KB       5 行
4OH@-X5U0. . 导入了 "SCOTT"."BONUS"                                 0 KB       0 行51Testing软件测试网s*V8~5}&t
处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT51Testing软件测试网 k h#{a:nM^
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX51Testing软件测试网8@N(nb0m6H
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
~^j I&?/zM0处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
/fmQ]4e1Ogn0处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
a:W6mt4YI.] kCi0ORA-31684: 对象类型 FUNCTION:"SCOTT"."EXP_FUNC" 已存在51Testing软件测试网_%cs~vI
处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION51Testing软件测试网R(DX4V.F V%Vy
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
8cw[3x_'P'^0处理对象类型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
wR,a/wF7y#|$Z!M:`[0处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA51Testing软件测试网:Y)}@{!ln {I n
作业 "SYS"."SYS_IMPORT_FULL_01" 已经完成, 但是有 2 个错误 (于 15:40:31 完成)51Testing软件测试网 Jc J2|tI&e

v8S`%rno:Sp0===============================APPEND=====================================================51Testing软件测试网rk Q)C8T B({c+B
C:\Users\aaaa>impdp \"system/yang as sysdba \"  remap_schema=scott:scott  directory=dumpdir  dumpfil
5\ n$C4gc3}u]0e=scott_%U.dmp  table_exists_action=append logfile=scott_impdp_append.log51Testing软件测试网YE,anz'^"B
Import: Release 11.1.0.6.0 - Production on 星期一, 14 3月, 2011 15:42:2451Testing软件测试网x]WNc
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
p5G3hf O@0连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
yc;W.U*j.A&Q[W0With the Partitioning, OLAP, Data Mining and Real Application Testing options51Testing软件测试网;Ew7SE {A d)Y
已成功加载/卸载了主表 "SYS"."SYS_IMPORT_FULL_01"
W9B ^8nc7Z]7xQ0启动 "SYS"."SYS_IMPORT_FULL_01":  "system/******** AS SYSDBA" remap_schema=scott:scott directory=dum
p2bJ.p#V;go0pdir dumpfile=scott_%U.dmptable_exists_action=appendlogfile=scott_impdp_append.log
_'t NbI;T+{0处理对象类型 SCHEMA_EXPORT/USER
nB)b nH0ORA-31684: 对象类型 USER:"SCOTT" 已存在51Testing软件测试网d$h#g0OQ%^7B)@"^/{
处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
9D _ W)j8K:X8c'LM0处理对象类型 SCHEMA_EXPORT/ROLE_GRANT51Testing软件测试网B hq$AOT;Qz)`
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE51Testing软件测试网XmZa_ d
处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
8a:Lk7l Q` h|*w5e0处理对象类型 SCHEMA_EXPORT/TABLE/TABLE
_3IU mQvz-Ac1s0ORA-39152: 表 "SCOTT"."DEPT" 已存在。由于附加了 table_exists_action, 数据将附加到现有表, 但是将跳过
M~'My;G!V0所有相关元数据。
hRT#z7T5@~7G0ORA-39152: 表 "SCOTT"."EMP" 已存在。由于附加了 table_exists_action, 数据将附加到现有表, 但是将跳过所51Testing软件测试网Tgr%E!dt.v
有相关元数据。
%Q Oq8g3| wh7w ]H6]0ORA-39152: 表 "SCOTT"."BONUS" 已存在。由于附加了 table_exists_action, 数据将附加到现有表, 但是将跳过
#DJ*H N[&b6R)vP+e8L6d0所有相关元数据。
i!l~B lv\"E L+T0ORA-39152: 表 "SCOTT"."SALGRADE" 已存在。由于附加了 table_exists_action, 数据将附加到现有表, 但是将51Testing软件测试网T'wt'bXXcE
跳过所有相关元数据。
-R^@/_"F9Pm,N0ORA-39152: 表 "SCOTT"."EXPTAB" 已存在。由于附加了 table_exists_action, 数据将附加到现有表, 但是将跳
S1q1Aa,zCa t(?0过所有相关元数据。
,X/Wu)t:sq AY0处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA51Testing软件测试网5axw:f3n.j2p
ORA-31693: 表数据对象 "SCOTT"."DEPT" 无法加载/卸载并且被跳过, 错误如下:51Testing软件测试网x8p kU8~$GcQv EP,s|
ORA-00001: 违反唯一约束条件 (SCOTT.PK_DEPT)51Testing软件测试网%f"qN+ZO&N(uJt-be3U
ORA-31693: 表数据对象 "SCOTT"."EMP" 无法加载/卸载并且被跳过, 错误如下:51Testing软件测试网 aeTN7WnY.Nx
ORA-00001: 违反唯一约束条件 (SCOTT.PK_EMP)
K[v/fQXly-F0. . 导入了 "SCOTT"."EXPTAB"                            5.015 KB       2 行
aBK9]Aw%v0. . 导入了 "SCOTT"."SALGRADE"                          5.867 KB       5 行51Testing软件测试网 bY BZ-Y^
. . 导入了 "SCOTT"."BONUS"                                 0 KB       0 行51Testing软件测试网%?;XZ]8L&Le A+@
处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
U.]*eA3eHd0处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX
kX;}Bh:r*Y6^,r0处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT51Testing软件测试网 H AD8s)_ Xc{~
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
F8kvZ U$W0处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
(M:]|f}] a#n0ORA-31684: 对象类型 FUNCTION:"SCOTT"."EXP_FUNC" 已存在51Testing软件测试网B%`X/W+|2@g^
处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION51Testing软件测试网)j @/{ J Z/ea
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT51Testing软件测试网4y)w|&?p2te
处理对象类型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
#r;qe0@ y2k0处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA51Testing软件测试网O(RBy)e1]
作业 "SYS"."SYS_IMPORT_FULL_01" 已经完成, 但是有 9 个错误 (于 15:42:31 完成)
/J(JXL2J(G4k051Testing软件测试网9qB"B-\B$HW
===========================SKIP==============================================
o3vx7GL\r/cl0C:\Users\aaaa>impdp \"system/yang as sysdba \"  remap_schema=scott:scott  directory=dumpdir  dumpfil51Testing软件测试网+Yk3Ax ?pa7|/p)C
e=scott_%U.dmp table_exists_action=skiplogfile=scott_impdp_skip.log51Testing软件测试网:yD!l!g9uy4t#Q(I

zBsW3G3ZvZ,F!z6iN0Import: Release 11.1.0.6.0 - Production on 星期一, 14 3月, 2011 16:01:1851Testing软件测试网.` o n!ep'?W O
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
Ux6ox/RdI)d2@2P0连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production51Testing软件测试网"j Zu }2[:Ht
With the Partitioning, OLAP, Data Mining and Real Application Testing options
B&^n(U waR0已成功加载/卸载了主表 "SYS"."SYS_IMPORT_FULL_01"
zEZz8L$S iF#U U0启动 "SYS"."SYS_IMPORT_FULL_01":  "system/******** AS SYSDBA" remap_schema=scott:scott directory=dum51Testing软件测试网8WnR1eOX%If X
pdir dumpfile=scott_%U.dmp table_exists_action=skip logfile=scott_impdp_skip.log
R|.iRGj x P0处理对象类型 SCHEMA_EXPORT/USER
(DNN:c7r4{3K7G?0ORA-31684: 对象类型 USER:"SCOTT" 已存在
]a P_tR0处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT51Testing软件测试网Z8o i~*rN`o
处理对象类型 SCHEMA_EXPORT/ROLE_GRANT51Testing软件测试网q8TX*NctM6V5L
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE
[~ zb\3Q]D4q`0处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA51Testing软件测试网qLNP8rp
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE
N)jY(~\.O0ORA-39151: 表 "SCOTT"."DEPT" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据。51Testing软件测试网.A ZE1O'l&K
ORA-39151: 表 "SCOTT"."EMP" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据。51Testing软件测试网 g2Cgz edc C
ORA-39151: 表 "SCOTT"."BONUS" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据。
2U-n7NO;F$A9x/a5{0ORA-39151: 表 "SCOTT"."SALGRADE" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据51Testing软件测试网)X yd9xk"}-s daJ

2LFn/rd8|H8P0ORA-39151: 表 "SCOTT"."EXPTAB" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据。51Testing软件测试网8}#Y}6xt!k
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
,rS&tF~'N_p)q"q0处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
}"IG {*YM-\/G0处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX
2P/`d3F){ y'h0处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT51Testing软件测试网%wup8ib9@4atX ?
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
m-N[%c.xJ0处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
Rv.naz0ORA-31684: 对象类型 FUNCTION:"SCOTT"."EXP_FUNC" 已存在51Testing软件测试网$^4F,a+o,UBg
处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION
^n I$xt0处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT51Testing软件测试网2Uj+s3ui'}u
处理对象类型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS51Testing软件测试网;Q9rw9b G)I'is+}
处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA51Testing软件测试网2y.d*[Va}3Gx
作业 "SYS"."SYS_IMPORT_FULL_01" 已经完成, 但是有 7 个错误 (于 16:01:22 完成)51Testing软件测试网0n-| }!Gb%i^

`[7y*Uw6N0===========================TRUNCATE================================================51Testing软件测试网l[$e0Q9N2x{
C:\Users\aaaa>impdp \"system/yang as sysdba \"  remap_schema=scott:scott  directory=dumpdir51Testing软件测试网B(X.OV0P'X6tG.Q
dumpfile=scott_%U.dmp  table_exists_action=truncatelogfile=scott_impdp_truncate.log
J7r ZW1w v0Import: Release 11.1.0.6.0 - Production on 星期一, 14 3月, 2011 16:01:45
z2s{ P)I9_Nc Du D0Copyright (c) 2003, 2007, Oracle.  All rights reserved.51Testing软件测试网m"r;{6v6?Q
51Testing软件测试网Ov_[7{b\1u.|
连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
0Q3c v2w4YWs G0With the Partitioning, OLAP, Data Mining and Real Application Testing options51Testing软件测试网*zQ$~H z-Bl7Y
已成功加载/卸载了主表 "SYS"."SYS_IMPORT_FULL_01"51Testing软件测试网I4iTf v0A
启动 "SYS"."SYS_IMPORT_FULL_01":  "system/******** AS SYSDBA" remap_schema=scott:scott directory=dum51Testing软件测试网5_ QJ9S]dA.X N
pdir dumpfile=scott_%U.dmp table_exists_action=truncate logfile=scott_impdp_truncate.log
_l.o/R,I#D*|Z/P0处理对象类型 SCHEMA_EXPORT/USER51Testing软件测试网[0Bhes|@ujQ
ORA-31684: 对象类型 USER:"SCOTT" 已存在51Testing软件测试网L%d*y!b V`1w
处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
+qXo7W ]!X&]`0处理对象类型 SCHEMA_EXPORT/ROLE_GRANT51Testing软件测试网!\ E5Z$jbgp-d T
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE51Testing软件测试网!x`8o D5A6W2G5yz
处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
s;Zhv2DkEJ0处理对象类型 SCHEMA_EXPORT/TABLE/TABLE51Testing软件测试网D'q7\+Z#S.Fo(O4G2Y
ORA-39120: 无法截断表 "SCOTT"."DEPT", 将跳过数据。引起失败的错误为:
"ve/pC`0ORA-02266: 表中的唯一/主键被启用的外键引用
A8yV W,H1sZ5D0ORA-00955: 名称已由现有对象使用51Testing软件测试网dq1gJR}"m4Sn
ORA-39153: 表 "SCOTT"."EMP" 已存在且已截断。由于截断了 table_exists_action, 将加载数据, 但是将跳过所51Testing软件测试网DF1vhU|
有相关元数据。51Testing软件测试网5E8J1owU5u(X
ORA-39153: 表 "SCOTT"."BONUS" 已存在且已截断。由于截断了 table_exists_action, 将加载数据, 但是将跳过51Testing软件测试网3pSz;S$C
所有相关元数据。
;FT H ET [/|D%q,xk$U0ORA-39153: 表 "SCOTT"."SALGRADE" 已存在且已截断。由于截断了 table_exists_action, 将加载数据, 但是将
FG1l+B%@ F9o&~N IT0跳过所有相关元数据。
,Nsj3w4Oe|zd0ORA-39153: 表 "SCOTT"."EXPTAB" 已存在且已截断。由于截断了 table_exists_action, 将加载数据, 但是将跳51Testing软件测试网eS6BN [*J
过所有相关元数据。
J3xXV(P.gG5jJ q0处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
G})o%H\ e9Z0. . 导入了 "SCOTT"."EMP"                               8.570 KB      14 行51Testing软件测试网}9fH8sM,K
. . 导入了 "SCOTT"."EXPTAB"                            5.015 KB       2 行
.RQ5k |h~0. . 导入了 "SCOTT"."SALGRADE"                          5.867 KB       5 行51Testing软件测试网Pg4P0L%IG6oiR2A
. . 导入了 "SCOTT"."BONUS"                                 0 KB       0 行
%BG)^D4V'Q3[0处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT51Testing软件测试网8p,W1t%Jg3s n.|&c3V
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX
o{%E$~qlq0处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT51Testing软件测试网u8EVR bvt,M
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
k"qE9lJ:MF[C0处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
O"gL)M(t I_O]0ORA-31684: 对象类型 FUNCTION:"SCOTT"."EXP_FUNC" 已存在
5@ C(q0a^;Q"R0处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION51Testing软件测试网`#TTH&}A
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT51Testing软件测试网0B |aW ?+A
处理对象类型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
.nB+?1Jl6dehY0处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA
0bj:a hbS5\0作业 "SYS"."SYS_IMPORT_FULL_01" 已经完成, 但是有 7 个错误 (于 16:01:53 完成)

TAG: IMPDP

 

评分:0

我来说两句

Open Toolbar