I had the same problem today:
- stop you listener
- bkp you tns + listener
- using netmgr create a new entry in the tns + listener (use a port
number bigger them 1521)
- start your listener now
- run the status on the listener
[orahsync01@dc8002 ~]$ lsnrctl status HSYNC01
LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 11-MAR-2014 13:09:19
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dc8002)(PORT=9823)))
STATUS of the LISTENER
Alias HSYNC01
Version TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date 11-MAR-2014 09:51:55
Uptime 0 days 3 hr. 17 min. 23 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u03/HSYNC01/app/11.2/db_1/network/admin/listener.ora
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dc8002)(PORT=9823)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=extprochsync01)))
Services Summary...
Service HSYNC01.fgv.br has 2 instance(s).
Instance HSYNC01, status UNKNOWN, has 1 handler(s) for this service...
Instance HSYNC01, status READY, has 1 handler(s) for this service...
The command completed successfully
--status shows unknown
SQL> alter system register;
System altered.
run the commnad :
SQL> show parameter listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION= (ADDRESS=(PROTOC
OL=tcp)(HOST=dc8002)(PO
RT=9823))(CONNECT_DATA= (SERVI
CE_NAME=HSYNC01) (INSTANCE_NAM
E=HSYNC01)))
remote_listener string
- check for the tnsnames entry
cat tnsnames.ora
HSYNC01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = dc8002)(PORT = 9823)
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = HSYNC01)
)
)
--make sure the entries in the tnsnames under the SID in my case HSYNC01 are the same as in the local_listenr parameter.
- If they are not fix this using the commnad bellow :
alter system set local_listener='(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=dc8002)(PORT=9823))(CONNECT_DATA= (SERVICE_NAME=HSYNC01) (INSTANCE_NAME=HSYNC01))' scope=both;
no line breaks here !!
You entry in the listener file should be like
SID_LIST_HSYNC01 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = HSYNC01)
(ORACLE_HOME = /u03/HSYNC01/app/11.2/db_1)
(SID_NAME = HSYNC01)
)
)
HSYNC01 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dc8002)(PORT = 9823))
)
)
LOGGING_HSYNC01 = OFF
DIAG_ADR_ENABLED_HSYNC01 = OFF