问题描述:Oracle shutdown的时辰俄然断电,导致使用sql/plus启动时无法毗连到数据库。
7 C3 c: t2 R' A7 _ 具浮现象:- c9 g6 g# [/ w. t" E! m8 B1 x6 C
connection can not permitted, shut in progress.9 k B( i7 z4 B$ A6 e! a
到dos 提醒符 键入:9 Q. x: r) d9 ]/ H" @
c:> sqlplus /nolog) K3 N$ V: V3 L( @' U+ ~
显示:
+ z" y# N; N9 Q. f7 w/ n- _ sql/plus: Realease9.0.2……..all rights reserved
- j- T* V, G4 t. F sql> connect /as sysdba4 ?- g3 K8 M0 R7 F4 ]
显示已毗连至余暇例程:4 X2 b, O9 I4 T6 x8 f. M
sql>startup
6 H/ Y3 Z* F. Q. _$ P 显示:
& g5 ]4 w3 q- E8 z5 i2 o shutdown in progress.' Y. y! |1 O, x: g1 v- G
到sqlplus 琅缦沔毗连:3 @/ [# a* F( Z$ t5 I$ R0 u j
sys/manager@orcl92; I' ^' P' j) L
显示信息毗连成功:3 ~, O! ], z" ~
Sql: select * from tab;
2 v& ^$ M k! \7 B7 p% u2 q W3 g* N; N 显示:
0 ]+ V* G3 g0 S7 `! K. D* D7 U norows selected;" Z" w6 R; x9 p" e8 V* G
剖明:没有启动数据库。 m& B+ i1 M x1 X4 e5 _
解决法子:' W4 W8 H2 K8 P3 X4 [* @' {' {* q
到dos 提醒符 键入:
! x4 t& l( |* t% C+ Y f c:> sqlplus /nolog
1 u! {; Z, e- r- A+ g0 F+ x5 A 显示:
+ X5 x4 X+ z1 ~5 ^9 E! y sql/plus: Realease9.0.2……..all rights reserved
' x j2 x" ?9 u+ ^ sql> connect /as sysdba7 P# w* X5 Q2 v2 w2 q& O [* t
显示已毗连至余暇例程:
$ }/ U" c4 r m. m sql> startup force
1 U# s) h, G7 W4 U* n& U, n 显示:已启动。数据库已正常启动。
' `+ p) Q4 _$ h, H Y 也可以先将 windows services中将oraclehome92 service 遏制,再启动oracle enterprise manager console,选择自力启动,选择数据库,点击orcl(全局数据库名),弹出对话框,输入用户名system密码password,毗连身份: sysdba,选择例程,设置装备摆设,在一般信息标签下将例程状况先改为封锁,在打开。如不美观提醒oraclehome92 service 遏制,则将这个处事启动起来,再启动数据库,也可解决问题。 startup force 强制启动一个没有封锁或没能正常启动的数据库;过程:先封锁实例,再启动。 Startup restrict 以限制模式启动数据库,年夜而限制访谒数据库,只有具有 restricted session 权限的用户能与数据库毗连。 alter system [enable/disable] restricted session 在数据库打开后,该语句启动或封锁访谒限制功能。如不美观相对主结构做更改或想获得导出一致性,应将数据库设置为限制模式。 只有具有alter system权限,才可以用alter system [enable/disable] restricted session 呼吁改变数据库的可用性。
% W9 ?$ e4 O( B. N5 D3 t% z 当一个实例以nomount状况启动时,只能访谒sga篡夺数据的视图。关于v$thread,v$controlftle等信息年夜sga 篡夺数据的辞书视图。当数据库被装配时,关于 v$thread,v$controlftle等信息年夜节制文件中被读出。剖析,当数据库异常封锁时,shutdown在轨范琅缦慊有退出,是以启动实例时检测到shutdown,则系统报错。是以需要先封锁数据库,再启动数据库。 |