1.安裝Oracle後,更改Windows電腦名稱,導致部分Oracle第三方工具,如:PLSQL Developer無法登陸,並提示ORA-12541:TNS:no listener或ORA-12547:TNS:丟失聯絡等錯誤資訊的解決方案。
答:從Oracle的錯誤提示來看,是說TNS:no listener ,估計是某種服務沒有啟動,開啟windows管理工具->服務,一看,有一個OracleOraHome90TNSListener這樣的服務,和錯誤資訊題是一致,基本就可以肯定是這個服務所引發的問題。再一看,該服務沒有啟動,遂手工啟動,重新整理後一看,該服務居然馬上就自動關閉了。重試N次,結果一樣。到Google搜尋看看,沒想到這還是一個普遍的問題,有一個人提出,把安裝目錄下的listener.ora開啟察看。如:d:\oracle\ora90\network\admin\listener.ora。
開啟該設定檔後發現如下一段配置資訊:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = local)(PORT = 1521))
)
)
)
當看到這一行HOST=local 的時候,問題解決了。原來是由於幾天裝好Oracle後,又改了Windows的電腦名稱,而這個設定檔中記錄的監聽主機名稱還是原來的名稱,這也就怪不得,OracleOraHome90TNSListener服務無法啟動了,馬上修改為現在的電腦名稱,再次啟動OracleOraHome90TNSListener服務成功,PL/SQL Developer串連Oracle資料庫成功,不能登陸故障排除。
總結:Oracle比較強調手動功能調整,將一些配置資訊放置在設定檔中。不像SqlServer一樣,幾乎把任何資訊都放在註冊表中,當然了這也符合Oracle作為一個跨平台資料庫的精神。但對初學者來說,確有一定難度,不像SqlServer那麼"傻瓜",再解決這個問題時,差點又重裝一次Oracle,看來遇到問題多Google多分析,還是屢試不爽的。