Oracle开启监听缓慢问题

现象:

Oracle数据库中,使用lsnrctl开启、关闭监听或查看监听状态时,非常慢,可以通过断网的方式使动作马上完成。

在客户端使用plsql等方式连接数据库时,也是非常慢,同样也可以通过切换网络状态的方法使其马上完成。

分两个层面:

1. 监听本身有问题

     关闭监听日志,清理监听日志

     A. 关闭监听日志

         shell命令行登录至oracle用户,输入lsnrctl进入监听命令行。

         show log_status                 查看监听日志状态,“set to on”表示开启,“set to off”表示关闭

         set log_status off               关闭监听日志

         save_config                       保存配置

     B. 清理监听日志

          监听日志(名称中带有log字样)可能位于以下位置,建议备份后清理或重命名。

          /u01/app/oracle/diag/tnslsnr/distance/listener/alert

          /u01/app/oracle/diag/tnslsnr/distance/listener/trace

          /u01/app/oracle/diag/rdbms/orcl/orcl/alert

          (具体位置可能由于安装时的差异而不同,请根据实际情况查找自己机器的相应目录)

     参考:https://zhidao.baidu.com/question/616289319368834692.html (停止监听)

                https://blog.csdn.net/onebigday/article/details/10195493 (监听日志位置)

2. 服务器网络配置问题

    可能是DNS解析文件有问题,修改数据库服务器的/etc/resolv.conf,将其中的“nameserver xxx.xxx.xxx.xxx”这一行注释掉

    问题排查与结论参考自 http://www.itpub.net/thread-1784287-1-1.html 

解决上述问题过程中,有一个小插曲,因为自己的centOS搭建太久了忘记了root密码,参考https://www.linuxidc.com/Linux/2018-01/150211.htm修改了centOS密码。

CentOS6修改root密码,亲测有效,当然,改之前记得给虚拟机拍一下快照。

猜你喜欢

转载自www.cnblogs.com/distanceN/p/9193306.html