手记

【ORACLE】客户端或plsql无法连接Oracle问题之二

客户端无法连接Oracle、业务系统无法连接Oracle、plsql无法连接Oracle问题

ORACLE的监听日志太大引起客户端无法连接问题

线上环境系统正常运行,突然业务系统无法连接,PLSQL数据库连接工具也无法连接Oracle数据库

  • 注:本问题解决的不是数据库初次安装引起的问题,而是业务系统已经正常运行一段时间,突然发生无法连接情况

Oracle常见问题系列文章

本文环境

服务器操作系统: windows server 2016
ORACLE 版本: ORACLE 11.2.0.1


1.问题描述

今天系统正常运行,突然系统缓慢,于是重启业务系统,发现业务系统无法连接数据库。

排查步骤:

  • 查看Oracle数据库的最大连接数
  • 查看Oralce当前使用连接数
  • 业务系统是否可使用数据库

排查后发现,业务系统仍在运行可正常使用数据库,数据库当前连接数仍有剩余,并不是连接数不够用,Oracle数据库也正常运行,但是所有新的连接无法连接数据库,tomcat重启后也无法连接到Oracle数据库。


2.问题原因

ORACLE的监听日志太大,引起的客户端无法连接

Oracle监听日志有两部分,分别位于\diag\tnslsnr\DBServer\listener\alert(警告日志)和\diag\tnslsnr\DBServer\listener\trace(跟踪日志),警告日志是多个.xml文件,且单文件最大默认是10M,而跟踪日志是一个listener.log文件,这个文件的上限是4Gb,超过4Gb将严重影响数据库连接速度,从而导致本文现象出现。而一般让这个文件达到4Gb,业务量一般的情况下可能需要两三年,所以很容易被忽略监控。


3.解决方法:

将listener.log文件删除或清空即可。(不停监听服务这个文件无法直接删除或修改,提示被占用)

注:需要重启服务,业务需要暂停


4.案例总结:

当 listener.log大小达到4G,系统将变得缓慢,且客户端无法连接Oracle,这是Oracle版本的BUG

Oracle Net Services - Version 11.1.0.7 to 11.2.0.4 [Release 11.1 to 11.2] 版本BUG
1)问题的原因:当 listener.log大小达到4G
The listener.log has reached the file size limit (on Windows) of 4G. This issue is described in published bug:
Bug:9879101 THE CONNECT THROUGH LISTENER WAS SLOW WHEN LISTENER LOG GREW to 4GB
2) 出现该BUG问题的平台

Oracle Net Services - Version 11.1.0.7 to 11.2.0.4 [Release 11.1 to
11.2]

Microsoft Windows (32-bit) Microsoft Windows x64 (64-bit) This issue
is limited to the Windows OS.
Checked for relevance on 14-OCT-2013

本文由博客一文多发平台 OpenWrite 发布!

0人推荐
随时随地看视频
慕课网APP