相信這個錯誤大家都不陌生,只要安裝使用過Oracle的估計都遇到過這個問題,一般出現在用PL/SQL連接Oracle數據庫的時候發生的。
導致這個錯誤的原因以及解決方案都是多種多樣的,我也是三番五次的遇到過這個問題,今天就把ORA-12154的解決方案總結一下。
1、首先查看服務器端,Oracle服務和監聽服務是否啟動。Win+R,輸入services.msc,查看服務。檢查下圖中的兩個服務是否正在運行。
2、通過Sql Plus連接數據庫試試,排除服務端的錯誤。如果Sql Plus連接能成功,那就說明安裝的過程沒有錯誤,數據庫能夠正常使用,錯誤出在一些配置裡。
3、如果sqlplus能成功登錄,證明服務端沒有問題,那麼就開始排查配置,先查看Oracle安裝目錄:D:\app\NiuNiu\product\11.2.0\dbhome_1\NETWORK\ADMIN 下的tnsnames.ora文件是否配置了相應的連接描述符。也就是查看是否配置了新的網絡服務。
另外,要注意網絡服務名,如DRP之前不能有空格,並且兩個服務之間可以有空行,但也不能有空格符。可能有了空格會識別不了吧。如下圖所示:
4、查看環境變量-系統變量Path,是否有Oracle安裝目錄:D:\app\NiuNiu\product\11.2.0\dbhome_1\bin; 這個變量是安裝Oracle的時候自動生成的,保險起見最好查看一下。
5、如果安裝的是Oracle 10g版本,則打開PL/SQL,取消登陸後,在PLSQL Developer工具欄中找到“Tools—>Preferences”,在Oracle的Connection節點中找到Oracle Home選擇OraClient10g_home1,保存後關閉PLSQL Developer,如下圖所示: