在 oracle 中配置監聽程序需要以下步驟:檢查現有監聽程序(使用 lsnrctl status 命令)。創建監聽程序(如果不存在)。啟動監聽程序(使用 lsnrctl start 命令)。檢查監聽程序狀態(再次使用 lsnrctl status 命令)。在客戶端配置 tnsnames.ora 文件。
如何在 Oracle 中配置監聽程序
步驟 1:檢查現有的監聽程序
使用 lsnrctl status
命令查看當前正在運行的監聽程序。
如果有多個監聽程序,請使用 -n
選項指定要檢查的監聽程序的名稱。
步驟 2:創建監聽程序(如果不存在)
創建一個文本文件,例如 listener.ora
,并添加以下內容:
<code>SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = orcl) (ORACLE_HOME = /u01/app/oracle/product/19.0.0.0/dbhome_1) (PROGRAM = *)))</code>
登錄后復制
其中,orcl
是數據庫的 SID,/u01/app/oracle/product/19.0.0.0/dbhome_1
是 Oracle 主目錄,*
允許所有程序訪問監聽程序。
保存文件并將其復制到監聽程序配置文件目錄,通常為 /etc/oracle/<version>/network/admin</version>
。
步驟 3:啟動監聽程序
使用以下命令啟動監聽程序:
<code>lsnrctl start <listener_name></listener_name></code>
登錄后復制
其中,<listener_name></listener_name>
是監聽程序的名稱。
步驟 4:檢查監聽程序狀態
使用 lsnrctl status
命令再次檢查監聽程序的狀態。
如果監聽程序啟動成功,您將看到類似以下輸出:
<code>LSNRCTL for Linux: Version 12.2.0.1.0 - Production on Wed Apr 20 16:51:32 2023 Copyright (c) 1991, 2017, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version 12.2.0.1.0 Start Date Wed Apr 20 16:51:32 2023 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Default Service orclXDB</code>
登錄后復制
步驟 5:配置客戶端
在客戶端計算機上,編輯 tnsnames.ora
文件(通常位于 $ORACLE_HOME/network/admin
)。
添加以下條目:
<code><listener_name> = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <hostname>)(PORT = <port>)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = <service_name>) ) )</service_name></port></hostname></listener_name></code>
登錄后復制
其中,<listener_name></listener_name>
是監聽程序的名稱,<hostname></hostname>
是監聽程序所在計算機的名稱,<port></port>
是監聽程序的端口,<service_name></service_name>
是要連接的數據庫服務的名稱。