記得之前Oracle原廠的工程師在例行檢查時(shí)發(fā)現(xiàn)一臺(tái)Oracle數(shù)據(jù)庫(kù)服務(wù)器的上啟動(dòng)了兩個(gè)監(jiān)聽,分別監(jiān)聽的是1521和1581端口,而且兩個(gè)端口都在用,當(dāng)時(shí)當(dāng)作一個(gè)比較奇怪的現(xiàn)象,沒有能理解原因是什么。最近幾天在看Oracle網(wǎng)絡(luò)配置的文檔,無意間在虛擬機(jī)上啟動(dòng)了兩個(gè)監(jiān)聽,就又想起了之前的問題。到底是因?yàn)槭裁丛蚰兀?/p>目前創(chuàng)新互聯(lián)已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、通州網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
下面先來還原一下整個(gè)過程。
當(dāng)時(shí)是在做配置靜態(tài)監(jiān)聽的練習(xí),在listener.ora中配置了一個(gè)靜態(tài)監(jiān)聽:
ORCL = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.2)(PORT=1581)) SID_LIST_ORCL= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=orcl) (ORACLE_HOME=/u02/app/oracle/product/11.2.4/db1) (SID_NAME=orcl)))
啟動(dòng)正常:
[oracle@rhel6 admin]$ lsnrctl start orcl LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 03-JUN-2017 16:22:41 Copyright (c) 1991, 2013, Oracle. All rights reserved. Starting /u02/app/oracle/product/11.2.4/db1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.4.0 - Production System parameter file is /u02/app/oracle/product/11.2.4/db1/network/admin/listener.ora Log messages written to /u02/app/oracle/diag/tnslsnr/rhel6/orcl/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.2)(PORT=1581))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.2)(PORT=1581))) STATUS of the LISTENER ------------------------ Alias orcl Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production Start Date 03-JUN-2017 16:22:41 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u02/app/oracle/product/11.2.4/db1/network/admin/listener.ora Listener Log File /u02/app/oracle/diag/tnslsnr/rhel6/orcl/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.2)(PORT=1581))) Services Summary... Service "orcl" has 1 instance(s). Instance "orcl", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully
遠(yuǎn)程測(cè)試連接成功
這時(shí)不小時(shí)敲了lsnrctl start命令,“神奇”的事情發(fā)生了,又一個(gè)監(jiān)聽起來了:
使用netstat -nltp查端口,兩個(gè)端口都是被監(jiān)聽的狀態(tài):
現(xiàn)在遠(yuǎn)程測(cè)試連接,居然也可以連接成功
那么現(xiàn)在問題就來了,為什么可以啟動(dòng)兩個(gè)監(jiān)聽,而兩個(gè)監(jiān)聽都可以用呢?而且我在listener.ora中并沒有配置1521端口的監(jiān)聽,為什么可以啟動(dòng)1521的監(jiān)聽呢?
先來看第二個(gè)問題,為什么會(huì)啟動(dòng)對(duì)1521端口的監(jiān)聽,從官方文檔中找到這樣一名話:
Because all of the configuration parameters have default values, it is possible to start
and use a listener with no configuration. This default listener has a name of LISTENER,
supports no services on startup, and listens on the following TCP/IP protocol address:
(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1521))
這句話就能解釋為什么會(huì)啟動(dòng)1521端口的監(jiān)聽。我也做了實(shí)驗(yàn),即使是在沒有l(wèi)istener.ora文件的情況下,也會(huì)可以啟動(dòng)名為L(zhǎng)ISTENER的監(jiān)聽來監(jiān)聽1521端口。
解釋了監(jiān)聽起來的問題,再來看第一個(gè)問題,為什么兩個(gè)監(jiān)聽都可以用呢?
先了解一下動(dòng)態(tài)監(jiān)聽和靜態(tài)監(jiān)聽:
動(dòng)態(tài)監(jiān)聽是在數(shù)據(jù)庫(kù)啟動(dòng)后,PMON進(jìn)程會(huì)向本地的端口注冊(cè)服務(wù)信息,默認(rèn)是向本地地址的1521端口注冊(cè)。而前面啟動(dòng)的對(duì)1521端口的監(jiān)聽正符合默認(rèn)的注冊(cè)方式,所以直接可以注冊(cè)成功,數(shù)據(jù)庫(kù)也可以對(duì)外提供服務(wù)。
而最開始配置的靜態(tài)監(jiān)聽的目的就是代替PMON進(jìn)程注冊(cè)的工作,直接把數(shù)據(jù)庫(kù)的服務(wù)強(qiáng)制綁定到監(jiān)聽上,即使數(shù)據(jù)庫(kù)沒有啟動(dòng),這個(gè)數(shù)據(jù)庫(kù)的服務(wù)名還是會(huì)在監(jiān)聽中顯示的。
了解了這些之前,就不難理解為什么兩個(gè)監(jiān)聽可以同時(shí)使用了:數(shù)據(jù)庫(kù)默注冊(cè)到了1521端口的監(jiān)聽上了,而靜態(tài)監(jiān)聽又強(qiáng)制數(shù)據(jù)庫(kù)綁定到了1581端口上,所以兩個(gè)監(jiān)聽端口都是可以通的。
所以出現(xiàn)這種情況的原因是配置靜態(tài)監(jiān)聽的時(shí)候,使用了是1581端口而非默認(rèn)的1521端口,而且又啟動(dòng)了默認(rèn)的監(jiān)聽。如果靜態(tài)監(jiān)聽使用的1521端口,也不會(huì)出現(xiàn)這樣的情況。
那如何能避免使用非默認(rèn)監(jiān)聽端口時(shí)出現(xiàn)這種情況呢?可以在數(shù)據(jù)庫(kù)中配置local_listener參數(shù),詳細(xì)參考之前的博客:http://hbxztc.blog.51cto.com/1587495/1890055
官方文檔:http://docs.oracle.com/cd/E11882_01/network.112/e41945/listenercfg.htm#NETAG292
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前題目:一臺(tái)Oracle數(shù)據(jù)庫(kù)服務(wù)器上兩個(gè)監(jiān)聽同時(shí)使用-創(chuàng)新互聯(lián)
分享路徑:http://www.rwnh.cn/article30/cssipo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站策劃、App設(shè)計(jì)、商城網(wǎng)站、小程序開發(fā)、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容