步骤:
6 _9 T" c4 R: _. k* l& P# v8 ~/ Z & o! Z2 a0 C/ e
1、 首先改参数文件init.ora,使Oracle数据库能mount上来。5 \! \6 @8 C* y7 u9 A0 s$ F% R
* N5 u9 m0 D* H7 w+ k3 e
在system表空间内有一个system回滚段,该回滚段上数据库所必须的,当数据库第一次建立时,它就随之建立,并随数据库的打开而自动在线。我们通常使用的回滚段是公用回滚段,而非system回滚段,若公用回滚段出现故障,我们暂可用system回滚段替代,使Oracle数据库能mount上来。
- `1 v) n6 m8 B; \1 P2 a
/ W- [ V; W; }* w9 w+ t svrmgrl >Shutdown abort/ F5 Q; l) [, W# X# t
$ T" K. V3 ?0 j: e, [" l
$ vi $ORACLE_HOME/dbs/init< sid >.ora
: J+ ~, m( Z; f0 R1 j h
$ `( [. L [' [$ H3 k5 @. g! ^ rollback_segments=(system)5 T6 ?1 E1 T1 e1 K: n
w6 n' U0 q) {$ d& A3 N
_corrupted_rollback_segments=(r01,r02,r03,r04)- Z: l. ?3 a7 E: `0 ]+ O# O: E
, O/ Q0 f5 _4 m' o
svrmgrl >Startup mount b. e- ?/ w& m( o% i4 V E% g
/ F% g. O# r/ l: H$ K9 i 2、 对数据库实施恢复,再将它打开( u( `& C4 D* P5 l( f
' g$ c3 ^1 K9 ^# a* V8 H
从Oracle数据库的控制文件中将回滚段表空间rbs的数据文件rbs01.dbf离线并去掉。
) s; l: V0 W& x* g: C, \( P ) w# K% L& q3 [8 l& T- P, }
svrmgrl >alter database datafile4 J' p2 p1 z4 U! S: N c( G. f
* Q2 s) p5 I6 R4 G7 w9 V ‘##/##/rbs01.dbf’ offline drop;
+ V+ F* M" ^# t! S1 _2 o5 b $ {1 m W0 [6 r1 v; U- j. V2 O
对数据库进行恢复。+ S/ f( p" |) n) e/ g8 F2 n* L7 y
" D! T. d C2 g6 S; A
svrmgrl >recover database using backup controlfile;
9 O6 c( E5 h7 \7 \1 u5 b 3 @3 }- D. P' `3 E: V
此时屏幕上可能会出现:: W5 P* l$ U& V- Q! {
( e. i# h" X9 S) Y, a ORA_00280 Change #### for thread# is in sequence#6 d) f1 Q1 z( M3 g9 c4 d# {3 D
2 v6 j, \. {# o specify log:[< RET > for suggested|AUTO|from5 c# [7 U Q3 o$ M. h
; y E% a( Y( s% ?8 c
logsource|cancel] |