db2数据库+WAS中间件+ERP
正常生产环境,服务器网络通,数据库配置参数无人更改,看监控上数据库app连接数最大314。今天早上突然ERP无法访问,WAS中各JVM虚拟机在AIX系统中进程在,但是各客户端无法访问,应用连接超时,在服务器端通过命令db2 connect to 数据库没有反映。数据库topas 资源使用正常。手动终止WAS上各假死状态的进程后。仍然无法连接数据库,也不报错 就是回车后没有反应。db2diag日志显示05点直接跳到09点的,正好故障时间段没有相关日志。db2stop force 等待五分钟后也没有什么反映。因现场业务都是生产环境,只能强制重启服务器解决。 请问各位大神,这种情况下大概什么原因导致的?从何处查原因?
在本地 是着连接数据,可以检查下ipcs 资源 ,ipcs -qa 看看是不是有程序在使用消息队列信号量。如果你重启了 很难找原因。请仔细检查下 诊断目录中的文件, 这样的系统一般会留点信息在上面的。
收起我提供一个思路。我估计排除了通讯故障以外,单纯从数据库层面考虑的话,数据库处于一个hang住的状态,可以考虑几个要素:
1、数据库表空间状态;
2、数据库活动日志是否已满
db2stop force等待五分钟没反应,我觉得数据库正处在一个回滚roll forward状态,可能是活动日志已满。
凑个热闹,仅提供下思路
这种现象像是数据库hang 的问题
1、您应该在问题发生时试着从 “数据库 hang”问题 的角度去尝试着能否解决问题。
2、查看当时是否出现 latch等待,如果有,检查各个agent 的 stack查看问题。
3、如果上面都未发现问题,那只能使用 操作系统层面的 trace 和 db2trc 进行问题追踪了
我之前遇到过类似的问题,是 DB2 hang 住了。
收起