現象描述:
在oracle 10g/11g版本引進的oracle叢集軟體oracle clusterware,如果需要在伺服器上重新安裝oracle clusterware(crs),首先必須把oracle clusterware(crs)删除幹淨。
告警資訊:
因oracle clusterware(crs)未删除幹淨,将導緻在安裝crs時運作root.sh指令失敗。
原因分析:
ocr、voting檔案需要重新低格(清零)才能被複用。
處理過程:
約定:*操作步驟隻需在其中任意一個節點執行即可,否則在所有節點都要執行
一、腳本自動删除
切換到root使用者
$su – root
#cd $ora_crs_home/install
1、執行rootdelete.sh腳本
# ./rootdelete.sh
getting local node name
node = rp5470b
prko-2006 : invalid node name: rp5470b
stopping resources.
this could take several minutes.
error while stopping resources. possible cause: crsd is down.
stopping cluster synchronization services.
unable to communicate with the cluster synchronization services daemon.
oracle crs stack is not running.
oracle crs stack is down now.
removing script for oracle cluster ready services
updating ocr file for downgrade
cleaning up scr settings in '/var/opt/oracle/scls_scr'
cleaning up network socket directories
2、執行rootdeinstall.sh腳本*
# ./rootdeinstall.sh
verifying existence of ocr.loc file
removing contents from ocr mirror device
2560+0 records in
2560+0 records out
removing contents from ocr device
3、 使用oracle universal installer解除安裝crs軟體
$export display=10.69.24.124:0.0
$./runinstaller
二、手工删除
1、停止所有的服務
(資料庫、asm、監聽、nodeapps)
2、停止crs
#crsctl stop crs
#init.crs stop crs
3、 删除與系統啟動相關的檔案
sun:
rm /etc/init.d/init.cssd
rm /etc/init.d/init.crs
rm /etc/init.d/init.crsd
rm /etc/init.d/init.evmd
rm /etc/rc3.d/k96init.crs
rm /etc/rc3.d/s96init.crs
rm -rf /var/opt/oracle/scls_scr
rm -rf /var/opt/oracle/oprocd
rm /etc/inittab.crs
cp /etc/inittab.orig /etc/inittab
linux:
rm /etc/oracle/*
rm -f /etc/init.d/init.cssd
rm -f /etc/init.d/init.crs
rm -f /etc/init.d/init.crsd
rm -f /etc/init.d/init.evmd
rm -f /etc/rc2.d/k96init.crs
rm -f /etc/rc2.d/s96init.crs
rm -f /etc/rc3.d/k96init.crs
rm -f /etc/rc3.d/s96init.crs
rm -f /etc/rc5.d/k96init.crs
rm -f /etc/rc5.d/s96init.crs
rm -rf /etc/oracle/scls_scr
rm -f /etc/inittab.crs
hp-ux:
rm /sbin/init.d/init.cssd
rm /sbin/init.d/init.crs
rm /sbin/init.d/init.crsd
rm /sbin/init.d/init.evmd
rm /sbin/rc2.d/k960init.crs
rm /sbin/rc2.d/k001init.crs
rm /sbin/rc3.d/k960init.crs
rm /sbin/rc3.d/s960init.crs
hp tru64:
rm /sbin/rc3.d/k96init.crs
rm /sbin/rc3.d/s96init.crs
ibm aix:
rm /etc/init.cssd
rm /etc/init.crs
rm /etc/init.crsd
rm /etc/init.evmd
rm /etc/rc.d/rc2.d/k96init.crs
rm /etc/rc.d/rc2.d/s96init.crs
rm -rf /etc/oracle/oprocd
4、 kill掉遺留的crs程序(或重新開機機器)
ps -ef | grep crs
kill <crs pid>
ps -ef | grep evm
kill <evm pid>
ps -ef | grep css
kill <css pid>
5、 删除臨時檔案
rm -f /var/tmp/.oracle
或
rm -f /tmp/.oracle
6、 删除/etc/oracle/ocr.loc檔案
7、使用oracle universal installer解除安裝crs軟體(參照一、3、)
8、擦除ocr和voting磁盤的内容*
dd if=/dev/zero of=/dev/vg02/rocr1 bs=8192 count=2560
dd if=/dev/zero of=/dev/vg02/rocr2 bs=8192 count=2560
dd if=/dev/zero of=/dev/vg02/rvoting1 bs=8192 count=12800
dd if=/dev/zero of=/dev/vg02/rvoting2 bs=8192 count=12800
dd if=/dev/zero of=/dev/vg02/rvoting3 bs=8192 count=12800
删除完成,可以重新安裝oracle clusterware。
建議與總結:
在重新安裝crs前,必須把原先的crs清除幹淨。