Hi All,
I have recently modified listener port from 1521 to 1592. And ever since then, I figured out local_listener parameter keep resetting to default 1521 port.
listener parameter file:
=================
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1592))
(ADDRESS = (PROTOCOL = TCP)(HOST = aqua.oradba.com)(PORT = 1592))
)
)
ADR_BASE_LISTENER = /oradba/app/oracle
tnsnames.ora file:
==============
aqua =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = aqua.oradba.com)(PORT = 1592))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = aqua.oradba.com)
)
)
Listener status
============
LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 17-SEP-2016 22:47:24
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1592)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date 17-SEP-2016 22:32:30
Uptime 0 days 0 hr. 14 min. 54 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oradba/app/oracle/product/11203/network/admin/listener.ora
Listener Log File /oradba/app/oracle/diag/tnslsnr/aqua/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1592)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=aqua)(PORT=1592)))
Services Summary...
Service "aqua.oradba.com" has 1 instance(s).
Instance "aqua", status READY, has 1 handler(s) for this service...
Service "aquaXDB.oradba.com" has 1 instance(s).
Instance "aqua", status READY, has 1 handler(s) for this service...
The command completed successfully
OS: Oracle Linux Server release 6.8
DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit
This is what I've done.
Shutdown database
Shutdown listener
Modified listener.ora and set port to 1592
Modified tnsnames.ora and set port to 1592
Started listener
Started database
Checked tnsping for tnsname (aqua) and got "OK" response
Checked listener status and found below output, that listener doesn't support any service
TNSLSNR for Linux: Version 11.2.0.3.0 - Production
System parameter file is /oradba/app/oracle/product/11203/network/admin/listener.ora
Log messages written to /oradba/app/oracle/diag/tnslsnr/aqua/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1591)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=aqua)(PORT=1592)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1591)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date 17-SEP-2016 22:10:17
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oradba/app/oracle/product/11203/network/admin/listener.ora
Listener Log File /oradba/app/oracle/diag/tnslsnr/aqua/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1591)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=aqua)(PORT=1592)))
The listener supports no services
The command completed successfully
I waited long but listener didn't show up any database service. Finally, I checked local_listener parameter and found its still showing old value.
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aqua)(PORT=1521))))
So, updated local_listener;
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aqua)(PORT=1592))))' scope=both;
alter system register;
And now local_listener started reflecting the correct port and also listener is also showing database services as "READY".
But now, when I reboot the DB & listener, the local_listener resets to old value and I have to go through same process to set it correct.
I would like to know how to ensure database automatically registers to listener with correct port?
Please suggest.