造成無法啟動的原因有很多,比如修改了什么參數(shù),誤刪了什么配置文件等,當然你要確信并不是特別嚴重的問題,也就是說,是通過正確的操作導致的問題的。比如我就遇到了下面的這樣的問題,我調(diào)整Oracle的sort_area_size等大小來著,設的太大了,導致Oracle無法啟動了。報如下錯誤:
ORA-27102: out of memory
OSD-00029: ????????????
O/S-Error: (OS 8) ??????????????????????????????
解決辦法是重新創(chuàng)建它的動態(tài)參數(shù)文件。
本身它會有一個這樣的文件,存放在D:\oracle\product\10.2.0\admin\SID\pfile\init.ora.192009134459文件里。找到它用它來恢復你做過的設置。
我們做的工作就是用這個靜態(tài)參數(shù)文件啟動數(shù)據(jù)庫,然后,再同步動態(tài)參數(shù)文件,因為現(xiàn)在已經(jīng)無法啟動數(shù)據(jù)庫,所以可以這樣做:
第一步.在CMD下 set oracle_sid=你的SID
第二步,以sqlplus /as sysdba登陸數(shù)據(jù)庫。會提示“已連接到空閑例程”。
第三步,startup pfile=D:\oracle\product\10.2.0\admin\SID\pfile\init.ora.192009134459。也就是用開始那個文件啟動數(shù)據(jù)庫。
第四步,create spfile from pfile='D:\oracle\product\10.2.0\admin\SID\pfile\init.ora.192009134459',來同步動態(tài)參數(shù)。
第五步,shutdown immediate。關閉數(shù)據(jù)庫。
第六步,startup。啟動數(shù)據(jù)庫。如果能看到類似如下的信息,那么恭喜你了。
ORACLE 例程已經(jīng)啟動。

Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 167775108 bytes
Database Buffers 436207616 bytes
Redo Buffers 7135232 bytes
數(shù)據(jù)庫裝載完畢。
數(shù)據(jù)庫已經(jīng)打開。

如果沒有成功的話,就查一下,看看這個新的spfile文件生成到哪里去了。或者再仔細看一下上面的步驟,分析一下原因。
眼鏡蛇