记录一次 “ORA-12516:TNS:监听程序找不到符合协议堆栈要求的可用处理程序” 的处理过程
一、今天同事反馈业务化运行的数据中心库发生了oracle无法连接的情况,导致所有业务系统无法正常运作的问题。报:“ORA-12516:TNS:监听程序找不到符合协议堆栈要求的可用处理程序”
二、收到这个情况,没有先去百度,之前经常碰到这个问题。猜想问题应该出在3个地方中的其中一种 A.oracle实例 B.监听服务 C.listener.log :
1.首先比较着急的是想看看数据库本身是否有问题,远程登录oracle服务器,通过sqlplus登录数据库,查询是正常的,说明数据库本身是好的,心里就比较踏实。
2.然后想到的oracle监听服务的问题,先去重启了下oracle监控服务、重启了oracle实例,甚至重启了服务器,依然问题存在。
3.判断可能是oracle监听配置失效,之前有碰到过监听配置失效,重新配置监听就解决问题的情况。 所以通过Net Configuration Assistant 删除了原来的监听服务配置,重新配置了一遍,问题依然存在。
4.listener.log是否存在超过4G,导致无法写入的问题,也排查了,不是这个问题。
三、没有思路的情况下,只能去百度,网上说法是连接池超出最大额度,导致连接无法申请。顺着这个思路,开始排查:
1.通过sqlplus登录,查询oracle最大连接额度的配置: 300个连接,正常,oracle默认是150。之前手动调整过一次。

2.查询目前已经使用了多少个连接: 吓一跳,294个。这下心里有底了。原因找到了。

3.接下来的就是揪出元凶,到底哪个应用程序占用过多连接:

4.发现了问题,接下来就好办了,***程序.exe 占用128个连接,这个服务框架使用的ORM有点问题,之前也出现过几次,占用连接过多的情况。一直想重构,都没找到好的时机。现在没办法,先重启这几个服务框架,一下子连接数量就降下来了。
5.外部的服务器,开启PL/SQL连接正常,搞定。顺便把oracle连接池最大限额搞大点,加一倍,搞到600。
记录一次 “ORA-12516:TNS:监听程序找不到符合协议堆栈要求的可用处理程序” 的处理过程的更多相关文章
- Oracle几个基础配置问题:ORA-12154: TNS: 无法解析指定的连接标识符、ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务、ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序
问题1:ORA-12154: TNS: 无法解析指定的连接标识符 在一台服务器上部署了Oracle客户端,使用IP/SID的方式访问,老是报ORA-12154错误,而使用tnsnames访问却没有问题 ...
- 转载:ORA-12516 “TNS监听程序找不到符合协议堆栈要求的可用处理程序” 解决方案
ORA-12516 “TNS监听程序找不到符合协议堆栈要求的可用处理程序” 解决方案 简单描述一下场景,总共两台应用服务器,每台安装3个tomcat进行集群,并通过nginx做了负载均衡,今天在生 ...
- ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序
服务器上某个数据库出现' ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程'错误,要解决该问题首先查看一下数据库现有的进程数,是否已经达到参数processes的大小. 使用 ...
- 【ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序】
服务器上某个数据库出现' ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程'错误,要解决该问题首先查看一下数据库现有的进程数,是否已经达到参数processes的大小. 取得 ...
- Oracle"TNS监听程序找不到符合协议堆栈要求的可用处理程序"解决方案
问题描述:在使用ETL工具通过odbc方式连接Oracle进行数据抽取的过程中,Oracle 监听日志报错如下: 根本原因就是Oracle的process和session已经达到了甚至超过了最大值,解 ...
- ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程”的异常
简单说明:我们开发时多人开发,会频繁访问服务器数据库,结果当连接数大的时候,就会报ora-12516的错误,ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程"的异常 ...
- PLSQL连接数据库报监听程序找不到符合协议堆
服务器上某个数据库出现' ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程'错误,要解决该问题首先查看一下数据库现有的进程数,是否已经达到参数processes的大小 根 ...
- ORA-12514(TNS:监听程序当前无法识别...)
记录: ORA-12514(TNS:监听程序当前无法识别...)的解决方案 在安装ORACLE 11G 过程中由于配置的原因,安装过程中报了如下错误: 按照安装提示执行后面的操作后,打开PL/SQ ...
- 解决windows7无法连接CentOS7系统中oracle问题:ORA-12514 TNS 监听程序当前无法识别
linux开启后终端按下面输入(容易忘记,记录下): [oracle@localhost ~]$ lsnrctl stop #先关闭监听服务 [oracle@localh ...
随机推荐
- flask-不错的教程
https://spacewander.github.io/explore-flask-zh/7-blueprints.html
- Oracle KEEP 分析函数
Oracle中为了解决子集合中查询最值的问题,提出了KEEP()语法. 典型案列如:在每个部门中找出年龄最小的人中的最高工资. 基本语法结构: MAX(COL2) KEEP (DENSE_RANK F ...
- canvas 填充图片
画一个更骚气的圆 https://juejin.im/post/5781d0495bbb500061fd683d
- 百战程序员——JDBC
JDBC全称是什么? JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Jav ...
- PAT乙级考前总结(四)
散列相关问题 1029 旧键盘 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及实际被输入的文字,请你列出肯定坏掉的那些键. 输入格式: ...
- 认识Ajax
1.简介 AJAX 相当于异步 JavaScript 和 XML,是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网 ...
- ideal的maven工程启动时老是报错,提示web.xml里面的监听器找不到,但是实际又是存在的
-X clean compile package -Dmaven.repo.local=D:\repository-pss -Dmaven.test.skip=true maven仓库地址
- python八荣八耻
Python八荣八耻 以动手实践为荣 , 以只看不练为耻; 以打印日志为荣 , 以单步跟踪为耻; 以空格缩进为荣 , 以制表缩进为耻; 以单元测试为荣 , 以人工测试为耻; 以模块复用为荣 , 以复制 ...
- java虚拟机 之 垃圾回收机制
一.如何判断对象已死 垃圾回收器并不是java独有的,垃圾回收器的作用就是回收对象释放内存空间,那么如何判断哪些对象应该被回收呢? 在Java语言中是采用GC Roots来解决这个问题.如果一个对象和 ...
- 请用java解析下xml
Java XML简介 XML(EXtensible Markup Language) 可扩展标记语言 可以说是一个文本文件 作用数交互 配置应用程序 Xml解析技术 三种方式 Dom 文档数据 ...