问题描述
有套11.2.0.4 rac+aix 6.1 环境(两节点),在oracle用户下执行sqlplus后需要等待很长时间才会有结果,而在grid用户下返回就很快。附件是truss跟踪日志。日志看有很多sleep,初步怀疑是加固导致的。
专家解答
大概查到问题原因了,应该是配了DNS解析,刚好这个解析有问题,需要等待15秒超时,检查下相关配置吧。
7733360: 60031055: 0.2531: kopen("/etc/resolv.conf", O_RDONLY) = 8
7733360: 60031055: 0.2533: kioctl(8, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
7733360: 60031055: 0.2535: kioctl(8, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
7733360: 60031055: 0.2598: kopen("/etc/hosts", O_RDONLY) = 8
7733360: 60031055: 0.2609: kopen("/etc/hosts", O_RDONLY) = 8
7733360: 60031055: 0.2611: kioctl(8, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
7733360: 60031055: 0.2612: kfcntl(8, F_SETFD, 0x0000000000000001) = 0
7733360: 60031055: 0.2614: kioctl(8, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
7733360: 60031055: kread(8, " # I B M _ P R O L O G".., 4096) = 2315
7733360: 60031055: kread(8, " # I B M _ P R O L O G".., 4096) = 0
7733360: 60031055: 0.2619: socket(2, 2, 0)= 9
7733360: 60031055: 0.2621: getsockopt(9, 65535, 4104, 0x0FFFFFFFFFFF7484, 0x0FFFFFFFFFFF7480) = 0
7733360: 60031055: 0.2622: connext(9, 0x09001000A0021E18, 16) = 0
7733360: 60031055: 0.2624: _esend(9, 0x0FFFFFFFFFFF83B0, 23, 0, 0x0000000000000000) = 23
7733360: 60031055: 2.2627: _poll(0x0FFFFFFFFFFF7550, 1, 5000) (sleeping...)
7733360: 60031055: 2.2627: _poll(0x0FFFFFFFFFFF7550, 1, 5000) = 0
7733360: 60031055: 5.2628: close(9)= 0
7733360: 60031055: 5.2630: socket(2, 2, 0)= 9
7733360: 60031055: 5.2632: getsockopt(9, 65535, 4104, 0x0FFFFFFFFFFF7484, 0x0FFFFFFFFFFF7480) = 0
7733360: 60031055: 5.2633: connext(9, 0x09001000A0021E18, 16) = 0
7733360: 60031055: 5.2635: _esend(9, 0x0FFFFFFFFFFF83B0, 23, 0, 0x0000000000000000) = 23
7733360: 60031055: 7.2638: _poll(0x0FFFFFFFFFFF7550, 1, 10000) (sleeping...)
7733360: 60031055: 7.2638: _poll(0x0FFFFFFFFFFF7550, 1, 10000) = 0
7733360: 60031055: 15.2639: close(9)= 0
7733360: 60031055: 15.2641: socket(2, 2, 0)= 9
7733360: 60031055: 15.2642: getsockopt(9, 65535, 4104, 0x0FFFFFFFFFFF7484, 0x0FFFFFFFFFFF7480) = 0
7733360: 60031055: 15.2644: connext(9, 0x09001000A0021E18, 16) = 0
7733360: 60031055: 15.2646: _esend(9, 0x0FFFFFFFFFFF83B0, 23, 0, 0x0000000000000000) = 23
7733360: 60031055: 17.2649: _poll(0x0FFFFFFFFFFF7550, 1, 20000) (sleeping...)
7733360: 60031055: 17.2649: _poll(0x0FFFFFFFFFFF7550, 1, 20000) = 1
7733360: 60031055: 26.0927: _enrecvfrom(9, 0x0FFFFFFFFFFF9700, 1024, 0, 0x0FFFFFFFFFFF7D10, 0x0FFFFFFFFFFF7538, 0x0000000000000000) = 23
7733360: 60031055: 26.0929: close(9)= 0
7733360: 60031055: 26.0931: close(8)= 0
如/etc/resolv.conf文件内容如下
nameserver 192.168.50.2 search localdomain
将nameserver注释掉就好了。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




