啟動Oracle數據庫時報錯ORA-00119 & ORA-00132


今天啟動Oracle數據庫時報錯ORA-00119 & ORA-00132,找到解決方法做個記錄,方便日后查看。

 

若是ORACLE不提示錯誤的話,可以自己查看ORACLE的日志文件。

Oracle日志文件地址:D:\app\Administrator\product\11.2.0\dbhome_1\database\oradim.log 

 

這里寫圖片描述

 


果然發現了兩個錯誤:


Wed Nov 09 08:24:07 2016
D:\app\Administrator\product\11.2.0\dbhome_1\bin\oradim.exe -startup -sid orcl -usrpwd * -log oradim.log -nocheck 0
Wed Nov 09 08:25:16 2016
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_ORCL'


如日志顯示的這兩個錯誤:ORA-00119和ORA-00132,可能是因為這兩個錯誤才導致PL/SQL不能正常登錄。找到錯誤根源就好說了,解決這兩個問題即可:


方案一:查看tnsname.ora文件,是否有這段字符串;沒有的話添加即按照實際情況即可。

 LISTENER_DRP = (ADDRESS = (PROTOCOL = TCP)(HOST = Niu)(PORT = 1521)) 

其中DRP為你的數據庫sid,host為主機名。

 

 


 

 

方案二:tnsname.ora文件沒有錯誤的情況下,也有可能出現這個問題,只能采取方案二了。

網上找了很多資料,主要意思是先用spfile產生pfile,再修改local_listener的參數,再重新產生spfile文件,步驟如下:


1、通過spfile復制一份pfile參數文件(注意:oracle中的pfile指的就是init.ora文件,例如下面命令創建的pfile文件就是“INITdrp.ORA”;spfile文件就是SPFILEDRP.ORA)

SQL> create pfile from spfile='D:\app\Administrator\product\11.2.0\dbhome_1\database\SPFILEORCL.ORA';

2、修改pfile參數文件(也即修改init.ora文件,即本文的INITdrp.ORA文件)

經過第一步以后,在$ORACLE_HOME/database目錄會生成文件init.ora,由於我的oracle實例名為drp,所以我的pfile文件為INITdrp.ORA。用記事本打開該文件,找到local_listener這一行,然后將其值修改為:

(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=your_hostname)(Port=1521)))

其中的your_hostname為你的主機名。

 

 

 


3、重新產生spfile文件SPFILEDRP.ORA

SQL> create spfile from pfile='D:\app\Administrator\product\11.2.0\dbhome_1\database\INITorcl.ORA';

4、使用startup命令,重新啟動數據庫即可。


整個流程如圖所示: 

 

 


 


報錯時要學會查看Oracle錯誤日志里面的信息,有時候報的錯誤並不是表面上的那樣,需要我們尋根問底才行。

 

來源:http://itfish.net/article/40251.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM