Server side checks (not platform specific):

1)  Check the result on the server using tnsping to the listener address:

tnsping "(address=(protocol=TCP)(host=insert host or ip address here)(port=insert listener port here))"

Should yield 'ok'.

2)  Launch lsnrctl and test both status and services:

LSNRCTL>set current_listener <listener name>

LSNRCTL>status

LSNRCTL>services

3)  If the instance is running in SHARED SERVER mode, the dispatchers might be getting
spawned on random ports.  If a shared client connection fails, test the same client using
a DEDICATED connection:

Example of SERVER=DEDICATED usage in a TNS connect descriptor:

ORACLE_DB=    
   (DESCRIPTION=
        (ADDRESS=(protocol=TCP)(host=insert host or ip address here)(port=insert listener port here))
     (CONNECT_DATA=(SERVICE_NAME=insert service name here)(SERVER=DEDICATED))
   )

After including the (SERVER=DEDICATED) setting in the connect string, try again to connect using:

sqlplus myuser@ORACLE_DB

If this succeeds using a DEDICATED server and fails with a SHARED server, it is likely the firewall is blocking 
the connection to the DISPATCHER port.   It is possible to run dispatchers on pre-defined ports for shared
server usage in environments with firewalls.

Here's an example of the DISPATCHERS spfile parameter configured to spawn on ports 5000,5001 & 5002):

dispatchers="(address=(partial=true)(protocol=tcp)(host=your host)(port=5000))(dispatchers=1)"

dispatchers="(address=(partial=true)(protocol=tcp)(host=your host)(port=5002))(dispatchers=1)"

dispatchers="(address=(partial=true)(protocol=tcp)(host=your host)(port=5003))(dispatchers=1)"

Note that the client would require that these ports are open as well as the listener port in 
order for a SHARED connection to be successful.

UNIX:

1)  Grep for tns listener process.

ps -ef | grep tns

Confirm the listener process is present.

Confirm the listener is running under:

A)  The correct name (LISTENER, LISTENER_SCANx, etc)

B)  The correct $ORACLE_HOME/bin (GRID, RDBMS_HOME)

2)  Check netstat output and confirm the port/address:

netstat -an | grep <listener port here>

See LISTEN process:

Example.

netstat -an | grep 1521 | grep LISTEN

LISTEN process on wildcard address using port 1521:

tcp        0      0 0.0.0.0:1521               0.0.0.0:*                   LISTEN

Windows:

1)  Check netstat at command line:

Example:

netstat -an |find /i "LISTEN"

Confirm LISTEN process in output for IP and listener port:

TCP    0.0.0.0:1521           0.0.0.0:0              LISTENING

netstat -an | find "1521"   (Replace 1521 with your actual listener port)

2)  Check Control Panel Services for TNS Listener service.  Confirm that it's
started and that the listener name matches listener used in LSNRCTL commands
above.

 

Client side checks:

1) tnsping "(address=(protocol=TCP)(host=server hostname here)(port=listener port here))"

2) Telnet host port  Where host is the server where the listener is running and port is the listener's port:

Example of a failure:

C:\Users\Oracle>telnet myhost 1521
Connecting To myhost...Could not open connection to the host, on port 1521: Connect failed

SCAN & RAC Specific:

1)Confirm that remote clients are able to connect to BOTH SCAN listener endpoints (all 3)
and all VIP listener endpoints by using tnsping.  Follow this example to test route to ALL
VIP and SCAN listener endpoints.

tnsping "(address=(protocol=TCP)(host=SCAN ip address 1 here)(port=SCAN port here))"

tnsping "(address=(protocol=TCP)(host=SCAN ip address 2 here)(port=SCAN port here))"

tnsping "(address=(protocol=TCP)(host=SCAN ip address 3 here)(port=SCAN port here))"

tnsping "(address=(protocol=TCP)(host=VIP ip address 1 here)(port=VIP listener port here))"

tnsping "(address=(protocol=TCP)(host=VIP ip address 2 here)(port=VIP listener port here))"

Each tnsping should yield an 'OK'

The following document contains a high level diagram of SCAN to VIP listener "redirection".  
It is clear that the client MUST have a route via TCP to ALL listener endpoints (except physical) in 
the cluster.

http://www.oracle.com/technetwork/database/clustering/overview/scan-129069.pdf

2) Check the LOCAL_LISTENER and REMOTE_LISTENER settings for the instances and confirm that
they are correctly set and all addresses to which they point are reachable from the remote client
hosts:

SQL>show parameter LOCAL_LISTENER;

SQL>show parameter REMOTE_LISTENER;

Finally, if the Client gets a "no listener" yet the Listener is running on the above address (and a tnsping against the same
connection when local on the DB server is successful) then check for any Network "blocks".
For example, a Firewall may be blocking the TCP communication which the System Admin would need to correct.

__________________________________________________

If Oracle support is needed to continue to troubleshoot this problem:

Generate an Oracle Net level 16 (support) client trace using the following instructions:

Add these parameters to the sqlnet.ora file that would be referenced by the client in this case:

TRACE_LEVEL_CLIENT=16
TRACE_DIRECTORY_CLIENT=<dir location>
TRACE_TIMESTAMP_CLIENT=TRUE
DIAG_ADR_ENABLED=off

Reproduce the problem and provide the client traces to support for further
investigation.

Turn client tracing OFF when finished.

