changing local listner port in rac from 1521 to 1525

If you have a RAC setup then we need to perform below steps on only one nodes of PROD and DR cluster

curently we have 1521 port used in local listener

[oracle@ol6-112-rac1 admin]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 24-DEC-2020 21:49:01

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                24-DEC-2020 17:22:05
Uptime                    0 days 4 hr. 26 min. 55 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0.3/grid/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/ol6-112-rac1/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.121)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.123)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM1", status READY, has 1 handler(s) for this service...
Service "DUP9" has 1 instance(s).
  Instance "DUP91", status READY, has 1 handler(s) for this service...
Service "DUP9XDB" has 1 instance(s).
  Instance "DUP91", status READY, has 1 handler(s) for this service...
Service "TROY.localdomain" has 2 instance(s).
  Instance "TROY1", status UNKNOWN, has 1 handler(s) for this service...
  Instance "TROY1", status READY, has 1 handler(s) for this service...
Service "TROYXDB.localdomain" has 1 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
Service "TROY_DGB.localdomain" has 1 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
Service "TROY_DGMGRL.localdomain" has 1 instance(s).
  Instance "TROY1", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

lets modify it to 1525

notice the endpoints_listener.ora

[oracle@ol6-112-rac1 admin]$ cat endpoints_listener.ora
LISTENER_OL6-112-RAC1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ol6-112-rac1-vip)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.189.121)(PORT=1521)(IP=FIRST))))            # line added by Agent
[oracle@ol6-112-rac1 admin]$ srvctl modify listener -l LISTENER -p 1525
[oracle@ol6-112-rac1 admin]$ srvctl status listener -l LISTENER
Listener LISTENER is enabled
Listener LISTENER is running on node(s): ol6-112-rac2,ol6-112-rac1
[oracle@ol6-112-rac1 admin]$ srvctl config listener -l LISTENER
Name: LISTENER
Network: 1, Owner: oracle
Home: <CRS home>
End points: TCP:1525

reboot the listener

[oracle@ol6-112-rac1 admin]$ srvctl stop listener
[oracle@ol6-112-rac1 admin]$ srvctl start listener

check the status

[oracle@ol6-112-rac1 admin]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 24-DEC-2020 21:59:23

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                24-DEC-2020 21:59:15
Uptime                    0 days 0 hr. 0 min. 8 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0.3/grid/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/ol6-112-rac1/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.121)(PORT=1525)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.123)(PORT=1525)))
Services Summary...
Service "TROY.localdomain" has 1 instance(s).
  Instance "TROY1", status UNKNOWN, has 1 handler(s) for this service...
Service "TROY_DGMGRL.localdomain" has 1 instance(s).
  Instance "TROY1", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
[oracle@ol6-112-rac1 admin]$ cat endpoints_listener.ora
LISTENER_OL6-112-RAC1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ol6-112-rac1-vip)(PORT=1525))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.189.121)(PORT=1525)(IP=FIRST))))            # line added by Agent

[oracle@ol6-112-rac1 admin]$ cat /u01/app/11.2.0.3/grid/network/admin/endpoints_listener.ora
LISTENER_OL6-112-RAC1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ol6-112-rac1-vip)(PORT=1525))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.189.121)(PORT=1525)(IP=FIRST))))            # line added by Agent

make sure you update your tnsnames.ora with the new port no 1525

changing scan listner port in rac from 1521 to 1523

If you have a RAC setup then you need to perform below steps on only one node of PROD and one node of DR.

PROD side

check config

[oracle@ol6-112-rac1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1521

[oracle@ol6-112-rac1 ~]$ srvctl config scan
SCAN name: ol6-112-scan.localdomain, Network: 1/192.168.189.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /ol6-112-scan.localdomain/192.168.189.125
SCAN VIP name: scan2, IP: /ol6-112-scan.localdomain/192.168.189.126
SCAN VIP name: scan3, IP: /ol6-112-scan.localdomain/192.168.189.127

modify

[oracle@ol6-112-rac1 ~]$ srvctl modify scan_listener -p 1523
[oracle@ol6-112-rac1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1523

reboot scan listener

[oracle@ol6-112-rac1 ~]$ srvctl stop scan_listener
[oracle@ol6-112-rac1 ~]$ srvctl start scan_listener

check status

[oracle@ol6-112-rac1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1523
[oracle@ol6-112-rac1 ~]$  srvctl config scan
SCAN name: ol6-112-scan.localdomain, Network: 1/192.168.189.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /ol6-112-scan.localdomain/192.168.189.125
SCAN VIP name: scan2, IP: /ol6-112-scan.localdomain/192.168.189.126
SCAN VIP name: scan3, IP: /ol6-112-scan.localdomain/192.168.189.127

we need to make changes at db level as well

TROY1@ol6-112-rac1 > sho parameter remo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      ol6-112-scan:1521
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE
remote_os_roles                      boolean     FALSE
result_cache_remote_expiration       integer     0
TROY1@ol6-112-rac1 > Alter system set remote_listener='ol6-112-scan:1523' scope=both sid='*';

System altered.

TROY1@ol6-112-rac1 > sho parameter remo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      ol6-112-scan:1523
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE
remote_os_roles                      boolean     FALSE
result_cache_remote_expiration       integer     0

check status

[oracle@ol6-112-rac1 ~]$ lsnrctl status LISTENER_SCAN2

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 24-DEC-2020 20:18:22

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER_SCAN2
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                24-DEC-2020 20:16:00
Uptime                    0 days 0 hr. 2 min. 22 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0.3/grid/network/admin/listener.ora
Listener Log File         /u01/app/11.2.0.3/grid/log/diag/tnslsnr/ol6-112-rac1/listener_scan2/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN2)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.126)(PORT=1523)))
Services Summary...
Service "TROY.localdomain" has 1 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
Service "TROYXDB.localdomain" has 1 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
Service "TROY_DGB.localdomain" has 1 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
The command completed successfully

