ITPub博客

首页 > 数据库 > Oracle > rac修改监听端口

rac修改监听端口

原创 Oracle 作者:oracle11111 时间:2024-11-08 14:10:25 0 删除 编辑

rac修改监听端口


一、背景与目标


在生产环境中,为了安全考虑,通常需要修改Oracle RAC监听的默认端口号。本技术方案旨在详细说明如何在Oracle RAC环境中修改监听端口,包括SCAN listener端口和Listener Ports,以确保数据库的安全性和稳定性。


二、环境准备


Oracle RAC集群环境已搭建并正常运行。

拥有足够的权限(如grid用户和oracle用户)来执行相关操作。


一、环境说明

数据库版本:

Version 19.3.0.0.0

系统版本:

[grid@rac1 ~]$ cat /etc/redhat-release 

Red Hat Enterprise Linux Server release 7.6 (Maipo)

IP相关信息:

# public

192.168.56.111        rac1

192.168.56.112        rac2

 

# private

10.10.10.1   rac1-priv

10.10.10.2   rac2-priv

 

# virtual

192.168.56.113    rac1-vip

192.168.56.114    rac2-vip


# scan-ip

192.168.56.115            rac-scan



需要注意的是如果某个应用要通过 SCAN IP 访问数据库,开通网络访问关系时除了开通 SCAN IP 端口外,还需要开通各个 VIP 监听端口,

因为SCAN IP 是把连接请求发送转发给 local listener,后续应用和 local listener 之间通讯的过程,

需要通过 VIP 来访问故也需要开通 VIP 监听端口,连接建立完成后,和 SCAN IP 就没有关系了


 

1.查看当前的本地监听和scan监听配置

[grid@rac1 ~]$ srvctl config scan_listener

SCAN Listeners for network 1:

Registration invited nodes: 

Registration invited subnets: 

Endpoints: TCP:1521

SCAN Listener LISTENER_SCAN1 exists

SCAN Listener is enabled.

[grid@rac1 ~]$ srvctl config scan

SCAN name: rac-scan, Network: 1

Subnet IPv4: 192.168.56.0/255.255.255.0/enp0s3, static

Subnet IPv6: 

SCAN 1 IPv4 VIP: 192.168.56.115

SCAN VIP is enabled.

[grid@rac1 ~]$ srvctl config listener -l listener

Name: LISTENER

Type: Database Listener

Network: 1, Owner: grid

Home: <CRS home>

End points: TCP:1521

Listener is enabled.

Listener is individually enabled on nodes: 

Listener is individually disabled on nodes: 


2 查看监听状态

[grid@rac1 ~]$ lsnrctl  status


LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 08-NOV-2024 01:01:42


Copyright (c) 1991, 2019, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER

Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production

Start Date                07-NOV-2024 05:00:14

Uptime                    0 days 20 hr. 1 min. 28 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/app/19.9.0/grid/network/admin/listener.ora

Listener Log File         /u01/app/grid/diag/tnslsnr/rac1/listener/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.111)(PORT=1521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.113)(PORT=1521)))

Services Summary...

Service "+ASM" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "+ASM_DATA" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "+ASM_OCR" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "86b637b62fdf7a65e053f706e80a27ca" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

Service "orcl" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

Service "orclXDB" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

The command completed successfully



[grid@rac1 ~]$ lsnrctl status LISTENER_SCAN1


LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 08-NOV-2024 01:01:55


Copyright (c) 1991, 2019, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER_SCAN1

Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production

Start Date                07-NOV-2024 04:59:22

Uptime                    0 days 20 hr. 2 min. 33 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/app/19.9.0/grid/network/admin/listener.ora

Listener Log File         /u01/app/grid/diag/tnslsnr/rac1/listener_scan1/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.115)(PORT=1521)))

Services Summary...

Service "86b637b62fdf7a65e053f706e80a27ca" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orcl" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orclXDB" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

The command completed successfully


3 修改监听端口 

[grid@rac1 ~]$ srvctl modify listener -l LISTENER -p "TCP:11521"

[grid@rac1 ~]$ 

[grid@rac1 ~]$ srvctl modify scan_listener -p 11521


再次查看状态

[grid@rac1 ~]$ lsnrctl status


LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 08-NOV-2024 01:03:20


Copyright (c) 1991, 2019, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER

Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production

Start Date                07-NOV-2024 05:00:14

Uptime                    0 days 20 hr. 3 min. 6 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/app/19.9.0/grid/network/admin/listener.ora

Listener Log File         /u01/app/grid/diag/tnslsnr/rac1/listener/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.111)(PORT=11521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.113)(PORT=11521)))

Services Summary...

Service "+ASM" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "+ASM_DATA" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "+ASM_OCR" has 1 instance(s).

  Instance "+ASM1", status READY, has 1 handler(s) for this service...

Service "86b637b62fdf7a65e053f706e80a27ca" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

Service "orcl" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

Service "orclXDB" has 1 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

The command completed successfully

[grid@rac1 ~]$ lsnrctl status LISTENER_SCAN1


LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 08-NOV-2024 01:03:30


Copyright (c) 1991, 2019, Oracle.  All rights reserved.


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER_SCAN1

Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production

Start Date                07-NOV-2024 04:59:22

Uptime                    0 days 20 hr. 4 min. 8 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/app/19.9.0/grid/network/admin/listener.ora

Listener Log File         /u01/app/grid/diag/tnslsnr/rac1/listener_scan1/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.115)(PORT=11521)))

Services Summary...

Service "86b637b62fdf7a65e053f706e80a27ca" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orcl" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

Service "orclXDB" has 2 instance(s).

  Instance "orcl1", status READY, has 1 handler(s) for this service...

  Instance "orcl2", status READY, has 1 handler(s) for this service...

The command completed successfully


可以看到监听端口应该修改


检查发现监听已经正常启动,端口号也改变为正确的端口,无需单独重启。

如有需要重启动监听,(正常情况下不需要重启,数据库会自动应用新的端口)

仅在节点 1 上执行。


[grid@rac01 ]$ srvctl stop listener -l listener

[grid@rac01 ]$ srvctl stop scan_listener


[grid@rac01 ]$ srvctl start listener -l listener

[grid@rac01 ]$ srvctl start scan_listener

4.监听检查状态

在 scan 所在的节点执行


[grid@rac02 ~]$ lsnrctl status LISTENER_SCAN1

节点 1 和节点 2 都检查执行


[grid@rac02 ~]$ lsnrctl status

5.检查asm监听信息。


local_listener      string   (ADDRESS=(PROTOCOL=TCP)(HOST=

192.168.56.114)(PORT=11521))



6.查看数据库的监听信息


SQL>  show parameter list

forward_listener      string

listener_networks      string

local_listener      string   (ADDRESS=(PROTOCOL=TCP)(HOST=

192.168.56.113)(PORT=11521))

remote_listener      string   rac-scan:11521



如果没有自动修改则登录数据库实例,仅在其中一个实例执行。


alter system set remote_listener='rac-scan:11521' scope=both;

修改 LOCAL_LISTENER 仅仅在一个主机上执行。


alter system set local_listener = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.113)(PORT=11521))' scope=both sid='orcl1';

alter system set local_listener = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.114)(PORT=11521))' scope=both sid='orcl2';


7.修改 tnsnames.ora 配置文件

记得修改各个客户端以及 tnsnames.ora 配置文件中监听端口的配置。


vim /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/tnsnames.ora





来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69924215/viewspace-3047477/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORA-08104报错处理
请登录后发表评论 登录
全部评论

注册时间:2019-05-19

  • 博文量
    81
  • 访问量
    90371