Troubleshooting Guide for ORA-12541 TNS: No Listener的更多相关文章

  1. PLSQL Developer概念学习系列之登录连接Oracle时出现(没有登录) -PL / SQL Developer:ORA - 12541: TNS :无建听程序的错误解决办法(图文详解)

    不多说,直接上干货! 前期博客 PLSQL Developer概念学习系列之如何正确登录连接上Oracle(图文详解)   如用scott.scott_password进行登录,orcl是全局数据库 ...

  2. 【TNS】listener.ora模板;tnsnames.ora模板

    好多人使用监听的时候误操作,将监听弄的不好使了,这次这个模板,不光是针对大家出现的这种问题,也是给我自己留一个记录,方便他人,方便自己. listener.ora模板样例 -------------- ...

  3. TNS-12541: TNS:no listener TNS-12560 TNS-00511: No listener

        为了测试需要,系统管理员帮忙将一台ORACLE数据库服务器克隆到虚拟机上,我上去删除了root.oracle.tomcat账号下的crontab定时作业,然后启动了ORACLE数据库实例,删除 ...

  4. oracle ORA-12514: TNS: no listener 解决方案

    服务端:oracle 11g 客户端: pl/sql 问题描述: 用客户端 pl/sql 连接登录的时候,提示 "ORA-12514: TNS: no listener". 在服务 ...

  5. TNS-12541: TNS:no listener TNS-12560: TNS:protocol adapter error TNS-00511: No listener Linux Error:

    今天是2014-06-17.遇到一个很奇怪的问题,可能之前測试改动监听的原因,导致监听启动后自己主动关闭,特此记录一下整个处理过程, 监听配置文件信息例如以下: [oracle@dg1 admin]$ ...

  6. TNS:no listener error in Oracle XE after changing computer name

    This morning at work when trying to log on to my computer I noticed not my username on login screen ...

  7. Oracle ORA-12541:TNS:no listener错误解决方法 (转)

    前天装好的Oracle,昨天突然不好用了,从Oracle的错误提示来看,是说TNS:no listener ,估计是某种服务没有启动,打开windows管理工具->服务,一看,有一个Oracle ...

  8. TNS-12541: TNS:no listener , TNS-12542: TNS:address already in use

    查看数据库监听状态不对$ lsnrctl status LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production on ...

  9. ORA-12514: TNS: no listener 解决方案

    服务端:oracle 11g 客户端: pl/sql 问题描述: 用客户端 pl/sql 连接登录的时候,提示 "ORA-12514: TNS: no listener". 在服务 ...

  10. cx_Oracle.DatabaseError: ORA-12541: TNS:no listener

    问题:利用Python连接Oracle时报错,完整过程如下 import cx_Oracle conn = cx_Oracle.connect('testma/dingjia@192.168.88.1 ...

随机推荐

  1. 3.2 符号表之二叉查找树BST

    一.插入和查找 1.二叉查找树(Binary Search Tree)是一棵二叉树,并且每个结点都含有一个Comparable的键,保证每个结点的键都大于其左子树中任意结点的键而小于其右子树的任意结点 ...

  2. 2017年12月14日 一个Java开发的Python之路----------------(二)

    说一个收获最大的,就是这个关闭流对象 之前写java读取文件的时候,最后往往要关闭流对象,以前我一直不明白,为什么,我不使用.close()方法,文件也可以读取成功,总感觉没有什么意义 原来是因为,这 ...

  3. Uva -1515 Pool construction(最小割)

    输入一个字符矩阵,'.'代表洞,'#'代表草地.可以把草改成洞花费为d,或者把洞改成草花费为f,最后还要在草和洞之间修围栏花费为b. 首先把最外一圈的洞变成草,并累加花费. 增加一个源点和一个汇点,源 ...

  4. Ubuntu 16.04开机自动挂载硬盘分区(转)

    说明:如果挂载以前旧硬盘分区时不需要第2.3步! 1.查看Linux硬盘信息: sudo fdisk -l 2.格式化新硬盘(很危险,注意操作时确定硬盘分区的位置): sudo mkfs.ext4 / ...

  5. 条款二:最好使用c++转型操作符

    一.static_cast基本上拥有与c旧式转型相同的威力与意义,以及相同的限制,不能够移除表达式的常量性,const_cast负责这个功能 二.const_cast用来改变表达式中的常量性,如果将c ...

  6. Python学习系列之面向对象

    概述 一.Python编程方式 面向过程编程:根据业务逻辑从上到下磊代码 面向函数编程:将某功能代码封装到函数中,将来直接调用即可,无需重新写 面向对象编程:对函数进行分类.封装 二.面向过程编程 w ...

  7. http://www.cnblogs.com/sprinkle/

    http://www.cnblogs.com/sprinkle/ http://www.cnblogs.com/sprinkle/

  8. 6个变态的C语言Hello World程序 之 雷人的程序语言

    以下的六个程序片段主要完毕这些事情: 输出Hello, World 混乱C语言的源码 以下的全部程序都能够在GCC下编译通过,仅仅有最后一个须要动用C++的编译器g++才干编程通过. hello1.c ...

  9. [计算机故障]华为手机无法连接XP系统(inf中找不到所需的段落)

    同事新买的华为手机麦芒C199,拍了些照片.结果连接电脑,没有反应. 后经打电话到华为,可以到华为官网下驱动. 地址如下: http://consumer.huawei.com/cn/support/ ...

  10. ADB无法启动

    一般就是5037端口被占用,各种手机助手鼓捣的 1.CMD下查看端口是否被占用 netstat -ano|findstr "5037" 截图不上了,我的是820进程,360手机助手 ...