ora-01033 解決方法
今天研究Oracle遇到了這個問題 ora-01033 : oracle initialization or shutdown in progress,經過分析研究終於解決了,寫下來紀念一下。我的庫是oracle 9i,具體就是90的。
一、首先:問題的產生原因,出現這個錯誤是因為我將oracle/oradata/oradb下的一個檔案誤刪除掉後出現的。
二、現象:SQL*Plus無法連線,顯示以下錯誤: ORA-01033 : ORACLE initialization or shutdown in progress ,Enterprise Manager Console中也是同樣的錯誤。
三、分析:應該是Oracle在啟動後,使用者登入時是要將方案中原有配置資訊裝載進入,裝載過程中遇到原有檔案指定的位置上沒有找到,所以就報出錯誤。
四、解決過程:
1、我在解決時由於著急使用,便用Database Configuration Assistant工具重新建立了一個新的庫,臨時解決急用的問題,同時也給後期解決ora-01033問題埋下了隱患。
2、在9i中是沒有svrmgrl 命令的,要用sqlplus。
3、先在windows下執行cmd,進入DOS環境。
4、以DBA使用者登入,具體命令是
sqlplus /NOLOG
SQL>connect sys/change_on_install as sysdba
提示:已成功
SQL>shutdown normal
提示:資料庫已經關閉已經解除安裝資料庫 ORACLE 例程已經關閉
SQL>startup mount
提示:ORACLE例程已經啟動
Total System Global Area 118255568 bytes Fixed Size
282576 bytes Variable Size
82886080 bytes Database Buffers
33554432 bytes Redo Buffers
532480 bytes
資料庫裝載完畢
SQL>alter database open;
提示:第 1 行出現錯誤: ORA-01157: 無法標識/鎖定資料檔案 19 - 請參閱 DBWR 跟蹤檔案
ORA-01110: 資料檔案 19: ''C:/oracle/oradata/oradb/FYGL.ORA' 這個提示檔案部分根據每個人不同情況有點差別。
繼續輸入
SQL>alter database datafile 19 offline drop;
提示:資料庫已更改。
迴圈使用最後兩步,直到alter database open;後不再提示錯誤,出現“資料庫已更改”。
然後接著輸入即可
SQL>shutdown normal
提示:資料庫已經關閉已經解除安裝資料庫 ORACLE 例程已經關閉
SQL>startup
提示:ORACLE例程已經啟動
Total System Global Area 118255568 bytes Fixed Size
282576 bytes Variable Size
82886080 bytes Database Buffers
33554432 bytes Redo Buffers
532480 bytes
資料庫裝載完畢
就可以解決了。
5、最後說一下,第一條提到的隱患,因為建立了新的庫,ORACLE_SID也就發生了變化,在使用者登入的時候會有ORA-12560錯誤,解決這個問題是將系統登錄檔中的HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0/ORACLE_SID 鍵值修改成之前那個SID就可以了,使用者也能就能正常登入了。
歡迎訪問我公司http://www.syzsrj.com/,我們立足於電力行業軟體多年,有豐富的專案研發實施經驗,專業開發班組建設管理資訊系統