【转】sqlplus/RMAN/lsnrctl 等工具连接缓慢

发布时间 2023-06-04 17:14:07作者: 小yq

AIX上sqlplus /as sysdba rman target / 或者lsnrctl start时或者通过sqlplus system/oracle@orcl这样通过监听连接等方式来登陆时非常慢(LINUX/HP-UX也存在此问题),甚至要5分钟、10分钟左右才能进入。
这种问题在排除系统资源如CPU/IO/内存、网络等资源紧张外;经常是因为hostname与/etc/resolve.conf /etc/hosts中不符导致登陆时查找主机名引起缓慢(LINUX中 /etc/nsswitch.conf定义优化使用DNS/HOSTS文件);也可能是DNS配置错误导致在DNS解析过程中花费太多时间。

常用解决方法就是注释掉/etc/resolve.conf 中DNS服务器的地址,或者使用正确的DNS地址/配置,或者不需要使用DNS的话直接删除或改名/etc/resolve.conf;同时在/etc/hosts中配置正确信息即可。

对于此类问题,如果有兴趣,可以通过操作系统层面的跟踪来排查此问题,在TRACE文件中搜索关键字/etc/resolv.conf或者/etc/hosts可以看到在其附近的一些函数调用过程。
常用操作系统平台OS层面跟踪工具有如LINUX的strace、AIX的truss等,具体使用方法是:

LINUX:
$ strace -fo
strace -rf-o /home/oracle//lsnr.log -p 5487

AIX 5L及以上:
$ truss -aefo
truss -aefo /home/oracle/sqlplus_trace1.log sqlplus / as sysdba
truss -aefo /home/oracle/rman_trace1.log rman target /

HP-UX:
$ tusc -afpo

Solaris:
$ truss -aefo
$ truss -rall -wall -p
参考MOS文档:
How to Trace Unix System Calls (文档 ID 110888.1)
Listener Startup or Connections Hang in 11g (文档 ID 803838.1)
————————————————
版权声明:本文为CSDN博主「Yushan Bai」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/haibusuanyun/article/details/49520215