sitemap

RSS地图

收藏本站

设为首页

Oracle研究中心

当前位置:Oracle研究中心 > 故障案例 >

【案例】Oracle数据库lsnrctl start启动监听很慢的解决办法

时间:2016-10-22 22:48   来源:Oracle研究中心   作者:HTZ   点击:

天萃荷净 Oracle研究中心案例分析:运维DBA反映AIX操作系统下的Oracle数据库在启动监听程序时lsnrctl start启动监听很慢,结合MOS官方分析原因为主机名异常导致。
今天登陆了一下公司AIX平台的ORACLE测试服务器,没有配置监听,由于手动配置监听后,启动监听,发现启动的时候很慢,日志如下:

[$(hostname):oracle:/u01/app/oracle/10.2.0/db_1/network/admin]lsnrctl start
LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production on 20-MAR-2013 21:52:46

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Starting /u01/app/oracle/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
System parameter file is /u01/app/oracle/10.2.0/db_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cdolm2)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cdolm2)(PORT=1521)))
停在这儿 ,truss进程
[$(hostname):oracle:/home/oracle]truss -p 241908
connext(0, 0x0000000000000000, 0) (sleeping...)
connext(0, 0x0000000000000000, 0) Err#78 ETIMEDOUT
close(3) = 0
getsockopt(3, 65535, 4097, 0x0FFFFFFFFFFF7824, 0x0FFFFFFFFFFF7820) Err#9 EBADF
getsockopt(3, 65535, 4098, 0x0FFFFFFFFFFF7824, 0x0FFFFFFFFFFF7820) Err#9 EBADF
access("/tmp/.oracle", 0) = 0
chmod("/tmp/.oracle", 01777) Err#1 EPERM
socket(1, 1, 0) = 3
access("/tmp/.oracle/sEXTPROC0", 0) Err#2 ENOENT
access("/tmp/o/sEXTPROC0", 0) Err#2 ENOENT
close(3) = 0
open("/u01/app/oracle/10.2.0/db_1/network/mesg/tnsus.msb", O_RDONLY) = 3
kfcntl(3, F_SETFD, 0x0000000000000001) = 0
lseek(3, 0, 0) = 0
kread(3, "1513 "011303\t\t\0\0\0\0".., 256) = 256
lseek(3, 512, 0) = 512
kread(3, " 19B\0\0\0\0\0\0\0\0\0\0".., 512) = 512
lseek(3, 1024, 0) = 1024
kread(3, "\0\t\012\01A\0 &\0 -\0 F".., 170) = 170
lseek(3, 19456, 0) = 19456
kread(3, "\00F04 $\0\0\0 b04 %\0\0".., 512) = 512
kwrite(1, " S t a r t i n g / u 0".., 66) = 66
kfcntl(1, F_GETFL, 0x0000000000000008) = 2
pipe(0x0FFFFFFFFFFFA548) = 0
pipe(0x0FFFFFFFFFFFA540) = 0
sigprocmask(0, 0x09001000A0198818, 0x09001000A01987F8) = 0
kfork() = 200740
thread_setmystate(0x0FFFFFFFFFFF9F50, 0x0000000000000000) = 0
sigprocmask(0, 0x0FFFFFFFFFFFA420, 0x0000000000000000) = 0
sigprocmask(2, 0x09001000A0198818, 0x0FFFFFFFFFFFA130) = 0
_sigaction(13, 0x0FFFFFFFFFFFA260, 0x0FFFFFFFFFFFA290) = 0
thread_setmystate(0x0FFFFFFFFFFF9D20, 0x0000000000000000) = 0
sigprocmask(1, 0x0FFFFFFFFFFFA390, 0x0000000000000000) = 0
kwaitpid(0x0FFFFFFFFFFFA530, 200740, 4, 0x0000000000000000, 0x0000000000000000) = 200740
close(4) = 0
close(7) = 0
set -o vi
kread(6, " N T P 0 2 7 8 5 8 8\n".., 64) = 12
_getpid() = 241908
kfcntl(6, F_SETFD, 0x0000000000000001) = 0
kwrite(5, "\0 001\0\0\001 901 ,".., 184) = 184
kread(6, "\0\0\0\0\0\0\0\0\0\0\0\0".., 2064) (sleeping...)
kread(6, "\0 \0\002\0\0\001 9\0\0".., 2064) = 32
kread(6, "01 }\0\006\0\0\0\0\0 T N".., 2064) = 381
kwrite(1, " T N S L S N R f o r ".., 371) = 371
kwrite(1, "\n", 1) = 1
close(5) = 0
close(6) = 0
getuidx(2) = 202
__libc_sbrk(0x0000000000010020) = 0x00000000106044E0
open("/etc/passwd", O_RDONLY) = 4
kioctl(4, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
kfcntl(4, F_GETFD, 0x0000000000000000) = 0
kfcntl(4, F_SETFD, 0x0000000000000001) = 0
accessx("/etc/security/passwd", 04, 0) Err#13 EACCES
_getpid() = 241908
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF7880, 176, 0) = 0
_getpid() = 241908
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF7040, 176, 0) = 0
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF7100, 176, 0) = 0
_getpid() = 241908
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF7000, 176, 0) = 0
accessx("/etc/security/passwd", 04, 0) Err#13 EACCES
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF6D30, 176, 0) = 0
accessx("/etc/passwd", 04, 0) = 0
statx("/etc/passwd", 0x0FFFFFFFFFFF6DF0, 176, 0) = 0
_getpid() = 241908
accessx("/etc/security/passwd", 04, 0) Err#13 EACCES
accessx("/etc/passwd", 04, 0) = 0
close(4) = 0
lseek(3, 18944, 0) = 18944
kread(3, "\00F0413\0\0\0 b0414\0\0".., 512) = 512
kwrite(1, " C o n n e c t i n g t".., 77) = 77
kfcntl(1, F_GETFL, 0x0000000000000008) = 2
getdomainname(0x0FFFFFFFFFFF66B0, 256) Oracle oracleplus.net = 0
open("/etc/hosts", O_RDONLY) = 4
kioctl(4, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
kfcntl(4, F_SETFD, 0x0000000000000001) = 0
kioctl(4, 22528, 0x0000000000000000, 0x0000000000000000) Err#25 ENOTTY
kread(4, " # @ ( # ) 4 7\t 1 . 1".., 4096) = 2026
kread(4, " # @ ( # ) 4 7\t 1 . 1".., 4096) = 0
close(4) = 0
socket(2, 1, 0) = 4
getsockopt(4, 65535, 4104, 0x0FFFFFFFFFFF7644, 0x0FFFFFFFFFFF7640) = 0
connext(4, 0x0000000110603D30, 16) (sleeping...)
再不停的重新connext这个过程。
[$(hostname):oracle:/home/oracle]ping cdolm2
PING cdolm2: (10.10.123.223): 56 data bytes
没有反应了,ctrl+c结局
^C
----cdolm2 PING Statistics----
4 packets transmitted, 0 packets received, 100% packet loss

[$(hostname):oracle:/home/oracle]cat /etc/hosts
127.0.0.1 loopback localhost # loopback (lo0) name/address
10.0.0.6 cdolm2-priv
192.168.0.221 cdolm1
10.0.0.5 cdolm1-priv
192.168.0.232 cdolm2-vip
192.168.0.231 cdolm1-vip

10.10.123.223 cdolm2 cdolm2 /fdfd2
192.168.1.250 cdolm2

192.168.1.251 cdolm2
发现HOSTS文件不正确。
修改hosts
[$(hostname):oracle:/home/oracle]set -o vi
[$(hostname):oracle:/home/oracle]ifconfig -a
en0: flags=4e080863,80
inet 192.168.1.250 netmask 0xffffff00 broadcast 192.168.1.255
lo0: flags=e08084b
inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
inet6 ::1/0
tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1

修改hosts文件

192.168.1.250 cdolm2
启动正常
启动正常
[$(hostname):oracle:/u01/app/oracle/10.2.0/db_1/network/admin]lsnrctl start

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production on 20-MAR-2013 21:56:37

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Starting /u01/app/oracle/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
System parameter file is /u01/app/oracle/10.2.0/db_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cdolm2)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cdolm2)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
Start Date 20-MAR-2013 21:56:37
Uptime 0 days 0 hr. 0 min. 1 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/10.2.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cdolm2)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

本文固定链接: http://www.htz.pw/2014/05/25/lsnrctl-start%e5%90%af%e5%8a%a8%e7%9b%91%e5%90%ac%e5%be%88%e6%85%a2aix%e5%b9%b3%e5%8f%b0.html | 认真就输

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【案例】Oracle数据库lsnrctl start启动监听很慢的解决办法

本文由大师惜分飞原创分享,网址:http://www.oracleplus.net/arch/1036.html

Oracle研究中心

关键词:

lsnrctl start启动监听很慢的原因

Oracle lsnrctl start启动监听很慢