Windows平台下Oracle 11g R2监听文件日志过大,造成客户端无法连接的问题处理
近期部署在生产环境的应用突然无法访问,查看应用日志发现无法获取数据库连接。
SystemErr R Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
SystemErr R at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:359)
SystemErr R at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:422)
SystemErr R at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:672)
SystemErr R at oracle.net.ns.NSProtocol.connect(NSProtocol.java:237)
SystemErr R at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1042)
SystemErr R at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:301)
SystemErr R ... 154 more
SystemErr R Caused by: java.net.ConnectException: Connection refused: connect
SystemErr R at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
SystemErr R at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:96)
SystemErr R at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:369)
SystemErr R at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
SystemErr R at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
SystemErr R at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:191)
SystemErr R at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
SystemErr R at java.net.Socket.connect(Socket.java:642)
SystemErr R at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:141)
SystemErr R at oracle.net.nt.ConnOption.connect(ConnOption.java:123)
SystemErr R at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:337)
SystemErr R ... 159 more
操作记录:
1、重启数据库的监听、实例服务后仍然无法通过客户端连接;
2、重启了数据库服务器后再次启动监听和实例服务后依然无法连接;
3、此时尝试在服务器中使用客户端连接工具连接数据库无法获取连接,排除了网络问题的可能性;
4、停止连接至数据库服务器的App后,监听和实例服务能够正常启动,也能通过客户端连接至数据库服务器;
5、此时通过exp命令对数据库进行了数据备份;
6、启动连接此数据库的App后发现仍然无法正常获取连接,再次通过客户端工具连接Oracle实例发现已经无法获取连接;
7、再次停止应用,尝试了几次重启Oracle服务后终于启动起来;
8、将备份数据导入备份数据库服务器后,将应用的数据库连接切换至备份数据库,恢复正常服务;
排查问题:
1、排除网络故障的可能性;
2、检查监听文件配置正确;
| 路径: D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora |
3、检查tnsnames配置正确;
| 路径: D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora |
4、查看错误日志;
| 路径: D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log |
通过查看日志发现大量如下错误:
TNS-12537: TNS: 连接关闭
ns secondary err code: 12560
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
通过百度错误关键字“TNS-12537: TNS: 连接关闭”,找到一篇文章:
http://blog.itpub.net/23169974/viewspace-1067401/
该文章描述了listener.log日志文件过大导致服务异常的问题,感觉现象与我的很像。
5、查看listener.log日志
通过搜索日志文件终于找到该文件。
| 路径: D:\app\Administrator\diag\tnslsnr\WIN-RU03CB21QGA\listener\trace\listener.log |
发现该文件确实已经增长至4GB大小,与博客中描述的问题一致,终于找到问题所在。

问题处理:
解决办法很简单,就是停止所有Oracle服务,清除日志文件,重启服务后即可。
Windows平台下Oracle 11g R2监听文件日志过大,造成客户端无法连接的问题处理的更多相关文章
- Windows平台下Oracle监听服务启动过程中日志输出
Windows平台下Oracle监听服务启动过程中日志输出记录. 日志目录:D:\app\Administrator\diag\tnslsnr\WIN-RU03CB21QGA\listener\tra ...
- 全网最详细的Windows系统里Oracle 11g R2 Client客户端(64bit)安装后的初步使用(图文详解)
不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Client(64bit)的下载与安装(图文详解) 命令行方式测试安装是否成功 1) 打开服务(cmd— ...
- Windows平台下Oracle实例启动过程中日志输出
Windows平台下Oracle实例启动过程中日志输出记录. 路径:D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log 输出内 ...
- 全网最详细的Windows系统里Oracle 11g R2 Client(64bit)的下载与安装(图文详解)
不多说,直接上干货! 环境: windows10系统(64位) 最好先安装jre或jdk(此软件用来打开oracle自带的可视化操作界面,不装也没关系:可以安装plsql,或者直接用命令行操作) Or ...
- 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)安装后的初步使用(图文详解)
不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)的下载与安装(图文详解) 命令行方式测试安装是否成功 1) 打开服务(cm ...
- 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)的完全卸载(图文详解)
不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)的下载与安装(图文详解) 若你不想用了,则可安全卸载. 完全卸载Oracle ...
- 全网最详细的Windows系统里Oracle 11g R2 Database服务器端(64bit)的下载与安装(图文详解)
不多说,直接上干货! 环境: windows10系统(64位) 最好先安装jre或jdk(此软件用来打开oracle自带的可视化操作界面,不装也没关系:可以安装plsql,或者直接用命令行操作) Or ...
- [转]通过Net Manager 配置Oracle 11g本地监听服务(listener service)
本文转自:http://blog.csdn.net/mozart_cai/article/details/8596504 [Target] 通过ip address 监听orcl服务,而不是通过loc ...
- Windows系统里Oracle 11g R2 Client(64bit)的下载与安装
环境: windows10系统(64位) 最好先安装jre或jdk(此软件用来打开oracle自带的可视化操作界面,不装也没关系:可以安装plsql,或者直接用命令行操作) Oracle 11g 是仅 ...
随机推荐
- msp430入门编程06
msp430中C语言的程序结构06 msp430中C语言的函数及实现07 msp430中C语言操作端口I/O10 msp430中C语言的模块化头文件及实现11 msp430中C语言的模块化头文件及库文 ...
- IOS7状态栏StatusBar官方标准适配方法
IOS7状态栏StatusBar官方标准适配方法 hello,大家好,ios7正式版已经发布,相信大家都在以各种方式来适配ios7. 如果你已经下载了xcode5,正准备使用,你会发现各种布局的改变. ...
- list去重精简代码版
List<String> list = new ArrayList<>(); list.add("111"); list.add("111&quo ...
- ADSL和ITV
1.ADSL和ITV两者占用的是不同的虚通道,也就是使用不同的VLAN: 2.的确上通过不同的VPI/VCI来区分ADSL和ITV在不同通道,但不会互不影响的,因为使用的还是同一条线路的宽带速度: 3 ...
- 第三课 MongoDB 数据更新
1.课程大纲 本课程主要解说 MongoDB 数据更新的相关内容.包含文档插入 insert 函数.文档删除 remove函数以及文档更新update函数的基本使用.除此之外.还会介绍 MongoDB ...
- Django学习系列之中间件
中间件的定义 中间件是一个.一个的管道,如果相对任何所有的通过Django的请求进行管理都需要自定义中间件 中间件可以对进来的请求和出去的请求进行控制 中间件是一类 django请求生命周期 自定义中 ...
- HTTP请求方式之GET和POST比较
什么是HTTP协议 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议 HTTP在客户端和服务器之间以request ...
- pageContext 获取Session 为null原因
问题:在J2EE应用中.发如今自己定义标签中取不到session: HttpSession session = pageContext.getSession(); 你会发现session的值可能是空的 ...
- log4j 具体解释
通常,我们都提供一个名为 log4j.properties的文件.在第一次调用到Log4J时,Log4J会在类路径(../web-inf/class/当然也能够放到其他不论什么文件夹.仅仅要该文件夹被 ...
- 状压DP问题
状态压缩·一 题目传送:#1044 : 状态压缩·一 AC代码: #include <map> #include <set> #include <list> #in ...