ora-01033:oracle initializationg or shutdown in progress
?由于使用了一個未經驗證的清除垃圾文件的程序,導致Oracle數據庫的兩個日志文件被非法刪除(Redo01,Redo02),導致Oracle無法連接(能啟動),系統報錯:
?????????? ora-01033:oracle initializationg or shutdown in progress
最開始知道問題是由于文件被誤刪導致的,但不知道是日志文件被刪除,由于數據庫應用能啟動,因此決定做一次recover操作,步驟如下:
????????? 步驟1:??? sqlplus /NOLOG
??????????????????????????????? SQL*Plus: Release 9.2.0.1.0 - Production on 星期一 5月 12 09:12:59 2008
Copyright (c) 1982, 2002, Oracle Corporation.? All rights reserved.
????????? 步驟2:????? SQL> connect sys/password as sysdba
??????????????????????????????? 已連接。
????????? 步驟3:?????? SQL> shutdown normal
??????????????????????????????? ORA-01109: 數據庫未打開
??????????????????????????????? 已經卸載數據庫。
??????????????????????????????? ORACLE 例程已經關閉。
????????? 步驟3:?????? SQL> startup mount
??????????????????????????????? ORACLE 例程已經啟動。
??????????????????????????????? Total System Global Area? 135338868 bytes
??????????????????????????????? Fixed Size?????????????????? 453492 bytes
??????????????????????????????? Variable Size???????????? 109051904 bytes
??????????????????????????????? Database Buffers?????????? 25165824 bytes
??????????????????????????????? Redo Buffers???????????????? 667648 bytes
??????????????????????????????? 數據庫裝載完畢。
????????? 步驟4:????? SQL> alter database open;
??????????????????????????????? alter database open
???????????????????????????????? *
??????????????????????????????? ERROR 位于第 1 行:
??????????????????????????????? ORA-00313: 無法打開日志組 1 (線程 1) 的成員
??????????????????????????????? ORA-00312: 聯機日志 1 線程 1: 'C:\ORACLE\ORADATA\NIDB\REDO01.LOG'
在操作步驟4時,發現報ORA-00313,00312錯誤,檢查應用實例目錄下,發現只剩下REDO03.LOG文件,問題到此已經明朗化,首先,執行下面的語句看看group1是不是current日志組
????????? 步驟5:????? SQL> select group#,sequence#,archived,status from v$log;
??????????????????????????????????????? GROUP#? SEQUENCE# ARC STATUS
?????????????????????????????? ---------- ---------- --- ----------------
????????????????????????????????????????????????????? 1??????? 134 NO? INACTIVE
????????????????????????????????????????????????????? 2??????? 135 NO? INACTIVE
????????????????????????????????????????????????????? 3??????? 136 NO? INVALIDATED
可以發現,被刪除的日志不是當前日志組的成員,解決就比較簡單 了:
????????? 步驟6:????? SQL> alter database clear logfile group 1;
??????????????????????????????? 數據庫已更改。
??????????????????????????????? SQL> alter database open;
??????????????????????????????? alter database open
???????????????????????????????? *
??????????????????????????????? ERROR 位于第 1 行:
??????????????????????????????? ORA-00313: 無法打開日志組 2 (線程 1) 的成員
??????????????????????????????? ORA-00312: 聯機日志 2 線程 1: 'C:\ORACLE\ORADATA\NIDB\REDO02.LOG'
注意:如果你的庫是非歸檔的,或許要用下面的語句
??????????????????????????? alter?database?clear?unarchived?logfile?group?1;
現在提示REDO02.LOG文件也被有問題,繼續步驟5、6:
????????? 步驟7:????? SQL> select group#,sequence#,archived,status from v$log;
????????????????????????????????????? GROUP#? SEQUENCE# ARC STATUS
???????????????????????????????? ---------- ---------- --- ----------------
??????????????????????????????????????????????????? 1????????? 0 NO? UNUSED
??????????????????????????????????????????????????? 2??????? 135 NO? INACTIVE
??????????????????????????????????????????????????? 3??????? 136 NO? INVALIDATED
???????????????????????????????? SQL> alter database clear logfile group 2;
???????????????????????????????? 數據庫已更改。
????????? 步驟8:??????? SQL> select group#,sequence#,archived,status from v$log;
???????????????????????????????????????? GROUP#? SEQUENCE# ARC STATUS
????????????????????????????????? ---------- ---------- --- ----------------
?????????????????????????????????????????????????????? 1????????? 0 NO? UNUSED
?????????????????????????????????????????????????????? 2????????? 0 NO? UNUSED
?????????????????????????????????????????????????????? 3??????? 136 NO? INVALIDATED
在做一遍數據庫打開操作:
????????? 步驟9:???????? SQL> alter database open;
如果執行步驟9時提示“alter database open; alter database open ORA-01157: 無法標識/鎖定數據文件 19 - 請參閱 DBWR 跟蹤文件
ORA-01110: 數據文件 19: 'C:\CEGMS.DBF'”錯誤那么就要執行:alter ? database ? datafile ? 'C:\CEGMS.DBF' ? offline ? drop;??? alter ? database ? open;
?????????????????????????????????? 數據庫已更改。
好了,不報錯了,在重新登陸數據庫,順利進入,問題解決!
總結
以上是生活随笔為你收集整理的ora-01033:oracle initializationg or shutdown in progress的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 巧用windows快捷键
- 下一篇: 钩子运行机制HOOK