RAC中lsnrctl和srvctl的區別(監聽狀態異常)
案例:(環境:hp小機,10G rac)今天早上一客戶發現連線不上資料庫,反饋。
處理過程:
登入伺服器發現有一臺伺服器叢集監聽處於關閉狀態,lsnrctl status發現監聽處於卡死狀態,無法進行正常的關閉,重啟
檢視監聽日誌報錯TNS-12545,另一臺伺服器監聽正常,所以不著急……穩住,慢慢看。
$crs_stat -t
既然從叢集裡面看到監聽關了,那就找到監聽程式殺掉
$ ps -ef |grep tnslsnr
grid 3232 1 0 10:59 ? 00:00:00 /g01/11ggrid/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
kill -15 3232
lsnrctl start啟動監聽,監聽狀態恢復正常,但叢集中監聽狀態仍然是offline
原因:srvctl操作的監聽是listener_rac1,而lsnrctl操作的預設監聽時CRS不會online,或者說lsnrctl操作的監聽反饋不到CRS?
srvctl config listener -n rac1
解決辦法:
lsnrctl stop --關閉監聽
srvctl start listener -n rac1 --開啟監聽服務(rac1為主機名)
不過後來自己在11g庫上做測試,沒有發現這個問題。
此時恢復正常,附上listener.ora
LISTENER_RAC1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521)(IP = FIRST))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.11)(PORT = 1521)(IP = FIRST))
)
)
SID_LIST_LISTENER_RAC1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(PROGRAM = extproc)
)
)
建議:RAC重啟監聽的話建議還是用srvctl
參考文件,感謝……ttp://%E5%9C%A8rac%E4%B8%ADlsnrctl%E5%92%8Csrvctl%E6%93%8D%E4%BD%9C%E7%9B%91%E5%90%AC%E5%8C%BA%E5%88%AB.html
處理過程:
登入伺服器發現有一臺伺服器叢集監聽處於關閉狀態,lsnrctl status發現監聽處於卡死狀態,無法進行正常的關閉,重啟
檢視監聽日誌報錯TNS-12545,另一臺伺服器監聽正常,所以不著急……穩住,慢慢看。
$crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.....XFF.cs application ONLINE ONLINE rac1
ora....db1.srv application ONLINE ONLINE rac2
ora.devdb.db application ONLINE ONLINE rac2
ora....b1.inst application ONLINE ONLINE rac1
ora....b2.inst application ONLINE ONLINE rac2
ora....SM1.asm application ONLINE ONLINE rac1
ora....C1.lsnr application OFFLINE OFFLINE
ora.rac1.gsd application ONLINE ONLINE rac1
ora.rac1.ons application ONLINE ONLINE rac1
ora.rac1.vip application ONLINE ONLINE rac1
ora....SM2.asm application ONLINE ONLINE rac2
ora....C2.lsnr application ONLINE ONLINE rac2
ora.rac2.gsd application ONLINE ONLINE rac2
ora.rac2.ons application ONLINE ONLINE rac2
ora.rac2.vip application ONLINE ONLINE rac2
既然從叢集裡面看到監聽關了,那就找到監聽程式殺掉
$ ps -ef |grep tnslsnr
grid 3232 1 0 10:59 ? 00:00:00 /g01/11ggrid/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
kill -15 3232
lsnrctl start啟動監聽,監聽狀態恢復正常,但叢集中監聽狀態仍然是offline
原因:srvctl操作的監聽是listener_rac1,而lsnrctl操作的預設監聽時CRS不會online,或者說lsnrctl操作的監聽反饋不到CRS?
srvctl config listener -n rac1
解決辦法:
lsnrctl stop --關閉監聽
srvctl start listener -n rac1 --開啟監聽服務(rac1為主機名)
不過後來自己在11g庫上做測試,沒有發現這個問題。
此時恢復正常,附上listener.ora
LISTENER_RAC1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521)(IP = FIRST))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.11)(PORT = 1521)(IP = FIRST))
)
)
SID_LIST_LISTENER_RAC1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(PROGRAM = extproc)
)
)
建議:RAC重啟監聽的話建議還是用srvctl
參考文件,感謝……ttp://%E5%9C%A8rac%E4%B8%ADlsnrctl%E5%92%8Csrvctl%E6%93%8D%E4%BD%9C%E7%9B%91%E5%90%AC%E5%8C%BA%E5%88%AB.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29618264/viewspace-2148250/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【RAC】srvctl管理工具新增新監聽和靜態註冊
- 【RAC】lsnrctl 工具不適合管理監聽
- oracle監聽器啟動lsnrctl status例程的狀態為unknownOracle
- oracle rac的scan監聽狀態Not All Endpoints RegisteredOracle
- srvctl新增新的監聽和埠並靜態註冊
- Java應用異常狀態監測Java
- 有狀態和無狀態的區別
- 中斷和異常,陷阱的區別和聯絡
- RAC中的srvctl和crs命令
- 異常-編譯期異常和執行期異常的區別編譯
- 動態監聽和靜態監聽
- Java中異常分類和Throw和Throws的區別Java
- Oracle 監聽異常處理Oracle
- 處理rac資料庫一個節點監聽異常資料庫
- rac監聽動態註冊
- oracle靜態監聽和動態監聽Oracle
- 非同步API中事件、命令和狀態區別非同步API事件
- rac中解除安裝監聽lsnr和asmASM
- rac監聽不能動態註冊
- 執行時異常和檢查性異常區別
- 【JS】在連續性監聽事件中,監聽當前狀態是否變化JS事件
- rac的vip和監聽莫名故障
- iOS AFN監聽網路狀態iOS
- shell埠監聽異常郵箱告警
- 異常-throw的概述以及和throws的區別
- oracle監聽器動態註冊於靜態註冊的區別Oracle
- 【listener】oracle靜態監聽和動態監聽 【轉載】Oracle
- ssdbgrid中,設了斷點的除錯狀態和執行狀態有區別斷點除錯
- RAC常見命令檢查狀態
- iOS 使用 Reachability 監聽網路狀態iOS
- oracle 資料庫lsnrctl監聽的日誌路徑和trace檔案Oracle資料庫
- Java異常十一:使用throw丟擲異常物件;throw和throws的區別Java物件
- 動態監聽與靜態監聽
- 監聽器控制程式lsnrctl跟蹤trace file
- RAC 監聽中的 IP=FIRST 是啥意思?
- 上午同事的求救郵件,有關監聽的異常!
- 11gR2和10gR2中crsctl/srvctl的區別
- 如何實現UPS電源開關機狀態遠端監測和異常告警?