更改 Oracle 數據庫機 X8-2M 的網格偵聽器埠
我需要添加一個額外的埠:1522
Listener Parameter File /u01/app/19.0.0.0/grid/network/admin/listener.ora Listener Log File /u01/app/grid/diag/tnslsnr/xxxx/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xxxx)(PORT=1521))) Services Summary... Service "xxxx" has 1 instance(s).
/u01/app/19.0.0.0/grid/network/admin/listener.ora->
LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))) # line added by Agent ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET #
每次編輯 listener.ora 監聽器啟動失敗:
我試過:
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER)) (ADDRESS = (PROTOCOL = TCP)(HOST = xxxx)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = xxxx)(PORT = 1522)) ) ) ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET # line added by Agent
srvctl start listener PRCR-1079:無法啟動資源 ora.LISTENER.lsnr CRS-5016:由代理“ORAAGENT”為操作“start”生成的程序“/u01/app/19.0.0.0/grid/bin/lsnrctl”失敗: “/u01/app/grid/diag/crs/xxxx/crs/trace/crsd_oraagent_grid.trc”中“(:CLSN00010:)”的詳細資訊
偵聽器無法啟動。請參閱上面的錯誤消息…
2021-02-17 15:32:19.462:CLSDYNAM:2613040896:
$$ ora.LISTENER.lsnr $${1:35727:65428}$$ start $$(:CLSN00010:)Utils:execCmd scls_process_join() uret 1 2021-02-17 15:32:19.462:CLSDYNAM:2613040896:
$$ ora.LISTENER.lsnr $${1:35727:65428}$$ start $$clsnUtils::error Exception type=2 string= CRS-5016: Process “/u01/app/19.0.0.0/grid/bin/lsnrctl” 由代理 “ORAAGENT” 為操作 “start” 生成失敗:詳細資訊在 “(:CLSN00010 :)”在“/u01/app/grid/diag/crs/etabonxrdbs0010/crs/trace/crsd_oraagent_grid.trc” 2021-02-17 15:32:19.463:AGFW:2610939648:
$$ INFO $${1:35727:65428} 代理髮送回复:RESOURCE_START$$ ora.LISTENER.lsnr etabonxrdbs0010 1 $$ID 4098:1355034 2021-02-17 15:32:19.463:CLSDYNAM:2613040896:$$ ora.LISTENER.lsnr $${1:35727:65428}$$ start $$LsnrAgent::Lsnrctl::start lsnrctl start complete lsnrname:LISTENER output: LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2021 15:32:19 版權所有 (c) 1991, 2020,甲骨文。版權所有。
…
2021-02-17 18:19:34.200:CLSDYNAM:2606737152:
$$ ora.LISTENER.lsnr $${1:35727:1260}$$ check $$clsnUtils::error Exception type=2 string= CRS-5020: 並非所有端點都為偵聽器 LISTENER 註冊
I tried: srvctl modify listener -p "TCP:1521/TCP:1522"; srvctl config listener Name: LISTENER Type: Database Listener Network: 1, Owner: grid Home: <CRS home> End points: TCP:1521, 1522 Listener is enabled. Listener is individually enabled on nodes: Listener is individually disabled on nodes:
該命令肯定是(使用者網格):
srvctl modify listener listener -p "TCP:1522,4444,nnnn"
我們的問題是我們想要使用的埠被 ODA 上的另一個服務(例如 ONS)使用。該命令完成,但偵聽器忽略了埠。這可能解釋了上面的日誌。
我們還需要在 ODA CDB/ASM 上輸入 local_listener:
alter system set local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1522))';
我們在 Oracle 支持部門打開了 SR 並得到了回饋:
現在 ODA 上的 dcs 代理不處理多個偵聽器埠。我們可以將偵聽器配置為使用 ODA 上的多個埠。但是我們在創建數據庫、註冊數據庫期間遇到問題。已針對此類問題記錄了增強功能,這些問題將在未來版本中修復 Enh 30095060 - ODACLI 無法註冊數據庫 目前我不建議向偵聽器添加多個埠。