oracle實例crash,報錯信息ORA-00600、ORA-27091、ORA-27072





【故障現象】

2015年2月8日,oracle10.2.0.4單實例數據庫,突然CRASH,但進過重啓運行恢復。檢查alert.log日誌發現如下“ORA-00600、ORA-27091、ORA-27072”報錯信息。

Errors in file /home/db/oracle/admin/db1/bdump/db1_mmon_22544442.trc:

ORA-00600: internal error code, arguments: [kmgs_parameter_update_timeout_1], [27091], [], [], [], [], [], []

ORA-27091: unable to queue I/O

ORA-27072: File I/O error

IBM AIX RISC System/6000 Error: 9: Bad file number

Additional information: 7

Additional information: 4

Additional information: -1


【問題分析】

2014年10月進行雙機切換,spfile爲共享卷裸設備,切換前,備機上沒有清理不應該存在的root權限的spfile文件,切換後,出現異常,oracle的數據裸設備文件的文件權限爲301,且用戶不爲oracle。這些錯誤,使得數據庫持續ORA-27072報錯

  

【問題解決】


修改spfile爲裸設備



# su - oracle

$ export ORACLE_SID=db1


--   Create a PFILE from your current SPFILE:

SQL> create pfile='/tmp/init.ora' from spfile;

SQL> ho more /tmp/init.ora

SQL> shutdown immediate


SQL> startup pfile='/tmp/init.ora';


SQL> ho ls -l /home/db/oracle/oradata/db1/rspfile_db1

lrwxrwxrwx    1 oracle dba              17 Jun 08 2013  /home/db/oracle/oradata/db1/rspfile_db1 -> /dev/recsv01l3110


SQL> create spfile='/home/db/oracle/oradata/db1/rspfile_db1' from pfile;


SQL> shutdown immediate


$ mv spfiledb1.ora spfiledb1.ora_OLD

$ vi initdb1.ora

    增加spfile="/home/db/oracle/oradata/db1/rspfile_db1" 


SQL> startup

SQL> show parameter spfile;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      /home/db/oracle/oradata/db1/rspfile_db1

                                                 

                                                 

【總結】

實施過程中,在用pfile啓動實例後,嘗試alter system set spfile 失敗,報錯信息"ORA-02095: specified initialization parameter cannot be modified".

問題關鍵是,用pfile啓動後,沒有spfile時,無需修改spfile參數,也無法修改。應刪除spfile文件,將pfile內容寫成spfile='xxxx'後,啓動實例後,修改spfile才允許。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章