【LISTENER】因 tnsnames.ora配置檔案配置問題導致ORA-12154錯誤排查一例
這是一個有關手工配置tnsnames.ora不當,導致服務名不可用的一個問題案例。提醒大家在手工配置的過程中注意其中的細節。
1.錯誤資訊如下
當使用secooler這個服務名連線資料庫的時候,收到如下錯誤
-bash-3.00$ sqlplus sec/sec@secooler
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 13 23:11:00 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Enter user-name:
2.檢查Oracle的監聽配置檔案tnsnames.ora
$ vi tnsnames.ora
……
secooler=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=secdb)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=secooler)))
……
問題就處在在配置secooler服務名的時候存在一行內容沒有留有空格(上面第四行的資訊"(CONNECT_DATA="前面沒有留有空格)。
3.處理問題
僅需將第四行前增加一個空格即可解決問題。
4.關於tnsnames.ora配置檔案的寫法
在手工配置tnsnames.ora檔案的時候,最容易出現的就是語法和格式上的問題。針對具體的一個服務名的配置只允許開始服務名頂頭書寫。
即便是整個服務名內容均寫在一行也是沒有問題的。例如secooler服務名按照如下方法進行配置。
secooler=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=secdb)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=secooler)))
測試服務名secooler的可用性
-bash-3.00$ sqlplus sec/sec@secooler
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 13 23:14:10 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
5.小結
文中提到的問題與Oracle解析tnsnames檔案有關。如果大家習慣使用netca來配置服務名,那將會很少遇到因為tnsnames.ora格式上的問題。不過netca這種圖形化介面工具在某些條件下不便於使用(如僅允許使用命令列介面完成維護任務)。因此,建議大家對tnsnames.ora檔案格式有充分的瞭解,避免不必要的麻煩。
Good luck.
secooler
10.09.13
-- The End --
1.錯誤資訊如下
當使用secooler這個服務名連線資料庫的時候,收到如下錯誤
-bash-3.00$ sqlplus sec/sec@secooler
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 13 23:11:00 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Enter user-name:
2.檢查Oracle的監聽配置檔案tnsnames.ora
$ vi tnsnames.ora
……
secooler=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=secdb)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=secooler)))
……
問題就處在在配置secooler服務名的時候存在一行內容沒有留有空格(上面第四行的資訊"(CONNECT_DATA="前面沒有留有空格)。
3.處理問題
僅需將第四行前增加一個空格即可解決問題。
4.關於tnsnames.ora配置檔案的寫法
在手工配置tnsnames.ora檔案的時候,最容易出現的就是語法和格式上的問題。針對具體的一個服務名的配置只允許開始服務名頂頭書寫。
即便是整個服務名內容均寫在一行也是沒有問題的。例如secooler服務名按照如下方法進行配置。
secooler=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=secdb)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=secooler)))
測試服務名secooler的可用性
-bash-3.00$ sqlplus sec/sec@secooler
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 13 23:14:10 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
5.小結
文中提到的問題與Oracle解析tnsnames檔案有關。如果大家習慣使用netca來配置服務名,那將會很少遇到因為tnsnames.ora格式上的問題。不過netca這種圖形化介面工具在某些條件下不便於使用(如僅允許使用命令列介面完成維護任務)。因此,建議大家對tnsnames.ora檔案格式有充分的瞭解,避免不必要的麻煩。
Good luck.
secooler
10.09.13
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-673794/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 記一次 hosts 檔案配置錯誤導致應用卡頓的奇葩問題
- 錯誤思維導向致IT專案問題多
- Listener.ora、sqlnet.ora、tnsnames.ora三個配置檔案區別SQL
- Oracle 網路配置用到的sqlnet.ora, tnsnames.ora, listener.ora檔案OracleSQL
- 手工配置listener.ora檔案及TNS-01201錯誤
- 【問題處理】因誤修改inittab檔案導致Oracle 10gR2 CRS無法啟動Oracle 10g
- Oracle的網路三大配置檔案(sqlnet.ora、tnsnames.ora、listener.ora)OracleSQL
- oraInst.loc檔案錯誤導致opatch失敗問題的解決AI
- tnsnames.ora監聽配置檔案詳解
- 如何解決url傳參導致錯誤問題
- TNS問題排查 The listener supports no services
- 【RAC】因虛擬機器配置檔案調整不完整導致RAC無法使用虛擬機
- 【故障處理】因GREP“花哨”功能導致ORA-12157錯誤的排查過程
- [譯] RxJS: 避免因濫用 switchMap 而導致錯誤JS
- 【問題處理】恢復因誤生成PFILE 導致RAC的SPFILE無效的問題
- listener的ORACLE_HOME配置出錯導致無法遠端登陸資料庫Oracle資料庫
- JiveJdon3.0 配置檔案問題
- [20160512]tnsnames.ora配置檔案.txt
- ORACLE配置tnsnames.ora檔案例項Oracle
- 解決 PBootCMS 中因資料庫名稱錯誤導致的“執行 SQL 發生錯誤!錯誤:no such table: ay_config”問題boot資料庫SQL
- 配置tnsnames.ora遇到的幾個問題總結
- pyinstaller 打包後讀取 ini 配置檔案路徑錯誤,怎麼定位配置檔案
- Java ibatis配置問題導致Myeclipse啟動web專案失敗JavaBATEclipseWeb
- CentOS 防火牆配置與REJECT導致沒有生效問題CentOS防火牆
- 資料庫預設安裝配置導致的問題資料庫
- oracle網路配置listener.ora、sqlnet.ora、tnsnames.oraOracleSQL
- oracle網路配置(listener.ora/sqlnet.ora/tnsnames.ora)OracleSQL
- 關於websphere讀取war配置檔案出錯的問題Web
- jdbc版本過低或oracle_home配置錯誤,導致ORA-28040JDBCOracle
- GoldenGate MSSQL Oracle的主鍵問題導致的錯誤GoSQLOracle
- Oracle升級導致ocr檔案損壞一例Oracle
- angular版本更新與配置檔案問題Angular
- 請教spring 配置檔案問題Spring
- 從專案管理角度看因防疫導致的孕婦流產問題專案管理
- nginx 配置 proxy_next_upstream 會出現未預期 502 錯誤問題排查Nginx
- OGG-01031錯誤處理一例 (目的端檔案被其他程式鎖住導致)
- MTU問題導致大檔案傳輸速度很慢
- TSM配置不好導致備份不正常,從而導致資料庫效能問題資料庫