监听启动缓慢问题分析
发表于:2025-01-28 作者:千家信息网编辑
千家信息网最后更新 2025年01月28日,执行监听启动操作,会hang起来一段时间,最终监听启动成功 [oracle@sky-oel7 ~]$ lsnrctl startConnecting to (DESCRIPTION=(ADDRESS=
千家信息网最后更新 2025年01月28日监听启动缓慢问题分析执行监听启动操作,会hang起来一段时间,最终监听启动成功 [oracle@sky-oel7 ~]$ lsnrctl start
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sky-oel7)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 12.1.0.2.0 - Production Start Date 12-JAN-2016 16:42:57 Uptime 0 days 0 hr. 0 min. 40 sec
启动耗时40秒。
指定监听的日志等级为16 [oracle@sky-oel7 trace]$ cat /oracle/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora # listener.ora Network Configuration File: /oracle/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora # Generated by Oracle configuration tools.
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = sky-oel7)(PORT = 1521)) ) )
TRACE_LEVEL_LISTENER=16
重新启动监听程序,日志 [oracle@sky-oel7 trace]$ tail -f listener.log
Log messages written to /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/alert/log.xml Trace information written to /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/trace/ora_4179_140717186082304.trc Trace level is currently 16
Started with pid=4179 Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sky-oel7)(PORT=1521)))
TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN CODE WARNING: Subscription for node down event still pending 12-JAN-2016 16:10:14 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=sky-oel7)(USER=oracle))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=202375680)) * status * 0
[oracle@sky-oel7 admin]$ vi /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/trace/ora_4179_140717186082304.trc
2016-01-12 16:09:34.211259 : nttcnp:binding an address to a socket. 2016-01-12 16:09:34.211275 : nttcnp:listening on a bound socket (queue size = 128). 2016-01-12 16:09:34.211324 : nttcnp:getting sockname 2016-01-12 16:09:34.211342 : nttcnp:getting peername 2016-01-12 16:09:34.211355 : nttcnp:exit 2016-01-12 16:09:34.211368 : snlinGetAddrInfo:entry 2016-01-12 16:10:14.256096 : snlinGetAddrInfo:getaddrinfo() failed with error -3 2016-01-12 16:10:14.256193 : snlinGetAddrInfo:exit 2016-01-12 16:10:14.256215 : nttcon:exit 2016-01-12 16:10:14.256241 : nsopen:transport is open 2016-01-12 16:10:14.256261 : nsoptions:entry
没有更多的可用信息。
通过strace进行进程启动信息分析 [oracle@sky-oel7 ~]$ strace -f -t -o ~/listener.trc lsnrctl start
查看strace日志信息 5042 16:42:57 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 13 5042 16:42:57 connect(13, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("172.24.97.1")}, 16) = 0 5042 16:42:57 poll([{fd=13, events=POLLOUT}], 1, 0) = 1 ([{fd=13, revents=POLLOUT}]) 5042 16:42:57 sendto(13, ":\26\1\0\0\1\0\0\0\0\0\0\10sky-oel7\tworkgroup\0"..., 36, MSG_NOSIGNAL, NULL, 0) = 36 5042 16:42:57 poll([{fd=13, events=POLLIN}], 1, 5000) = 0 (Timeout)
5042 16:43:02 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 14 5042 16:43:02 connect(14, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.191.1")}, 16) = 0 5042 16:43:02 poll([{fd=14, events=POLLOUT}], 1, 0) = 1 ([{fd=14, revents=POLLOUT}]) 5042 16:43:02 sendto(14, ":\26\1\0\0\1\0\0\0\0\0\0\10sky-oel7\tworkgroup\0"..., 36, MSG_NOSIGNAL, NULL, 0) = 36 5042 16:43:02 poll([{fd=14, events=POLLIN}], 1, 5000) = 0 (Timeout)
上面的信息看出,是由于地址解析失败造成网络超时。
这些地址信息,可以通过DNS配置文件查找到 [root@sky-oel7 ~]# cat /etc/resolv.conf # Generated by NetworkManager search workgroup nameserver 172.24.97.1 nameserver 192.168.191.1
屏蔽这些地址后,listener启动正常。
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sky-oel7)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 12.1.0.2.0 - Production Start Date 12-JAN-2016 16:42:57 Uptime 0 days 0 hr. 0 min. 40 sec
启动耗时40秒。
指定监听的日志等级为16 [oracle@sky-oel7 trace]$ cat /oracle/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora # listener.ora Network Configuration File: /oracle/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora # Generated by Oracle configuration tools.
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = sky-oel7)(PORT = 1521)) ) )
TRACE_LEVEL_LISTENER=16
重新启动监听程序,日志 [oracle@sky-oel7 trace]$ tail -f listener.log
Log messages written to /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/alert/log.xml Trace information written to /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/trace/ora_4179_140717186082304.trc Trace level is currently 16
Started with pid=4179 Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sky-oel7)(PORT=1521)))
TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN CODE WARNING: Subscription for node down event still pending 12-JAN-2016 16:10:14 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=sky-oel7)(USER=oracle))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=202375680)) * status * 0
[oracle@sky-oel7 admin]$ vi /oracle/app/oracle/diag/tnslsnr/sky-oel7/listener/trace/ora_4179_140717186082304.trc
2016-01-12 16:09:34.211259 : nttcnp:binding an address to a socket. 2016-01-12 16:09:34.211275 : nttcnp:listening on a bound socket (queue size = 128). 2016-01-12 16:09:34.211324 : nttcnp:getting sockname 2016-01-12 16:09:34.211342 : nttcnp:getting peername 2016-01-12 16:09:34.211355 : nttcnp:exit 2016-01-12 16:09:34.211368 : snlinGetAddrInfo:entry 2016-01-12 16:10:14.256096 : snlinGetAddrInfo:getaddrinfo() failed with error -3 2016-01-12 16:10:14.256193 : snlinGetAddrInfo:exit 2016-01-12 16:10:14.256215 : nttcon:exit 2016-01-12 16:10:14.256241 : nsopen:transport is open 2016-01-12 16:10:14.256261 : nsoptions:entry
没有更多的可用信息。
通过strace进行进程启动信息分析 [oracle@sky-oel7 ~]$ strace -f -t -o ~/listener.trc lsnrctl start
查看strace日志信息 5042 16:42:57 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 13 5042 16:42:57 connect(13, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("172.24.97.1")}, 16) = 0 5042 16:42:57 poll([{fd=13, events=POLLOUT}], 1, 0) = 1 ([{fd=13, revents=POLLOUT}]) 5042 16:42:57 sendto(13, ":\26\1\0\0\1\0\0\0\0\0\0\10sky-oel7\tworkgroup\0"..., 36, MSG_NOSIGNAL, NULL, 0) = 36 5042 16:42:57 poll([{fd=13, events=POLLIN}], 1, 5000) = 0 (Timeout)
5042 16:43:02 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 14 5042 16:43:02 connect(14, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.191.1")}, 16) = 0 5042 16:43:02 poll([{fd=14, events=POLLOUT}], 1, 0) = 1 ([{fd=14, revents=POLLOUT}]) 5042 16:43:02 sendto(14, ":\26\1\0\0\1\0\0\0\0\0\0\10sky-oel7\tworkgroup\0"..., 36, MSG_NOSIGNAL, NULL, 0) = 36 5042 16:43:02 poll([{fd=14, events=POLLIN}], 1, 5000) = 0 (Timeout)
上面的信息看出,是由于地址解析失败造成网络超时。
这些地址信息,可以通过DNS配置文件查找到 [root@sky-oel7 ~]# cat /etc/resolv.conf # Generated by NetworkManager search workgroup nameserver 172.24.97.1 nameserver 192.168.191.1
屏蔽这些地址后,listener启动正常。
信息
监听
地址
日志
分析
成功
可以通过
文件
时间
更多
程序
等级
网络
进程
面的
配置
缓慢
问题
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手机可以做前端服务器吗
2b2t国际版服务器编号是什么
netmvc怎么连数据库
网络技术取代人功能
无法装载地图数据库
用友t3 数据库表结构
大学生网络安全竟赛
aes服务器
e2603服务器
县委办网络安全管理制度
万户网络技术支持
潍坊app定制软件开发哪家靠谱
网络安全活动的活动目的
工作台运动控制软件开发
数据库中故障模型的三种状态
国家大力宣传网络安全的目的
lotus忘记服务器密码
我的世界服务器卫星插件
山西网络安全等级保护测评名单
chrome网络安全吗
青少年网络安全观后感四百字
小纵在服务器玩谁是杀手
服务器网线连接笔记本
苏州新一代服务器哪个厂家质量好
和平精英连续4小时服务器
人才交流中心数据库习题
网络安全人人有责主题画8k
邯郸招聘网络技术工程师
大话西游2找不见服务器
第六章数据库设计理论思维导图