How to Resolve ORA-12541: TNS:no listener
ORA-12541 is the same as TNS-12541, they all indicate that the listener is not running according to your specified destination.
Let’s see how we reproduce ORA-12541 and TNS-12541.
SQL*Plus throws ORA-12541
TNSPING throws TNS-12541
TNS Ping Utility for 64-bit Windows: Version 12.1.0.1.0 — Production on 22-JUL-2014 19:20:06
Copyright (c) 1997, 2013, Oracle. All rights reserved.
Used parameter files:
C:\oracle\app\client\ed\product\12.1.0\client_1\network\admin\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = primary01)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = compdb)))
TNS-12541: TNS:no listener
Cause
The connection cannot find the listener, it could be:
- The listener is not started.
This is the most common problem of ORA-12541 we have met. Just start it up and make sure it’s running.
Backup port like 1522 may be used by the listener for connection, you should ask for DBA to handle it.
Please check every parameter in your connect descriptor and make sure they are correct.
It’s rare, but it did happen in a very complex network environment. Part of connections are routed by some network device to an unknown server where no listener on port 1521.
Solution
Check the status and port of LISTENER on server side and start it if necessary.
[oracle@primary01 ~]$ lsnrctl status
LSNRCTL for Linux: Version 12.1.0.1.0 — Production on 22-JUL-2014 19:22:34
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 2: No such file or directory
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=primary01)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
As you can see, the database port is 1521 without questions. But the listener is not started. So let’s start it up.
[oracle@primary01 ~]$ lsnrctl start
LSNRCTL for Linux: Version 12.1.0.1.0 — Production on 22-JUL-2014 19:23:59
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Starting /u01/app/oracle/product/12.1.0/dbhome_1/bin/tnslsnr: please wait.
TNSLSNR for Linux: Version 12.1.0.1.0 — Production
System parameter file is /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/primary01/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=primary01)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
————————
Alias LISTENER
Version TNSLSNR for Linux: Version 12.1.0.1.0 — Production
Start Date 22-JUL-2014 19:23:59
Uptime 0 days 0 hr. 0 min. 2 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/primary01/listener/alert/log.xml
Listening Endpoints Summary.
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=primary01)(PORT=1521)))
The listener supports no services
The command completed successfully
10 thoughts on “How to Resolve ORA-12541: TNS:no listener”
Hello Ed, Used three of your posts related to listener and TNS setup, they did the trick, all of my issues are resolved. I’ve worked with Oracle since the 1980s and this has always been a hit and miss subject for me, but you have provided an excellent web tech information resource. Well done!!
Hi Ed, I have the same issue,I did start the listener but still it doesn’t work. LSNRCTL for Linux: Version 12.2.0.1.0 – Production on 14-MAY-2020 10:21:14 Copyright (c) 1991, 2016, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.102)(PORT=1539)))
STATUS of the LISTENER
————————
Alias LISTENER
Version TNSLSNR for Linux: Version 12.2.0.1.0 – Production
Start Date 14-MAY-2020 10:12:47
Uptime 0 days 0 hr. 8 min. 27 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /ora01/app/oracle/product/12.2.0/db_1/network/admin/listener.ora
Listener Log File /ora01/app/oracle/diag/tnslsnr/server/listener/alert/log.xml
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.102)(PORT=1539)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=server)(PORT=5500))(Security=(my_wallet_directory=/ora01/app/oracle/admin/orcl/xdb_wallet))(Presentation=HTTP)(Session=RAW))
Services Summary…
Service “ORA12CXDB” has 1 instance(s).
Instance “ORA12C”, status READY, has 1 handler(s) for this service…
Service “a50ca342f86bccc0e0536801a8c085de” has 1 instance(s).
Instance “ORA12C”, status READY, has 1 handler(s) for this service…
Service “orcl” has 1 instance(s).
Instance “ORA12C”, status READY, has 1 handler(s) for this service…
Service “orclpdb” has 1 instance(s).
Instance “ORA12C”, status READY, has 1 handler(s) for this service…
The command completed successfully and if I run the below command I get the same error:- ./sqlplus anju/anju@192.168.1.102/ORA12C SQL*Plus: Release 12.2.0.1.0 Production on Thu May 14 10:34:59 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. ERROR:
ORA-12541: TNS:no listener this is my listener.ora file:- LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1539))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
) Could you please help.
Since your listener port is not the default one (1521), you should provide the port number in the connection string. sqlplus anju/anju@192.168.1.102 :1539 /ORA12C
Thank you Ed ,but it gave me this error:- [oracle@server bin]$ ./sqlplus anju/anju@192.168.1.102:1539/ORA12C SQL*Plus: Release 12.2.0.1.0 Production on Thu May 14 11:47:18 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
Please check the service name (NOT instance name) that you used in the connection string. Normally, the service and the instance name are the same, but in your case, it’s not. You may check the following post for more information: How to Resolve ORA-12514: TNS:listener does not currently know of service requested in connect descriptor.
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 61: Unknown error
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 2: No such file or directory
LSNRCTL> start LISTENER
Starting tnslsnr: please wait… Unable to OpenSCManager: err=5
TNS-12560: TNS:protocol adapter error
TNS-00530: Protocol adapter error
TNS-12541 :TNS :no listener
I am newbie in oracle dba so need help that could meet my mind. I have installed my oracle 11gr2 database on virtual machine with OS OEL 5.7 and want to connect my this remote database with toad32bit. So i do follow some useful links and downloaded and installed win32_11gR2_client on OS windows 7 64bit. Besides try my best to follow the instructions my client is not able to connect with my remote oracle database.On client side working with cmd for tnsping sidname always get no tns listener with error as i mentioned above brief descriptions LINUX MACHINE: listener.ora
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = testhost.testdomain.com)(PORT = 1521)) ) ) ADR_BASE_LISTENER = /u01/app/oracle
ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = testhost.testdomain.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.testdomain.com) ) )
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) ADR_BASE = /u01/app/oracle
Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 03-FEB-2014 15:08:43 Uptime 0 days 1 hr. 32 min. 59 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/testhost/listener/alert/log.xml Listening Endpoints Summary. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=testhost.testdomain.com)(PORT=1521))) Services Summary. Service "orcl.testdomain.com" has 1 instance(s). Instance "orcl", status READY, has 1 handler(s) for this service. Service "orclXDB.testdomain.com" has 1 instance(s). Instance "orcl", status READY, has 1 handler(s) for this service. The command completed successfully
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) Services Summary. Service "orcl.testdomain.com" has 1 instance(s). Instance "orcl", status READY, has 1 handler(s) for this service. Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER Service "orclXDB.testdomain.com" has 1 instance(s). Instance "orcl", status READY, has 1 handler(s) for this service. Handler(s): "D000" established:0 refused:0 current:0 max:1022 state:ready DISPATCHER (ADDRESS=(PROTOCOL=tcp)(HOST=testhost.testdomain.com)(PORT=13094)) The command completed successfully
WINDOWS 7 CLIENT DESCRIPTION C:\oracle\product\11.2.0\client_1\network\admin ENV TNS_ADMIN=C:\oracle\product\11.2.0\client_1\network\admin NOTE: THERE IS NO ANY ORACLE RELATED SERVICES PRESENT (MEANS NOT PRESENT) ON WINDOWS SERVICES my client tnsnames.ora
ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = testhost.testdomain.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.testdomain.com) ) )
Used parameter files: C:\oracle\product\11.2.0\client_1\network\admin\sqlnet.ora Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDTESS_LIST = (ADDRESS - (PROTOCOL = TCP (HOST = testhost.testdomain.com)(PORT = 1521))) (CONNECT_DATA= (SERVER = DEDICATIED) (SERVICE_NAME = orcl) (INSCTANCE_NAME = orcl) (GLOBAL_NAME = orcl.testdomain.com)(RDB_DATABSE = orcl)) (TYPE_OF_SERVICE = dedicaated)) TNS-12541 : TNS:no listener
# Do not remove the following line, or various programs # that require network functionality will fail. #127.0.0.1 testhost.testdomain.com testhost localhost.localdomain localhost 127.0.0.1 localhost.localdomain localhost #10.10.1.114 testhost.testdomain.com testhost 192.168.0.103 testhost.testdomain.com testhost ::1 localhost6.localdomain6 localhost6
# netstat -an | grep 1521 | grep tcp | grep LISTEN tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN [root@testhost ~]# grep testhost /etc/hosts #127.0.0.1 testhost.testdomain.com testhost localhost.localdomain localhost #10.10.1.114 testhost.testdomain.com testhost 192.168.0.103 testhost.testdomain.com testhost [root@testhost ~]# dig +short testhost.testdomain.com 174.137.125.92