碎碎念
在使用自动化工具安装TSAMP的过程中,机器会自动重启这件事。
TSAMP真的挺折磨的,一个月居然因为这件事情debug两次了。
在测试自动化脚本的时候,第一遍安装都是好好的,从第二遍开始(因为要测试脚本的幂等性)就出现各种错误,写代码是很爽,改代码就要秃头了
Debug
由于是在虚拟机中运行,而且触发重启的速度特别快,通常是闪过一段话,然后马上黑屏重启了,于是为服务器托管网了了解发生了什么,我重复进行了这个步骤并且尝试截屏。
大概就是这样子,reboot code 603.598272 原本以为是IBM的返回码,就像sql1768N之类的,所以去公式网去查,发现不是。然后想到既然不是db的码那应该就是系统的冲突引起的吧
然后查看系统日志 /var/log/messages
打开文件后跳到最后一行从下往上开始查
大概意思是因为触发了看门狗计时器所以导致系统重启,但是安装tsamp这件事情不应该会导致什么死锁之类的事情发生吧
所以捋一下执行过程,在本次案例中,自动化脚本的过程是:
设置操作系统,安装db2数据库,设置db2数据库参数,启动hadr,安装tsamp,使用db2haicu脚本安装
因为第一次执行都是好好的,从第二次开始一直出问题,那就可以确定问题一定出现在其他几个步骤不满足幂等性上,所以一步步倒推,先尝试使用chrg停止tsamp服务,然后热安装tsamp,果然那重启了,看来不是资源组的问题,再往前推,尝试停止hadr服务,仍然重启,再往前也是如此。
最后的可能性就是db2haicu执行后,由于IBM.Application中的脚本正在运行中,热安装极有可能和这些东西冲突,然后在执行installSAM之前尝试了使用db2haicu -delete命令,果然问题解决了。
可能从老手的角度来看,热安装tsamp失败说明肯定是tsamp正在运行中啊,为什么还去排查hadr呢,确实是这样子,就好像删除一个正在运行中的软件会失败一样,我也觉得早就该想到这点,因为是刚入行的新人,debug的能力或者说直觉很钝的缘故,学习的路还有很长……
服务器托管,北京服务器托管,服务器租用 http://www.fwqt服务器托管网g.net
相关推荐: Taurus.MVC WebMVC 入门开发教程4:数据列表绑定List
前言: 在本篇 Taurus.MVC WebMVC 入门开发教程的第四篇文章中, 我们将学习如何实现数据列表的绑定,通过使用 List 来展示多个数据项。 我们将继续使用 Taurus.Mvc 命名空间,同时探讨如何在视图中绑定并显示一个 Model 列表。 …