TNS-12541: TNS:no listener TNS-12560 TNS-00511: No listener


    為了測試需要,系統管理員幫忙將一台ORACLE數據庫服務器克隆到虛擬機上,我上去刪除了root、oracle、tomcat賬號下的crontab定時作業,然后啟動了ORACLE數據庫實例,刪除了ORACLE下的作業,然后啟動監聽時報如下錯誤:

[oracle@EGMLNX02 admin]$ lsnrctl stop

LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 10-MAR-2014 09:15:44

Copyright (c) 1991, 2007, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=EGMLNX02.egm1.esquel.com)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 2: No such file or directory

檢查了監聽配置文件listener.ora, 發現沒有問題.Google搜索了一下: 這個錯誤跟Linux的主機名和IP配置有關系,於是趕緊檢查:

[oracle@EGMLNX02 admin]$ hostname
EGMLNX02.egm1.esquel.com
[oracle@EGMLNX02 admin]$ more /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=EGMLNX02.egm1.esquel.com

image

結果發現主機名和IP配置文件 hosts里面,不知道是系統管理員手誤還是其它原因,在hosts文件,127.0.0.1配置里面多了一項EGMLNX02(應該為三項),結果導致ORACLE數據庫監聽服務器啟動報錯


關於主機名和IP配置文件,一般情況下hosts文件的每行為一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明,不被系統解釋。
第一部份:網絡IP地址;
第二部份:主機名或域名;
第三部份:主機名別名;

於是修改hosts文件,然后重新啟動監聽,OK,文件解決了。


免責聲明!

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



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