昨天同事说有套RAC集群客户要求修改数据库的监听端口,在处理的过程中,发现网上的相关资料都不是很全面,所以整理了一下,希望给其他有需要的朋友提供一点有利的参考资料。具体操作过程如下:
--修改配置信息中保存的端口信息
使用GRID用户修改
srvctl modify listener -l LISTENER -p 15210
srvctl modify scan_listener -p 15210
srvctl modify scan_listener -p 15210
--修改本地监听及SCAN监听端口
以oracle用户登陆,执行以下修改:
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.8.94)(PORT=15210))))' scope=both sid='db1';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.8.96)(PORT=15210))))' scope=both sid='db2';
alter system set remote_listener='gisscan:15210' scope=both sid='db1';
alter system set remote_listener='gisscan:15210' scope=both sid='db2';
以grid用户登陆,执行以下修改:
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.8.94)(PORT=15210))))' scope=both sid='+ASM1';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.100.8.96)(PORT=15210))))' scope=both sid='+ASM2';
alter system set remote_listener='gisscan:15210' scope=both sid='+ASM1';
alter system set remote_listener='gisscan:15210' scope=both sid='+ASM2';
srvctl stop listener
srvctl start listener
srvctl stop scan_listener
srvctl start scan_listener
srvctl start listener
srvctl stop scan_listener
srvctl start scan_listener