程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> listener.ora增加監聽端口,listener.ora監聽

listener.ora增加監聽端口,listener.ora監聽

編輯:Oracle教程

listener.ora增加監聽端口,listener.ora監聽


一個簡單的listener.ora

# listener.ora Network Configuration File: d:\app\zyd\product\11.2.0\dbhome_1\network\admin\listener.ora

# Generated by Oracle configuration tools.

 

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = d:\app\zyd\product\11.2.0\dbhome_1)

(PROGRAM = extproc)

(ENVS = "EXTPROC_DLLS=ONLY:d:\app\zyd\product\11.2.0\dbhome_1\bin\oraclr11.dll")

)

)

 

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.160)(PORT = 1666))

)

)

 

ADR_BASE_LISTENER = d:\app\zyd

------------------------文件結束---------------------------

注意需防火牆允許1666端口。


怎查看遠程服務器的監聽服務監聽了什數據庫服務?

lsnrctl status <服務器地址如: lsnrctl status 192.168.0.126如果遠程服務器監聽的是其它端口,那需要在本機的對遠程服務器監聽的連接配置,具體做法是有$ORACLE_HOME/network/admin/listener.ora文件中增加一個監聽器,監聽器的地址是遠程服務器址,端口是遠程的端口,如:LISTENER126 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.126)(PORT = 1522)))表示連接到192.168.0.126的1522監聽端口。然後用lsnrctl status LISTENER126就可顯示遠程服務器的監聽狀態了。同理,可以用這種方法啟動和停止遠程服務器的監聽。
 

為何我用oracle創建了兩個數據庫 卻只用一個端口1521

在TCP/IP網絡中,(IP,端口號)可以唯一確定一個進程的地址,oracle監聽器也是一個TCP/IP網絡中的進程,默認的端口號是1521。
oracle監聽器進程可以同時為多個數據庫服務。
客戶端進程通過listener.ora 獲得oracle監聽器進程的(IP,端口)
oracle監聽器進程通過1521端口接收所有客戶聯接請求,並從客戶聯接請求中分理出客戶希望聯接的數據庫進程的相關信息,比如SID,SERVICE_NAME,DB_NAME。根據這些信息,通過查詢一個本地文件(tnsnames.ora),oracle監聽器進程可以得到客戶想要聯接的數據庫主進程的相關連結信息,並把這些信息返回給客戶端,客戶端根據返回的聯接信息,重新聯接到對應的數據庫主進程。
通過查詢本地配置文件tnsnames.ora,一個oracle監聽器進程就可以同時為多個數據庫(主進程)服務。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved