Troubleshoot CRS 10.2.0.4 on EL5

昨天浪费了大半天时间升级10.2.0.1 to 10.2.0.4,平台是RHEL5,Kernel信息:

Linux xxx 2.6.18-8.0.0.4.1.el5 #1 SMP Tue Jun 5 23:09:11 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux

考虑到目前可能会有不少同学都要升级10201到10204或者更高的patchset,所以把昨天遇到的问题和troubleshooting的方法总结在这里:

install 10201 clustereare on /u01/app/cluster/crs
then 10201 RAC software on /u01/app/base/product/11g

upgrade 10204 cluster first,结束的时候,提示需要在每个节点按照顺序执行 crsctl stop crs; $CRS_HOME/install/root102.sh

问题就出在这里,有的时候,root102.sh在有些节点可能因为一些原因失败,最常见的就是timeout,这个时候cssd起来了,但是crsd无法正常启动。这个时候的状态是:
已经运行root102.sh的节点已经完成了升级,crs的software版本(crsctl query crs softwareversion)和active版本(crsctl query crs activeversion)都已经是10204了,但是别的节点software version是10204,但是activeversion仍然是10201

失败了以后,要重新在失败的节点上执行root102.sh,不能直接再次运行,需要作一些修改,恢复到运行root102.sh之前的状态,需要作如下修改:
1)从没有运行过root102.sh的节点上,打包 $CRS_HOME/install/patch102目录,并放在$CRS_HOME/install目录下 (运行过root102.sh一次之后,这个目录就不见了,所以为了稳妥起见,在运行最后一个节点的root102.sh之前,把这个目录备份一次,否则你就没地方找去了)
2)修改这个目录的属性为:oinstall,注意用 chown -Rf,确保子目录的权限也得到修改
3)改名或者删除CRS_HOME/install目录下生成的prepatch10204目录,make.log和files10204.log,这些都是root102.sh脚本运行的中间产物
4)修改$CRS_HOME/install目录下的文件属性为之前的用户和组。
5)把所有的clusterware相关的进程杀掉,可以用 ps -ef | grep -e d.bin 查看这些进程。
6)再次运行root102.sh

如果用上面的方法运行,依然无法成功的话,那么就把其余节点的crs stack 用crsctl stop crs停止,然后重复上面的步骤,再次运行,直到成功。

因为patchset是没法回退的,所以如果root102.sh一直无法成功的话,最差的办法,就是卸载之前的10201+10204 (both crs and rac),然后重新进行安装,这是我们最不希望看到的,所以按照之前的方法,多尝试几次。就会成功的。如果不幸,在这期间,你的节点重启了,也不要紧,节点回来以后,还是按照这个方法进行。最后升级成功:


[root@xxxxxx install]# pwd
/u01/app/cluster/crs/install
[root@xxxxxx install]# ls -lrt
total 260
-rwxr-xr-x 1 ractest oinstall 0 Feb 23 2005 install.incl
-rwxr-xr-x 1 ractest oinstall 38 Apr 20 2005 install.excl
-rw-rw-r-- 1 ractest oinstall 2808 Jul 14 2005 templocal
-rwxr-xr-x 1 ractest oinstall 4408 Apr 20 2006 rootaddnode.sbs
-rwxr-xr-x 1 ractest oinstall 1119 Oct 10 2007 cmdllroot.sh
-rw-rw---- 1 ractest oinstall 651 Aug 3 06:09 paramfile.crs
-rw-rw---- 1 ractest oinstall 42 Aug 3 06:10 cluster.ini
-rw-rw---- 1 ractest oinstall 179 Aug 3 06:10 envVars.properties
-rwxr-xr-x 1 ractest oinstall 17916 Aug 3 06:59 rootupgrade
-rwxr-xr-x 1 ractest oinstall 3642 Aug 3 06:59 rootinstall
-rwxr-xr-x 1 ractest oinstall 12842 Aug 3 06:59 rootdelete.sh
-rwxr-xr-x 1 ractest oinstall 3963 Aug 3 06:59 rootdeletenode.sh
-rwxr-xr-x 1 ractest oinstall 8261 Aug 3 06:59 rootdeinstall.sh
-rwxr-xr-x 1 ractest oinstall 32954 Aug 3 06:59 rootconfig
-rwxr-xr-x 1 ractest oinstall 24798 Aug 3 06:59 root102.sh
-rwxr-xr-x 1 ractest oinstall 5668 Aug 3 06:59 preupdate.sh
-rw-rw-r-- 1 ractest oinstall 10019 Aug 3 06:59 rootlocaladd
drwxr-xr-x 32 ractest oinstall 4096 Aug 3 08:54 prepatch10204
-rw-r--r-- 1 root root 67039 Aug 3 08:54 files10204.log
-rw-rw---- 1 ractest oinstall 8025 Aug 3 08:55 make.log
drwxrwx--- 2 ractest oinstall 4096 Aug 4 01:47 checkpoints
[root@xxxxxx install]#

你可能感兴趣的:(linux,脚本)