Oracle配置監聽要注意的地方


昨天心血來潮,把Oracle的監聽都刪了,准備重新配一遍,結果弄了一天才配好,不過對Oracle的了解更深了一些。

對昨天的問題做一個總結:

1、直接在NetManager中刪掉監聽時,實際的監聽服務好像並沒有完全刪除,我是通過重新添加與監聽服務同名稱同設置的監聽文件后,通過NetConfigurationAssistant刪掉的

2、重新配好listener.ora和tnsnames.ora后,發現用PL/SQL連不上,重啟數據庫時,報LocalListener連接字符串出錯,於是根據spfile重建pfile,發現LocalListener的值必須和tnsnames.ora中設置的網絡服務名對應,修改並重建spfile后,能啟動數據庫實例,並能用Sqlplus連上

3、通過PL/SQL連時發現連不上,所以sqlplus是不需要通過監聽連數據庫,而pl/sql是需要的,可以用pl/sql測試監聽是否配置成功。重啟監聽,報錯,發現是listener.ora中的實例名(必須和數據庫的實例名對應)寫錯了(注意:該文件包含兩部分(據說11g之后,只要監聽部分就可以了,另一部分自動注冊,我的也是11g啊,不知道為什么不行,留待解決),通過NetConfigurationAssistant或NetManager創建時可能只創建了一個,需要將OracleHome和SID的設置補全),改之,還是報錯,檢查tnsnames.ora,發現servicename寫錯了(必須和數據庫的servicename對應),再改之,終於連上了。ps:Host可以寫ip、局域網內可以直接寫本機名、localhost

所碰到的所有錯誤名稱:

1、協議適配器出錯:最早報的錯,此時數據庫都沒有啟動

2、 TNS: 監聽程序當前無法識別連接描述符中請求的服務:應該是監聽文件出錯了

3、invalid specification for system parameter LOCAL_LISTENERORA-00132: syntax error or unresolved network name ’LISTENER_ORCL’:pfile中LocalListener寫錯了

4、TNS: 監聽程序無法分發客戶機連接:listener.ora中sid寫錯了

5、監聽程序不支持服務:listener.ora中沒有加sid的配置

6、not logged on:數據庫沒有正確關閉,重啟數據庫


免責聲明!

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



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