close

現場(環境): CentOS 6.9  套件: lsnctrl

 


原因:

前幾天進行了資料庫移機作業,

有關於監聽器的設定值都有跟著做移轉(tnsname.ora & listener.ora)

但是卻發現要啟用監聽器的時候完全無法啟動。

 

[oracle@db1 ~]$ lsnrctl start

 

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 30-AUG-2017 09:55:01

 

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

 

TNS-01106: Listener using listener name LISTENER has already been started

 

ss –tnlp 去檢查時,發現監聽器的TCP 1521 沒有啟用!!

問題發生在哪裡??


 


處理方式:

 

[oracle@db1 ~]$ lsnrctl stop

再關閉監聽器的時候發現,它有找不到file&資料夾的錯誤訊息。

 

 

表示我的監聽器的檔案設定一定有問題。

 

tnsname.ora  設定DB LINK的檔案 (問題不會在這)

listener.ora 出問題的檔案。

 

這檔案,我連入的時候去看了一下,我是用IP位址去設定。

乍看之下沒有問題,但問了DBA之後,他說建議使用Hostname去進行設定。

因為是本機的監聽器,修改成hostname,也是要依/etc/hosts為主。

 

 

而這次修改完成後,會如下圖所示。

 

再次重啟監聽器

 

[oracle@db1 ~]$ lsnrctl stop

[oracle@db1 ~]$ lsnrctl start

 

服務就運作正常了!!!

TCP-1521 PORT正常運作。

 

也有看到其他人分享說,

如果你listener.ora原本就是設定成DomainName,

但要進行lsnrctl start失敗的話。

 

先做關閉監聽器的服務,再重新打開。

這樣子很有可能就會恢復正常了!

 

(本篇完)

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 IT001 的頭像
    IT001

    IT001

    IT001 發表在 痞客邦 留言(0) 人氣()