ORA-12514: TNS: 監聽器目前不知道連線描述區中要求的服務
環境:
[Server]
Windows 2008 Server
Oracle Database 11g R2
[Client]
Windows 7
Oracle Client 11g R2
Oracle Database安裝完後,在Client電腦也完成Oracle Client安裝,tnsnames.ora的配置也都完成了,但是使用sqlplus連線DB時卻出現下面的錯誤訊息。
在排除此問題前先確認,在Oracle Database 的本機使用sqlplus是可以連線的,由此先確定Database Service是有正常運作的。
目前遇過幾個況狀會導致這個錯誤訊息。
<狀況1>Server的主機網域(domain)錯誤或未指定,導致解析不到SID
tnsnames.ora的SERVICE_NAME必需加入網域名稱
<狀況2>Oracle Database Listener未定設SID
1. 登入sys帳號後,利用下面指令可以查出SID名稱。
2. 檢查lListener服務狀態
發現沒有aehome的Listener,所以Client端才會無法利用TNS Name的方式連線。
3. 修改listener.ora,加入aehome的監聽。
4. 重新啟動Listener
重啟後發現已經有監聽aehome了。
5. 此時Client已可以正常使用sqlplus連線了。
[Server]
Windows 2008 Server
Oracle Database 11g R2
[Client]
Windows 7
Oracle Client 11g R2
Oracle Database安裝完後,在Client電腦也完成Oracle Client安裝,tnsnames.ora的配置也都完成了,但是使用sqlplus連線DB時卻出現下面的錯誤訊息。
在排除此問題前先確認,在Oracle Database 的本機使用sqlplus是可以連線的,由此先確定Database Service是有正常運作的。
目前遇過幾個況狀會導致這個錯誤訊息。
<狀況1>Server的主機網域(domain)錯誤或未指定,導致解析不到SID
tnsnames.ora的SERVICE_NAME必需加入網域名稱
<狀況2>Oracle Database Listener未定設SID
1. 登入sys帳號後,利用下面指令可以查出SID名稱。
select instance_name from v$instance; INSTANCE_NAME ---------------- aehome
2. 檢查lListener服務狀態
發現沒有aehome的Listener,所以Client端才會無法利用TNS Name的方式連線。
3. 修改listener.ora,加入aehome的監聽。
4. 重新啟動Listener
重啟後發現已經有監聽aehome了。
5. 此時Client已可以正常使用sqlplus連線了。
留言
張貼留言