Oracle 監聽配置詳解
客戶端是透過監聽程式連線到資料庫伺服器的,監聽中記錄著相應的oracle service,而客戶端只需要在tnsnames中提供正確的服務名就可以建立和資料庫伺服器的連線。
以下為伺服器上的listener.ora檔案(linux:/oracle/product/10g/network/admin;windows:D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN)內容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /oracle/product/10g)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = testserver3)(PORT = 1521))
)
)
其中,LISTENER是伺服器中監聽程式的名稱;
PROTOCOL 表明所使用的網路協議,若是TCP/IP協議,則該值必須為“TCP”;
HOST 表示伺服器的網路地址,為伺服器的IP或者網內的機器名;
PORT 指TCP/IP協議在主機中所佔用埠號,ORACLE預設使用1521,是在安裝ORACLE資料庫時定義的,在安裝時可以改變,安裝完成後不能改變此值;
SID_NAME 指伺服器上執行的ORACLE資料庫名稱,該值應與.bash_profile檔案中的環境變數ORACLE_SID相同(一般情況下此檔案為預設值“PLSExtProc”);
ORACLE_HOME 是指ORACLE資料庫的主目錄,該值也應與. bash_profile檔案中的環境變數ORACLE_HOME相同。
客戶機為了和伺服器連線,必須先和伺服器上的監聽程式聯絡。ORACLE透過tnsnames.ora檔案中的連線描述符來說明連線資訊。一般tnsnames.ora 是建立在客戶機上的。如果是客戶機/伺服器結構,整個網路上只有一臺機器安裝了ORACLE資料庫伺服器,那麼只需在每個要訪問ORACLE伺服器的客戶機上定義該檔案,在伺服器上無需定義。但是,如果網路上有多臺機器均安裝了ORACLE資料庫伺服器,並且伺服器之間有資料共享的要求,那麼在每臺伺服器上都必須定義該檔案。
以下是客戶端tnsnames.ora內容:
ORCL_18 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.18)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ORCL)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
其中,ADDRESS_LIST 表示該客戶機要經由多種協議與一臺或多臺伺服器連線。在該樣式檔案中就表示該客戶機要用TCP/IP協議來和伺服器相連。
PROTOCOL 指明要連線使用的協議。
SERVICE_NAME “SERVICE_NAME”就是“Global Database Name”,ORACLE8i資料庫使用“Global Database Name”來唯一標識自己,通常的格式為“name.domain”,此處的值為“ora817.huawei.com”。
HOST 是TCP/IP協議使用的伺服器IP地址或者機器名稱。
PORT 是TCP/IP使用的埠地址。
SID 指定要連線的伺服器上ORACLE資料庫的ORACLE_SID。
SERVER=DEDICATED 表示用專用伺服器連線ORACLE資料庫,該選項在伺服器上的tnsnames.ora檔案中會出現。
Lsnrctl命令綜述
Lsnrctl命令用來管理Oracle監聽器,是一個命令列介面。想呼叫這個命令列工具,在命令列鍵入lsnrctl即可。可以在LSNRCTL>提示符下鍵入help來顯示這些命令的一份清單。
Services 列舉出服務的一個彙總表及為每個協議服務處理程式所建立和拒絕的連線資訊個數
Start listener 啟動指定的監聽器
Status listener顯示指定監聽器的狀態
Stop listener 關閉指定的監聽器
Trace 開啟監聽器的跟蹤特性
Version 顯示Oracle Net軟體與協議介面卡的版本
Change_password 允許使用者修改關閉監聽器所需要的密碼
Reload 重新讀取listener.ora檔案,但不關閉監聽器。如果該檔案發生了變化,重新重新整理監聽器。
Save_config 當從lsnrctl工具中對listener.ora檔案進行了修改時,複製一個叫做listener.bak的listener.ora檔案
Exit 退出lsnrctl實用工具
Quit 執行和exit相同的功能
C:\>lsnrctl services
附錄:
RAC某個節點上的listener.ora 和 tnsnames.ora
# listener.ora.dbsv2 Network Configuration File: /oracle/product/10.2/database/network/admin/listener.ora.dbsv2
# Generated by Oracle configuration tools.
SID_LIST_LISTENER_DBSV2 =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /oracle/product/10.2/database)
(PROGRAM = extproc)
)
)
LISTENER_DBSV2 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbsv2-vip)(PORT = 1521)(IP = FIRST))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.3)(PORT = 1521)(IP = FIRST))
)
)
# tnsnames.ora Network Configuration File: /oracle/product/10.2/database/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbsv1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = dbsv2-vip)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
ORCL2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbsv2-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl2)
)
)
ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbsv1-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl1)
)
)
LISTENERS_ORCL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.3)(PORT = 1521))
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9399028/viewspace-683834/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 監聽配置詳解
- oracle 監聽器配置Oracle
- Oracle 靜態監聽註冊詳解Oracle
- tnsnames.ora監聽配置檔案詳解
- Oracle 動態監聽配置Oracle
- 監聽配置細節引數詳解兩則
- oracle 監聽配置多個埠Oracle
- Oracle 監聽投毒COST解決Oracle
- Oracle 監聽器日誌配置與管理Oracle
- oracle 11g tns和監聽配置Oracle
- CUUG《Oracle 監聽和TNS配置》- 筆記Oracle筆記
- Oracle 監聽Oracle
- Android 解除安裝監聽詳解Android
- 【DBA】Windows 下Oracle 監聽配置注意事項WindowsOracle
- Oracle LISTENER監聽檔案引數詳解及Lsnrctl命令綜述Oracle
- Oracle監聽(1)Oracle
- ORACLE動態監聽與靜態監聽Oracle
- oracle靜態監聽和動態監聽Oracle
- 【oracle】動態監聽與靜態監聽Oracle
- Oracle 10g RAC客戶端配置監聽Oracle 10g客戶端
- 同時配置動態監聽與靜態監聽
- oracle11g 配置監聽ora-12514 解決方案Oracle
- 【Oracle】修改oracle監聽埠Oracle
- oracle靜態監聽Oracle
- JMS監聽Oracle AQOracle
- Oracle監聽的作用Oracle
- ORACLE監聽簡介Oracle
- oracle 監聽重啟Oracle
- Filter(過濾器)與Listener(監聽器)詳解Filter過濾器
- WebView使用詳解——WebViewClient與常用事件監聽WebViewclient事件
- Oracle監聽配置(ora-12514錯誤)Oracle
- ORACLE 動態註冊,靜態註冊,多個監聽,一個監聽多個埠配置Oracle
- 2.5.2. 監聽程式(listener)配置——2.5.2.3. 手工編輯監聽器配置檔案
- 【listener】oracle靜態監聽和動態監聽 【轉載】Oracle
- oracle清理監聽日誌Oracle
- Oracle資料庫監聽Oracle資料庫
- oracle 多庫配監聽Oracle
- oracle的監聽問題Oracle