温馨提示 追星慎重
海潮TIME
暖心上线
问题描述
主
机异常关闭后,TSM server无法启动,检查后台的db2数据库无法启动。





问题分析
登录系统,检查db2相关信息
[tsmadmin@asdf ~]$ db2set -all
发现db2的注册变量没有了,于是尝试重新添加注册变量。
[tsmadmin@asdf ~]$ db2set DB2COMM=TCPIP -i
DB2SET processing complete, rc = 4, SQLCODE = 4
添加注册变量有错。
感觉自己似乎有点在走弯路,于是先从最简单的报错入手。

根据报错代码,使用db2帮助查看报错代码信息:

根据报错代码,判定为services中缺少关于db2实例的信息。
查看SQL6030N 的解释也是一样。
于是检查/etc/ervices文件
[tsmadmin@asdf ~]$ ls -l /etc/services
-rw-r--r-- 1 root root 0 Aug 31 18:43 /etc/services
该文件大小为0,文件不正常,找到问题根源。
问题处理
从相同版本的其他机器拷贝/etc/services过来,如果是双机环境,直接从备机拷贝/etc/services文件,问题就能够解决。
但由于该环境是一个单机环境,其他机器没有类似的软件环境,所以services拷贝过来后,还需要添加实例的相关信息。

PS:DB2_tsmadmin*的端口是用作FCM通信的,系统的第一个实例时60000开始,后续的实例是60006、60011...,这里只需要添加第一组实例的端口信息即可。
验证结果,数据库可以正常启动:
[root@asdf etc]# su - tsmadmin
Last login: Fri Aug 31 20:21:44 CST 2018 on pts/0
[tsmadmin@asdf ~]$ db2start
08/31/2018 20:36:14 0 0 SQL1063N DB2START processing was successful.
SQL1063N DB2START processing was successful.
检查注册变量,发现所有信息都回来了。
[tsmadmin@asdf ~]$ db2set -all
[i] DB2_PMODEL_SETTINGS=MAX_BACKGROUND_SYSAPPS:500
[i] DB2_SKIPINSERTED=ON
[i] DB2_KEEPTABLELOCK=OFF
[i] DB2_EVALUNCOMMITTED=ON
[i] DB2_SKIPDELETED=ON
[i] DB2COMM=TCPIP
[i] DB2CODEPAGE=819
[i] DB2_PARALLEL_IO=*
[g] DB2INSTDEF=tsmadmin
数据库也能正常监听tcp连接:

最终,测试启动TSM server也正常:

作者简介

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

欢迎大家在下方积极留言评论,如被采纳我们将为您送上一份精美小礼物。

长按下方二维码关注我们

★银信科技★
IT运维
整体解决方案提供商




