DB2创建实例挂起问题处理

  • A+
所属分类:数据库

1周前

因要升级DB2 V9.7至V10.5

是一个新的环境

以前做过测试

环境需要进行清理

于是删除无用的数据库后

再删除实例

发现db2icrt 创建实例挂起

等待时间很久都无结果

DB2创建实例挂起问题处理

问题

problem

分析

analysis

当前实例的版本是V9.7

补丁也是有的FP8

排除软件自身问题

由于db2icrt有-d的debug开关

可以看到详细的执行信息

同时也可以借助操作系统的命令

或者工具来分析问题了

aix提供的truss是个简单易用的工具

所以先使用该命令进行故障定位

这个看个人喜好了

DB2创建实例挂起问题处理

打开一个ssh连接

执行db2icrt

然后进入挂起状态

DB2创建实例挂起问题处理

使用ps命令检查

发现除了db2icrt的主进程挂起外

它的子进程db2isrv进入循环sleeping状态

深度

Countine

挖掘

excavation

继续分析

使用aix的truss命令

跟踪db2isrv 的执行情况

DB2创建实例挂起问题处理

平时我们看到的进程挂起

一般都是进入了循环sleeping状态

所以只要ECONNREFUSED这个错误即可

也就是连接拒绝的错误

由于是创建实例的操作

所以应不是跟实例进行连接

破冰

ice breaking

时刻

moment

继续排查

可以看到kopen

("/etc/hosts", O_RDONLY)

打开hosts文件的操作

问题应该是db2进程跟主机之间进行连接

于是进行tcp层面的测试

①ping主机ip地址均正常

②ping host-name发现无响应,找到问题

又是主机名解析问题

表象不是慢

是命令彻底挂起

DB2创建实例挂起问题处理

问题

problem

处理

handling

最终调整主机名解析顺序

修改/etc/netsvc.conf文件

添加hosts = local, bind4

测试主机名解析正常

重新发起db2icrt

实例创建成功

DB2创建实例挂起问题处理

DB2创建实例挂起问题处理

赵海潮,2008年入职银信科技,长期服务于金融行业IT系统维护,擅长IBM硬件产品维护,包括小型机、存储、SAN、磁带库等设备,同时熟悉DB2、Informix、AIX、TSM、MQ等软件产品运维,对EMC存储以及其他IT产品也有一定的了解。

avatar

发表评论

您必须才能发表评论!