Oracle 基于用户管理的不完全恢复

上一篇 / 下一篇  2012-08-29 09:50:03 / 个人分类:数据库

J*E"cc5a%p!x5c2y0  Oracle数据恢复从恢复类型来说,抛开具体的文件,总共可分为两大类型的恢复,一是完全恢复,一个是不完全恢复。其实,熟悉了Oracle体系结构之后,对于 Oracle恢复就会有一个总体的概念。因为Oracle组成的外围部分,主要由不同的文件来组成,每种不同类型的文件有不同的作用,因此只要了解了其作 用,更利于了解与掌握Oralce数据库的备份与恢复。言归正传,完全恢复即是把数据库恢复到最新的SCN,出故障前的那一刻,是无损恢复。而不完全恢复即是有损恢复,多用于恢复用户误操作,归档日志丢失等情形。本文主要描述基于用户管理的不完全恢复。51Testing软件测试网 f#Xl#T^&qH-}

51Testing软件测试网g C5|(Vz1mSr q

  一、不完全恢复特性51Testing软件测试网 B*dl"Y+l2ap,y[G!F

oNw#~Q!E0  1、不完全恢复51Testing软件测试网"X8iDwV y \FW

%M%NAAP%`0   不完全恢复仅仅是将数据恢复到某一个特定的时间点或特定的SCN,而不是当前时间点。不完全恢复会影响整个数据库,需要在MOUNT状态下进行。在不完 全恢复成功之后,通常需要使用 resetlogs 选项来打开数据库。当使用resetlogs后,SCN 计数器不会被重置,原来的日志序号 log sequence 会结束,从新开始新的日志序列号。在Oracle里称之为产生一个新的incarnation。同时Oracle还会重置联机重做日志内容,因此 resetlogs之后建议重新全备数据库。51Testing软件测试网}.eOxO,|.]

51Testing软件测试网(j,y~0o dcAB

  2、不完全恢复的情形

Is+ph&fF gk[iX0

jJ5_4bjb`@9M8DK0  介质故障(media failure)导致部分或全部联机重做日志(online redo log)损坏用户操作失误(user error)导致数据丢失,例如,用户由于疏忽而移除了表,提交了无效的数据到表。

/[Yu zbD(V7iD4f#g051Testing软件测试网+{(s;j8CU#?ke'H

  由于归档重做日志(archived redo log)丢失而无法进行完全恢复(complete recovery)。

E*vFJ`d*C051Testing软件测试网6TDCop }%@9Ei

  当前控制文件(control file)丢失,必须使用备份的控制文件打开(open)数据库。

$JKN9| u#q)K0

!w [&Nv4MbGE0}0  3、不完全恢复的步骤51Testing软件测试网*A w i$_ C

51Testing软件测试网1c h7m9Sjiy w4Y b1I

  (1)关闭数据库并备份数据库(以防止恢复失败)

5@e:Qm |@H%K7^051Testing软件测试网3f)N*BT(J

  (2)启动数据库到mount 状态51Testing软件测试网?BO+q'YV,Z:O

(lvQU*I:}0  (3)还原所有数据文件,同时可以选择还原控制文件(注意需要还原所有数据文件,而不仅仅是受损文件)

6z.A:F:u:R051Testing软件测试网 X+l v0F9op-D

  (4)将数据库恢复至某个时间点、序列、或系统改变号

{%?-Q4~y {D051Testing软件测试网l%L$Y [m#k/G

  (4)使用RESETLOGS关键字打开数据库51Testing软件测试网.RHmE0Y0Rz2k

51Testing软件测试网S cS$j6^,\+Y%Rv{

  4、注意

;Q}I,m)I8Z3i0

*~xI1PQ7R9I3qZ0  ● 不完全恢复的前提条件是Oracl数据库够到mount状态,即参数文件,控制文件51Testing软件测试网NPe7Jz6H&t8E

51Testing软件测试网 X a!|?a] gC@k

  ● 在做不完全恢复前建议在恢复前后做一次备份,避免恢复失败导致不必要的损失

\!U dY3R ^051Testing软件测试网4J+Z6O&x8Dt0a2l

   ● 不完全恢复完成后,建议不要直接使用OPEN RESETLOGS 命令以读/写模式打开(open)数据库,而应先以只读模式打开数据库,并检查是否已将数据库恢复到正确的时间点。如果恢复的时间点有误,在没有使用 OPEN RESETLOGS命令的情况下,重新执行恢复操作相对简单。

%S k+o7x&X Q&@051Testing软件测试网$|3k4mqB

  ● 对于恢复结果早于指定的时间点,只需重新执行恢复操作。如果恢复结果超过了指定的时间点,则应再次还原数据库并重新进行恢复。

6FG!iL ej.q O$P051Testing软件测试网3q:f.|(x9P;l5WF qy,{

  本文中的示例为便于演示,没有在恢复前备份故障数据,也没有在resetlog之后进行备份。51Testing软件测试网*V8[.C R;I)Tj K;@

51Testing软件测试网^cF&Q^3Q1K,J

  注:Oracle 10g中已经可以在 resetlogs 之后不备份数据库,恢复的时候能够穿越resetlogs

7uR[ gKM051Testing软件测试网m0D/[pl%QQQ0[

  5、不完全介质恢复的几种类型51Testing软件测试网,_G*p1HeZaO

51Testing软件测试网b!e Z.^ M+P1c

  ● 基于时间的恢复(Time-based recovery) 将数据恢复到指定的时间点51Testing软件测试网0Y!r [ I5l

/xhc3myQ:}l uR+j0  ● 用户控制的恢复(Cancel-based recovery) 当用户提交CANCEL后停止恢复(此选项在使用RMAN时无效)51Testing软件测试网g bl,H1w4C0Y(_

;@*g ize~_0  ● 基于SCN 的恢复(Change-based recovery) 将数据恢复到指定的SCN

q Q#di UFg+S{H8H0T051Testing软件测试网8u:@PGZe

  ● 按重做日志序号恢复(Log sequence recovery)将数据恢复到指定的重做日志序号(仅使用RMAN时有效)51Testing软件测试网TxhB^N

'I*nU*uC0 二、演示基于用户管理的不完全恢复

"OG0USkt6p9\'n"l7`j051Testing软件测试网{6\0[#v[ lu

Js4ep\5D0

/n.U'~Qim#Vo0--1、until time 恢复(恢复到指定时间点)51Testing软件测试网R$x ou}5X0q^c)K

51Testing软件测试网 ^ Nk#lm6d%cN

sys@SYBO2SZ> conn / as sysdba51Testing软件测试网#zSX(d J%SSL.w:M
Connected.51Testing软件测试网6~1bWA1ux.kwV
sys@SYBO2SZ> archive log list;  -->当前数据库处于归档模式51Testing软件测试网:mOL.e#xsT5J{+[ ~]
Database log mode              Archive Mode
4rKb5r;u(_F#cx0Automatic archival             Enabled
/Y O"Q+M^]&l^0Archive destination            /u02/database/SYBO2SZ/archive/
W3N[~`2t6a Eg(y,C0Oldest online log sequence     051Testing软件测试网!{0J em4`4F$WP1d+AV8`
Next log sequence to archive   151Testing软件测试网Z)g9];}k4T
Current log sequence           1
51Testing软件测试网a"dl]I"j_*E

51Testing软件测试网2^_I;l/u+s!X$g F

sys@SYBO2SZ> @db_hot_bak       -->对数据库进行热备份
Nn F(K1g2E0ho cp /u02/database/SYBO2SZ/oradata/sysSYBO2SZ.dbf /u02/database/SYBO2SZ/backup/hotbak51Testing软件测试网'jD`(U(ZDR/M
ho cp /u02/database/SYBO2SZ/undo/undotbsSYBO2SZ.dbf /u02/database/SYBO2SZ/backup/hotbak
DM$}imW je:^0ho cp /u02/database/SYBO2SZ/oradata/sysauxSYBO2SZ.dbf /u02/database/SYBO2SZ/backup/hotbak51Testing软件测试网#e k|n.[
ho cp /u02/database/SYBO2SZ/undo/undotbsSYBO2SZ2.dbf /u02/database/SYBO2SZ/backup/hotbak
,|{nbzLWz0ho cp /u02/database/SYBO2SZ/oradata/SYBO2SZ_system_tbl.dbf /u02/database/SYBO2SZ/backup/hotbak
Ye,`{3_.f Kn B0ho cp /u02/database/SYBO2SZ/oradata/SYBO2SZ_account_tbl.dbf /u02/database/SYBO2SZ/backup/hotbak51Testing软件测试网q_ A \I,\
ho cp /u02/database/SYBO2SZ/oradata/SYBO2SZ_stock_tbl.dbf /u02/database/SYBO2SZ/backup/hotbak
2zFuV ^8i0ho cp /u02/database/SYBO2SZ/oradata/SYBO2SZ_stock_l_tbl.dbf /u02/database/SYBO2SZ/backup/hotbak
51Testing软件测试网B&k5C.HxF7c~ Jp

I_}hY0?s0sys@SYBO2SZ> set time on;
V*X#|]r+j012:40:07sys@SYBO2SZ> create table dept as select * from scott.dept;

V.zz#Ua#I0

|/|e p%oz6S012:40:31sys@SYBO2SZ> create table emp as select * from scott.emp;

C3yMU;f U:KV$i:D051Testing软件测试网SDs-L6Rg

12:40:41sys@SYBO2SZ>  
dl g'o;]b@(R012:40:55sys@SYBO2SZ> truncate table emp;    -->对表emp进行truncate

W(?9X bCTS1?ZL!t0

kqHvW^2u0Table truncated.

cW)_"sq H!r0

5T)?*h)K*d"O Z#gR012:41:02sys@SYBO2SZ> insert into dept select 50,'DEV','SZ' from dual;  -->为表dept新增两条记录并提交51Testing软件测试网3U6G*yb3TYe%\

51Testing软件测试网 vq5G_s&{)d]M

12:41:14sys@SYBO2SZ> insert into dept select 60,'HR','GZ' from dual;

#l^$YR.Al?051Testing软件测试网O cj Uj(YD,R;Y3lo/z

12:41:19sys@SYBO2SZ> commit;

/}#E n Mrd%A:^'^J051Testing软件测试网]uD yK8do0q!E

Commit complete.

,r!wwB$M0

J1KJo&V+\*E012:41:22sys@SYBO2SZ> alter system checkpoint;   -->执行检查点进程以写入日志

I h;`F{0

LkFb l$M;Le)u0System altered.51Testing软件测试网K ARQB d

(uX3~df d012:41:31sys@SYBO2SZ> shutdown immediate;        -->关闭数据库51Testing软件测试网czA!o9@5g6VtW.r

%{m/f;Dq012:42:25sys@SYBO2SZ> startup mount;             -->启动数据库到mount状态51Testing软件测试网'`S;\5_~?
ORACLE instance started.

;EPz?8ud,f051Testing软件测试网Vv0s#J-l3H

Total System Global Area  599785472 bytes
qx8tWX1O}g0Fixed Size                  2074568 bytes
5f#e4_ Pd(T|j'V6l0Variable Size             213911608 bytes
;Dk,BU(E"^i-c0Database Buffers          377487360 bytes51Testing软件测试网 F Mft6X^UUQ
Redo Buffers                6311936 bytes
5y'j M+k9wI0V0Database mounted.                          -->下面将备份的数据进行还原,由于并非所有数据文件位于相同路径,因此进行多次cp   
+P'W Vgm;zf.l012:42:36sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/SYBO*.dbf /u02/database/SYBO2SZ/oradata/.

yU |J l'o.X(Op0

z#\`1_X012:42:57sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/sys*.dbf /u02/database/SYBO2SZ/oradata/.51Testing软件测试网G7mhA:Q-Q

ty1dVh*L1Q6q w012:43:24sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/undotbs* /u02/database/SYBO2SZ/undo/.51Testing软件测试网 [$Fr8TP

g f A#w{@)O012:43:50sys@SYBO2SZ> recover database until time '2012-08-22:12:40:55';   -->使用 until time 恢复到指定时间点
4j\ }K(}Z;Vmsb(X0Media recovery complete.51Testing软件测试网)T k,mn(Asn"E
12:44:07sys@SYBO2SZ> alter database open resetlogs;                       -->介质分恢复成功之后,resetlog方式打开数据库
51Testing软件测试网6Lc@)zwvo/x.h

51Testing软件测试网 ]S2{}3D no:n

Database altered.51Testing软件测试网*c|!r7]5F_6a

51Testing软件测试网!n7t9Q3D9v/m;c

12:44:20sys@SYBO2SZ> select count(*) from emp;                            -->emp表被成功恢复   

q h+E3vo0

eNF8du!s$s0  COUNT(*)51Testing软件测试网H KP g(U|8vDd
----------51Testing软件测试网*Z d @,mS o'ask1Q
        14

#uQj1H3e;w051Testing软件测试网O+}-O0Z!B2q)M

12:44:28sys@SYBO2SZ> select * from dept;                                  -->由于恢复时间点在插入新记录之前,因此新记录丢失51Testing软件测试网J!om Kg9A;H ^|fI

51Testing软件测试网-? C~"yV ~

    DEPTNO DNAME          LOC51Testing软件测试网Om9d:L"XoE&D/v
---------- -------------- -------------51Testing软件测试网gct\9n,f?0v w)m
        10 ACCOUNTING     NEW YORK51Testing软件测试网/a@.CQ'lk
        20 RESEARCH       DALLAS
s*}5t5i!q(aM ]Ly0        30 SALES          CHICAGO51Testing软件测试网$PP9o a[0`3`[_$}5y
        40 OPERATIONS     BOSTON

mse&Xi0

_[aC]%h$a*`O04 rows selected.

&F{?M+Id5@y|h0

SP6S!E"b;i0--2、unitl scn 恢复(基于系统改变号的恢复)

;RM+n8l`So0

|-Y!D-c)B4lX&^&JWD H&b0sys@SYBO2SZ> @db_hot_bak              -->热备数据库

\3P2H \F_/Jz0

0G Q ?b(Ne%s9B c0sys@SYBO2SZ> select * from dept;

,X5Ek} g051Testing软件测试网"?!WfIH

    DEPTNO DNAME          LOC
)\-twZnS0---------- -------------- -------------51Testing软件测试网o^r&M6tMY
        10 ACCOUNTING     NEW YORK
pR9~5io#n j0        20 RESEARCH       DALLAS51Testing软件测试网K$K"k5o-M CL6X&K:C
        30 SALES          CHICAGO51Testing软件测试网(I4c u oR~
        40 OPERATIONS     BOSTON
51Testing软件测试网mR a_I3p"\0y\

51Testing软件测试网v:_*_.z^U

4 rows selected.51Testing软件测试网t dv?/D5IB_

CD'VLEKWQ8p(R0sys@SYBO2SZ> insert into dept select 50,'DEV','SZ' from dual;   -->为表dept新增记录

]pz.mp;q051Testing软件测试网qe T3maey A

1 row created.

7YN3n sce&?$T0

X'o3j!F ~qUg0sys@SYBO2SZ> commit;

&o] |q A }7Kh0

~R5sh$N X0Commit complete.

i PZd0a&u/h/y3s;M M051Testing软件测试网#X#@ tC U)I^4^-P

sys@SYBO2SZ> select current_scn from v$database;   -->查看当前SCN以便后续恢复使用51Testing软件测试网gN;@)F|8[!k7Eh

51Testing软件测试网(xx-B#BEDV

CURRENT_SCN51Testing软件测试网;n%C D L-T ~km
-----------51Testing软件测试网+r)`*cuF5MT#x%C c(J,?4s
     471613
51Testing软件测试网r1jwh9@2P(@

/C4t+y:A8Q Tx0iz\0sys@SYBO2SZ> insert into dept select 60,'HR','GZ' from dual;   -->再次为表dept新增记录,以便查看恢复后是否丢失

U$X}%K$CZ0

X2P'u?/Sl'If*caT0sys@SYBO2SZ> commit;51Testing软件测试网n bU!@Z[g

51Testing软件测试网)gI8G4} a:{h

Commit complete.

u5Oa!yR6B S3q0

*bSy{Q7z0sys@SYBO2SZ> delete from emp where deptno=10;      -->删除表emp上deptno=10的记录51Testing软件测试网y c9F)gP"o!U*i

51Testing软件测试网h/msd Ct

3 rows deleted.

v G^1vs Z/G0

&c @,W]kju:^-z.TW0sys@SYBO2SZ> commit;

o.fDGT7]R^0

[y~ cdxMC0Commit complete.51Testing软件测试网I/B6Zo[%E?

"g _(\oRL$`0sys@SYBO2SZ> alter system checkpoint;             -->执行检查点进程

ldg7V8i+l#Z ZB^051Testing软件测试网 P2`_ z&|u nW zJ

System altered.

w m1arar}051Testing软件测试网:c+wJ@$E ~m

sys@SYBO2SZ> shutdown immediate;51Testing软件测试网{] g0w3tf

:Ogk @ R+So&}0sys@SYBO2SZ> startup mount;51Testing软件测试网` y+G%CiN)\8_
ORACLE instance started.
51Testing软件测试网&An {K/T2y)C r

YH)m @y2hU N;u0Total System Global Area  599785472 bytes51Testing软件测试网o S(Z%Vs,AH:gC&`
Fixed Size                  2074568 bytes51Testing软件测试网FM9uZ+q;xW$r
Variable Size             218105912 bytes51Testing软件测试网7@1c }#uh;a9y MB
Database Buffers          373293056 bytes
/bu.a&] [Y0Redo Buffers                6311936 bytes
Z%OoDq_xwI,F O0Database mounted.

M q+~:BV5Gf8{0

Z9oQ'nO0sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/SYBO*.dbf /u02/database/SYBO2SZ/oradata/.   -->还原数据库

U \+KOQ(R3@0

~(Jd)F6F%Qm|$]2S0sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/sys*.dbf /u02/database/SYBO2SZ/oradata/.

,Vx(pIVd-i:H0

\&a s\z |Myw.?t f0sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/undotbs* /u02/database/SYBO2SZ/undo/.51Testing软件测试网8|3i {hI'_.z-M

3s`&q#V0?9U zU k0sys@SYBO2SZ> recover database until change 471613     -->基于 SCN 恢复数据库
?}6K._'c~0Media recovery complete.51Testing软件测试网!GX:M#IwOK
sys@SYBO2SZ> alter database open resetlogs;           -->使用resetlog方式打开数据库

"U@q#MN4l R*?0

3]H~R|bt,j x0Database altered.

3}.\y#g3i,oO0

2Rh+h0w~6_O0sys@SYBO2SZ> select * from dept;                      -->SCN之后的操作丢失

)wso:?!LRcj051Testing软件测试网SEB3q cz

    DEPTNO DNAME          LOC51Testing软件测试网 tQg#l.u9e&@P}W(z$u9y
---------- -------------- -------------
V-Yqs An%d0        10 ACCOUNTING     NEW YORK
E'L'YSZ\_:N%z0        20 RESEARCH       DALLAS51Testing软件测试网gS/]`@"}|N
        30 SALES          CHICAGO51Testing软件测试网8\4un@L
        40 OPERATIONS     BOSTON
TrK.V6G+D*`5B0        50 DEV            SZ
51Testing软件测试网U-B%r-{p[M

'`v{[:X G6{ j05 rows selected.

9k'V6XJ8f2Su051Testing软件测试网,b1^*C PO2OO6n)l

--3、until cancel 恢复(基于放弃的恢复)

7G`phU5c,S{a051Testing软件测试网8th5\-j(K g?

--> Author: Robinson Cheng --> Blog:http://blog.csdn.net/robinson_061251Testing软件测试网{4e ]3w"H&Wk
sys@SYBO2SZ> @db_hot_bak           -->热备数据库51Testing软件测试网(W @,E7F/b/v
sys@SYBO2SZ> select * from dept;
51Testing软件测试网\0hqU$t Yh@A

51Testing软件测试网FVl+r_f+N~

    DEPTNO DNAME          LOC51Testing软件测试网0hp3~} Lz_
---------- -------------- -------------
0r6q];p)TSQ'@"W0        10 ACCOUNTING     NEW YORK51Testing软件测试网#_GQ#M_4_T
        20 RESEARCH       DALLAS
"Ozkp;`C.w0        30 SALES          CHICAGO
(C;g~ lG"D'qf0        40 OPERATIONS     BOSTON51Testing软件测试网RQ+g,q6?b
        50 DEV            SZ

[z+| _mIA7E0

f"tv.I$~I @ Z0sys@SYBO2SZ> ho ls -hltr /u02/database/SYBO2SZ/archive    -->当前已经存在的归档日志51Testing软件测试网%J s%K z$R
total 348K51Testing软件测试网 ?,m#PHt-Jx&wStn
-rw-r----- 1 oracle oinstall 340K 2012-08-22 17:01 arch_792003491_1_1.arc
x3E[4lY$c}0-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:01 arch_792003491_1_2.arc
(YU\:^+Y1N0-rw-r----- 1 oracle oinstall 1.0K 2012-08-22 17:02 arch_792003491_1_3.arc
51Testing软件测试网-|/sr V8}3W

51Testing软件测试网6j?#g:E0sF8o

sys@SYBO2SZ> alter system switch logfile;                -->切换日志

)i+t OUTZ2Kr6\0

w,XX;hm0System altered.

-w]1e(L NJ&dv j051Testing软件测试网o8eUh&]0LGN

sys@SYBO2SZ> ho ls -hltr /u02/database/SYBO2SZ/archive   -->可以看到新增了arch_792003491_1_4.arc51Testing软件测试网i*D;I!fQ8qn
total 416K51Testing软件测试网VWW-_B8@"TX
-rw-r----- 1 oracle oinstall 340K 2012-08-22 17:01 arch_792003491_1_1.arc
?xE[/b3zE0-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:01 arch_792003491_1_2.arc51Testing软件测试网8f$m;yMi3QA,[v
-rw-r----- 1 oracle oinstall 1.0K 2012-08-22 17:02 arch_792003491_1_3.arc
UR Xk0e!B:K&z0-rw-r----- 1 oracle oinstall  66K 2012-08-22 17:04 arch_792003491_1_4.arc
51Testing软件测试网q I*u-_e+@[

w-w{i&oRhmS0sys@SYBO2SZ> insert into dept select 60,'HR','SHANGHAI' from dual;

"Y%kd&u {9e051Testing软件测试网Fa(Td&`_)d

sys@SYBO2SZ> insert into dept select 70,'INFRA','HONGKONG' from dual;

9inFY3S [i!v4]*z0

m5`wvS5K+F+zQL0sys@SYBO2SZ> commit;

!a"`tjz}{QB0

B:\nkGK0Commit complete.

U N YrI7|:`P,k051Testing软件测试网0hl!U/f] aq u!dT d

sys@SYBO2SZ> alter system checkpoint;    -->切换日志

#{/S^PQG051Testing软件测试网,b N nf_ T

System altered.

Qv,R1O7e*F1D051Testing软件测试网 is\"xzK

sys@SYBO2SZ> alter system archive log current;

jS4Nx!B H3n0

4fDPhg0System altered.51Testing软件测试网+r E@`E7}`

51Testing软件测试网K0V ]n{#B

sys@SYBO2SZ> ho ls -hltr /u02/database/SYBO2SZ/archive
9CV*Q+_h(VfVK0total 420K
@2SC.|)w*x,~f U0-rw-r----- 1 oracle oinstall 340K 2012-08-22 17:01 arch_792003491_1_1.arc51Testing软件测试网l7N+|._V3`5j
-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:01 arch_792003491_1_2.arc
!?3g8~]Z,Ch7R0-rw-r----- 1 oracle oinstall 1.0K 2012-08-22 17:02 arch_792003491_1_3.arc
s{mN P'Uq'D0-rw-r----- 1 oracle oinstall  66K 2012-08-22 17:04 arch_792003491_1_4.arc51Testing软件测试网,\'n p&N#k2O%t.Z
-rw-r----- 1 oracle oinstall 2.5K 2012-08-22 17:07 arch_792003491_1_5.arc
51Testing软件测试网 Vae B UF b(uT

51Testing软件测试网 r9c.Btsm

sys@SYBO2SZ> insert into dept select 80,'MARKET','BEIJING' from dual;

D$|:hu/y-b!af051Testing软件测试网!|Z]"Ksb W-D+v!^L

sys@SYBO2SZ> commit;51Testing软件测试网M#UJi@&A(tQ wJ

51Testing软件测试网(]5lIhU

Commit complete.

Yg'z*fuMm_ u2H$P0

%tTXrP-D#P*BP0sys@SYBO2SZ> alter system archive log current;

-u5xLZ/i3P eb i1k051Testing软件测试网/a gD H-S

System altered.51Testing软件测试网ff oV'q9dl7I

_ v N0S4r0sys@SYBO2SZ> ho ls -hltr /u02/database/SYBO2SZ/archive   -->系统又新增了几个归档日志51Testing软件测试网\P4x;E7C,}IS4sl
total 424K
E e,l CE0-rw-r----- 1 oracle oinstall 340K 2012-08-22 17:01 arch_792003491_1_1.arc
%ux]3|5i,D-rIG0-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:01 arch_792003491_1_2.arc
%U!~7VV8u0-rw-r----- 1 oracle oinstall 1.0K 2012-08-22 17:02 arch_792003491_1_3.arc51Testing软件测试网8k0[3b g)@yZ
-rw-r----- 1 oracle oinstall  66K 2012-08-22 17:04 arch_792003491_1_4.arc
$B$B.{%je4c k0P0-rw-r----- 1 oracle oinstall 2.5K 2012-08-22 17:07 arch_792003491_1_5.arc51Testing软件测试网v3W;^T0qUb:P:?
-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:08 arch_792003491_1_6.arc
51Testing软件测试网/h&X4^F1])YC6_D7LM

3A%xm;x0sB @a{0sys@SYBO2SZ> ho strings /u02/database/SYBO2SZ/archive/arch_792003491_1_5.arc | grep HONGKONG  -->新记录已存在于归档日志51Testing软件测试网 b7C-^m3\2W V{n:?
HONGKONG
51Testing软件测试网N`_|~Zn

2BV,Ce2~T E@0sys@SYBO2SZ> ho strings /u02/database/SYBO2SZ/archive/arch_792003491_1_6.arc | grep BEIJING51Testing软件测试网:uPoa9F@r
BEIJING

~ k:nb|S+]'j051Testing软件测试网!\4v2wN8C KoSJQ

sys@SYBO2SZ> ho rm /u02/database/SYBO2SZ/archive/arch_792003491_1_5.arc     -->模拟部分归档日志丢失

5q ]Q"@&r{4OE0

:z.Z"eq+I%Z c9qn0sys@SYBO2SZ> ho ls -hltr /u02/database/SYBO2SZ/archive51Testing软件测试网:`I@1Q3R%cT Xgn
total 420K51Testing软件测试网qeB4S:~?~
-rw-r----- 1 oracle oinstall 340K 2012-08-22 17:01 arch_792003491_1_1.arc51Testing软件测试网f]t;^7h
-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:01 arch_792003491_1_2.arc
w:eI8wT0-rw-r----- 1 oracle oinstall 1.0K 2012-08-22 17:02 arch_792003491_1_3.arc
]/HM$j!f4r3x8k0-rw-r----- 1 oracle oinstall  66K 2012-08-22 17:04 arch_792003491_1_4.arc51Testing软件测试网R TFQKiP?
-rw-r----- 1 oracle oinstall 2.0K 2012-08-22 17:08 arch_792003491_1_6.arc

H'Y~.?pY L$^0

b-YWpe0sys@SYBO2SZ> shutdown immediate;51Testing软件测试网-P5gn0{RKgU%@

.|\R'_JZ k0sys@SYBO2SZ> startup mount;
1| He8c7|#CQX rJh$\~0ORACLE instance started.
51Testing软件测试网8QB1E4m4zV$\ f

hV)Z8EyB }0Total System Global Area  599785472 bytes
ec2pt7X"g,i0Fixed Size                  2074568 bytes
J%NO.`)i0v/}K0Variable Size             243271736 bytes51Testing软件测试网Y3@-O4c X @
Database Buffers          348127232 bytes
c&k!q F \ ns2|-u7A(v4J0Redo Buffers                6311936 bytes
pme ?C9at0Database mounted.51Testing软件测试网U&ye(pe.^n1v
sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/SYBO*.dbf /u02/database/SYBO2SZ/oradata/.  -->还原数据库
51Testing软件测试网q'MwVY1U&w$b'P S

51Testing软件测试网s{!`s&@C,K$B

sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/sys*.dbf /u02/database/SYBO2SZ/oradata/.

Ci8y3Bmo"K051Testing软件测试网2K _` f-r)IwRV2vWx

sys@SYBO2SZ> ho cp /u02/database/SYBO2SZ/backup/hotbak/undotbs* /u02/database/SYBO2SZ/undo/.51Testing软件测试网-^3f`7[5U0?K

51Testing软件测试网GM!m^/VOPM

sys@SYBO2SZ> recover database until cancel;     --> 基于 cancel 恢复数据库51Testing软件测试网%P1it(e8Mz
ORA-00279: change 494124 generated at 08/22/2012 17:02:30 needed for thread 151Testing软件测试网F ae3W XV:_%L
ORA-00289: suggestion : /u02/database/SYBO2SZ/archive/arch_792003491_1_4.arc
a:a0w2H%N7_0ORA-00280: change 494124 for thread 1 is in sequence #4
51Testing软件测试网Y7q-c~2CXj wS

(VwX7IWZ%A0Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
]X Bh+I"L8v0/u02/database/SYBO2SZ/archive/arch_792003491_1_4.arc     -->恢复到尾数为4的归档日志
$m*AXpLK U4wwU0ORA-00279: change 494189 generated at 08/22/2012 17:04:46 needed for thread 151Testing软件测试网!by$_ @2\OO H
ORA-00289: suggestion : /u02/database/SYBO2SZ/archive/arch_792003491_1_5.arc
9U,Ch-O~0ORA-00280: change 494189 for thread 1 is in sequence #5
%Cn~YQDk0ORA-00278: log file '/u02/database/SYBO2SZ/archive/arch_792003491_1_4.arc' no longer needed for this recovery
51Testing软件测试网 D(O!{ @ N.D CB

Y N$OLz6i0Specify log: {<RET>=suggested | filename | AUTO | CANCEL}51Testing软件测试网ATh-`{Ri}!tt
cancel                                                 -->第5个日志文件丢失,输入cancel
2{ R-g/i_2}Q0Media recovery cancelled.
;E5he1VY [ hf0sys@SYBO2SZ> alter database open resetlogs;            --> resetlogs 方式打开数据库

@ y_,Et6U0

%w9s3~+r8q'J0w(H%t.l%p0Database altered.51Testing软件测试网g}[BqN d VUqp\

;]7AHP!ca1V0sys@SYBO2SZ> select * from dept;                      -->由于归档日志5丢失,因此后续所有操作的数据丢失51Testing软件测试网"t o-g2g'd;Tke

51Testing软件测试网d7v^4U&S\

    DEPTNO DNAME          LOC51Testing软件测试网7hoZnzK$K8~1F
---------- -------------- -------------51Testing软件测试网0y,H&r|#N
        10 ACCOUNTING     NEW YORK51Testing软件测试网 x Gnl:rp#`
        20 RESEARCH       DALLAS51Testing软件测试网I]0|.Q!}8cm1`t6O
        30 SALES          CHICAGO51Testing软件测试网dTorUy:ld
        40 OPERATIONS     BOSTON51Testing软件测试网+pl|L X
        50 DEV            SZ
51Testing软件测试网1l+@|;J)K

lS9W Mw9rL({sV)n8Zq05 rows selected.       

&['D$HWF9[*B0

TAG:

 

评分:0

我来说两句

Open Toolbar