201909 Oracle可以sqlplus,但无法plsql 之监听慢(日志满)

如201903文所述,我们的一台下发库周五还可以plsql连接的,周一来就只可以通过服务器命令行的sqlplus方式连接上,但是,通过plsql就没法连接上。
监听删除,重建
监听服务关闭、启动
数据库关闭、启动
服务器关闭、启动
都没能解决问题。
到底发生了什么呢?

我们自己折腾了一天都没能解决。
工程师断定是系统问题。
我们就以为无解了。

后来,幸亏又请了另一位工程师到现场,他一看,发现监听程序缓慢,就立马定位了问题:
listner.log日志文件达到4G了。
在这里插入图片描述

这一刻,深刻地领悟到,所有的问题,都需要查日志啊!!!

但后来想想,即便我当时查看了日志,也不能意识到是因为日志满了没法往里写的原因吧。
但需要说明的是,

查日志是非常有必要的也是非常高效的解决问题的方法!

说这是Oracle数据库在Windows操作系统中的bug。
BUG号为9879101
在这里插入图片描述

参考文档如下:
ID 1319797.1 :
WINDOWS: Listener Hangs & Lsnrctl Commands Are Slow or Hang

You can solve this problem by deleting the large listener in
$ORACLE_BASE\diag\tnslsnr<hostname>\listener\trace<listener_name>.log

  1. Stop the listener process using the command line or Control Panel Service.
  2. Delete the log file(s) that are at or approaching the 4G size limit at this location:
    $ORACLE_BASE\diag\tnslsnr<hostname>\listener\trace<listener_name>.log
  3. Issue any lsnrctl command and you will see a new listener.log in its place under:
    $ORACLE_BASE\diag\tnslsnr<hostname>\listener\trace
    Since ADR Diagnostics are enabled for this listener these steps cannot be done
    dynamically using the lsnrctl utility.

e.g.
LSNRCTL>set log_file mylog
Will yield: TNS-01251: Cannot set trace/log directory under ADR.
However,it is possible to disable the flat file listener logging using the following
commands:
LSNRCTL>set current_listener <listener_name>
LSNRCTL>set log_status OFF
LSNRCTL>save_config

当时工程师的做法是:

  1. 关闭监听 lsrnctl stop
  2. 删监听日志文件
  3. 删除监听、重建监听
  4. Cmd中,lsrntrl
    Lsnctl> set logfile new_logfile
    Lsnctl> set current_listener listener(新监听的名字)
    Lsnctl> set log_status OFF
    Lsnctl> save_config
  5. 然后在服务里,重启了下监听服务
  6. 连接就成功了。

在4中, 工程师用 set log_status OFF把监听日志关闭了
这样从根本上断绝了该问题再次发生的可能。
但从另一方面讲,有日志才有源可溯,所以,可以在
Lsnctl> set log_status ON
等下次再出现这个问题,再重复上述操作就是喽~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值