今天接到一个同事说xx服务器上oracle不能登陆,奇怪的是
本地都不能登陆,
远程登陆有时成功。
在检查了监听、sqlnet、tnsnames的配置后,没有发现问题。查看告警日志也没有发现问题。
当时系统负载很重(开发环境,上面运行多种应用 ) ,为了便于观察,停止了部分WAS进程。问题依旧,因此怀疑是资源分配问题。
查看CPU、内存,都比较紧张,但不至于引起问题。查看网络,netstat -a发现如下现象
一般情况下进程在启动的时候申请网络资源,在完成工作后释放,因此内核端口分配不会如此连续,用netstat命令连续看了几次,发现确实有进程在不断申请端口。
可以断定是由于异常进程导致系统不停分配端口,以至于新的连接无法建立。查找问题进程
# netstat -Aan |grep 50036
f100060006324c00 udp4 0 0 *.50036 *.*
# rmsock f100060007bfee00 inpcb
The socket 0x8b7c408 is being held by proccess 3121224 (cicsas).
停止这个cics region ,系统恢复正常,Oracle也能够正常连接。使用netstat查看,系统也不再连续分配udp端口。
问题解决,cicsas问题有项目组分析。可能是系统时间调整问题,也可能是bug。
在检查了监听、sqlnet、tnsnames的配置后,没有发现问题。查看告警日志也没有发现问题。
当时系统负载很重(开发环境,上面运行多种应用 ) ,为了便于观察,停止了部分WAS进程。问题依旧,因此怀疑是资源分配问题。
查看CPU、内存,都比较紧张,但不至于引起问题。查看网络,netstat -a发现如下现象
![bb](http://img.blog.itpub.net/blog/attachment/201402/8/15711267_139183250114U1.jpg?x-oss-process=style/bb)
一般情况下进程在启动的时候申请网络资源,在完成工作后释放,因此内核端口分配不会如此连续,用netstat命令连续看了几次,发现确实有进程在不断申请端口。
可以断定是由于异常进程导致系统不停分配端口,以至于新的连接无法建立。查找问题进程
# netstat -Aan |grep 50036
f100060006324c00 udp4 0 0 *.50036 *.*
# rmsock f100060007bfee00 inpcb
The socket 0x8b7c408 is being held by proccess 3121224 (cicsas).
![bb](http://img.blog.itpub.net/blog/attachment/201402/8/15711267_1391832795RRNr.jpg?x-oss-process=style/bb)
停止这个cics region ,系统恢复正常,Oracle也能够正常连接。使用netstat查看,系统也不再连续分配udp端口。
问题解决,cicsas问题有项目组分析。可能是系统时间调整问题,也可能是bug。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15711267/viewspace-1078004/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/15711267/viewspace-1078004/