DR side

[oracle@ol6-112-dr-rac1 admin]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1521
[oracle@ol6-112-dr-rac1 admin]$ srvctl config scan
SCAN name: ol6-112-dr-scan.localdomain, Network: 1/192.168.189.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /ol6-112-dr-scan.localdomain/192.168.189.135
SCAN VIP name: scan2, IP: /ol6-112-dr-scan.localdomain/192.168.189.136
SCAN VIP name: scan3, IP: /ol6-112-dr-scan.localdomain/192.168.189.137
[oracle@ol6-112-dr-rac1 admin]$ srvctl modify scan_listener -p 1523
[oracle@ol6-112-dr-rac1 admin]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1523
[oracle@ol6-112-dr-rac1 admin]$ srvctl stop scan_listener
[oracle@ol6-112-dr-rac1 admin]$ srvctl start scan_listener
srvctl config scan_listener
[oracle@ol6-112-dr-rac1 admin]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1523
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1523
[oracle@ol6-112-dr-rac1 admin]$ srvctl config scan
SCAN name: ol6-112-dr-scan.localdomain, Network: 1/192.168.189.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /ol6-112-dr-scan.localdomain/192.168.189.135
SCAN VIP name: scan2, IP: /ol6-112-dr-scan.localdomain/192.168.189.136
SCAN VIP name: scan3, IP: /ol6-112-dr-scan.localdomain/192.168.189.137
TROY1@ol6-112-dr-rac1 > sho parameter remo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
_remove_aggr_subquery                boolean     TRUE
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      ol6-112-dr-scan:1521
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE
remote_os_roles                      boolean     FALSE
result_cache_remote_expiration       integer     0
TROY1@ol6-112-dr-rac1 >  Alter system set remote_listener='ol6-112-dr-scan:1523' scope=both sid='*';

System altered.

TROY1@ol6-112-dr-rac1 > sho parameter remo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
_remove_aggr_subquery                boolean     TRUE
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      ol6-112-dr-scan:1523
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE
remote_os_roles                      boolean     FALSE
result_cache_remote_expiration       integer     0

[oracle@ol6-112-dr-rac1 admin]$ lsnrctl status LISTENER_SCAN2

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 24-DEC-2020 20:21:18

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER_SCAN2
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                24-DEC-2020 20:20:03
Uptime                    0 days 0 hr. 1 min. 14 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0.3/grid1/network/admin/listener.ora
Listener Log File         /u01/app/11.2.0.3/grid1/log/diag/tnslsnr/ol6-112-dr-rac1/listener_scan2/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN2)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.189.136)(PORT=1523)))
Services Summary...
Service "TROYXDB.localdomain" has 2 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
  Instance "TROY2", status READY, has 1 handler(s) for this service...
Service "TROY_DR.localdomain" has 2 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
  Instance "TROY2", status READY, has 1 handler(s) for this service...
Service "TROY_DR_DGB.localdomain" has 2 instance(s).
  Instance "TROY1", status READY, has 1 handler(s) for this service...
  Instance "TROY2", status READY, has 1 handler(s) for this service...
The command completed successfully

modify tnsnames.ora

TROY =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ol6-112-scan)(PORT = 1523))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = TROY.localdomain)
    )
  )


TROY_DR =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ol6-112-dr-scan)(PORT = 1523))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = TROY_DR.localdomain)
    )
  )

after port chage recreate dg broker configuration using below doc

https://dbatracker.com/2020/12/23/deleting-broker-configuartion-and-adding-back/