ora-01033:oracle initialization or shutdown in progress 解決方法

huangdazhu發表於2015-01-06



標題:ora-01033:oracle initialization or shutdown in progress 及其資料檔案損壞解決方法 

作者:lōττéry©版權所有[文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任.]


註釋:
     今討論群的朋友問叫幫忙解決ora-01033:oracle initialization or shutdown in progress 
  見如下詳細資訊


官網:
ORA-01033: ORACLE initialization or shutdown in progress
Cause: An attempt was made to log on while Oracle is being started up or shutdown.
Action: Wait a few minutes. Then retry the operation.



說白了就是資料庫沒有到 open狀態

看下資料庫狀態

SQL> select open_mode from v$database

      OPEN_MODE
      ----------
 如果 MOUNTED    --> 如果狀態是mounted 則試著open下 ,看報什麼錯,同時tail f alertORACLE11g.log檔案
 如果 READ WRITE --> 證明剛剛資料庫還沒有啟動完成您就登陸了 重新登陸就好


下面資訊針對 資料檔案丟失/損壞的 解決

由於問我的人是將物理檔案手動的刪除導致這個錯誤(所以我清楚是資料檔案丟失/損壞  再次也不看alertORACLE11g.log 告警檔案了)(注意:資料庫裡的東西 ,不要直接刪除物理檔案,要利用命令將控制檔案資訊刪除,免得下次重啟或者利用到了 前提快取資訊被覆蓋,控制檔案去找資訊會報錯)


模擬datafile損壞:

SQL> alter database open;  首先資料庫open看下報什麼錯

ORA-01157: 無法標識/ 鎖定資料檔案 5 - 請參閱 DBWR 跟蹤檔案
ORA-01110: 資料檔案 5: 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEST1.DBF'
SQL>

datafile損壞解決方案:
1)   如果有冷備份 或者 rmancopy 就將備份還原 open即可
2)   rman的話先restore 將資料檔案還原 ,recover redo/archive log/undo找回丟失的資料
3) 如果你刪除的表空間你並不想恢復的話,直接更改控制檔案即可 (如果資料庫在呼叫的時候報錯 ,直接將檔案offline, alter tablespace users offline immediate;不觸發檢查)

第一個就沒什麼說的 手動拷回去就可以了

第二方案思路

①、檢視test表空間狀態à online 
   (資料是可用的,因為在資料字典是可用的,在還原之前要現確認將還原的資料檔案狀態 à改成 offline
②、 SQL> alter tablespace users offline immediate;
    immediate說明不觸發檢查,因為資料檔案已經沒有了所以沒必要將buffer cache資訊寫道資料檔案中
③、SQL> SELECT STATUS FROM V$DATAFILE WHERE NAME LIKE '%TEST1.DBF%';à offline
④、rmane> restore tablespace users ;  ---- finish
    檢視下物理檔案  已經 歸還,要 recover 下要不然和其他的資料檔案 scn號不一致
⑤、rmane> recover tablespace users;
    using ....chanal分配的通道
    media recovery ---redo恢復
⑥、SQL> alter tablespace users online;
    select  file#, checkpoint_change#  from v$database ;  資料檔案CKPT scn值
    發現users表空間的ckpt比其他的值要大   
    因為作了 recover 比別的表空間多ckpt操作,如果再發生一次ckpt   所有的資料檔案ckpt scn就一致了


第三方案思路

由於控制檔案內記錄這些資料檔案位置,只要更改下控制檔案資訊就好
①、SQL> alter database backup controlfile to trace as 'd:\aa.txt';- à備份控制檔案到d:\aa.txt
②、 編輯控制檔案資訊 E:\ > start d:\aa.txt   à主要資訊
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'  SIZE 50M,
  GROUP 2 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG'  SIZE 50M,
  GROUP 3 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG'  SIZE 50M
DATAFILE
  'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF',
  'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF',
  'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF',
  'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF',
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEST1.DBF' à刪除該記錄資料檔案行
CHARACTER SET ZHS16GBK;
          ## 刪除沒有用的資訊和空行
③、關閉資料庫 開啟到nomount
     SQL> shutdown immediate;
     ORA-01109: 資料庫未開啟
     已經解除安裝資料庫。
     ORACLE 例程已經關閉。
     SQL> startup nomount
     ORACLE 例程已經啟動。
     Total System Global Area  570425344 bytes
     Fixed Size                  1250188 bytes
     Variable Size             146803828 bytes
     Database Buffers          415236096 bytes
     Redo Buffers                7135232 bytes
     SQL>
④、將更改好的控制檔案重新建立下
SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG
     MAXLOGFILES 16
     MAXLOGMEMBERS 3
     MAXDATAFILES 100
     MAXINSTANCES 8
     MAXLOGHISTORY 292
 LOGFILE
   GROUP 1 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'  SIZE 50M,
   GROUP 2 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG'  SIZE 50M,
   GROUP 3 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG'  SIZE 50M
 DATAFILE
   'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF',
   'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF',
   'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF',
   'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF'
 CHARACTER SET ZHS16GBK;
控制檔案已建立。
⑤、  SQL> alter database open;
     資料庫已更改。
     SQL>


  【源於本人筆記】 若有書寫錯誤,表達錯誤,請指正...


此條目發表在 Oracle 分類目錄。將固定連線加入收藏夾。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28869493/viewspace-1392284/,如需轉載,請註明出處,否則將追究法律責任。

相關文章