oracle RAC 10g升级到11g (out of place)回退方案
从网上看到,有两种升级方式:
1,直接在原来的安装用户oracle下面安装GI, 升级旧的crs, asm;
2, 新建一个grid用户,屏蔽到10g crs信息,全新安装GI,再导入asm disk, 导入10g db, 然后再升级10g DB 都11g;
如果要求回退 ,那么一般使用方案2:
具体实施 如下:
如何保证10g CRS和11g GI并存在同一节点 , 即保持10g CRS和11g Grid Infrastructure 同时安装在一套cluster上,通过脚本切换实现 2者之间的切换,互不冲突
一、在安装11g GI 之前备份10g CRS环境配置文件的操作步骤
1、disable服务器自动启动CRS
以root用户执行:
$CRS_HOME/bin/crsctl disable crs
2、在/etc目录下新建/etc/10gcrs_bak目录作为备份文件存放的目录
以root用户登录
cd /etc
mkdir 10gcrs_bak
3、将以下需要备份的文件和文件夹进行备份
以root用户登录,备份文件:
cp -p /etc/inittab /etc/10gcrs_bak/inittab
cp -p /etc/init.crs /etc/10gcrs_bak/init.crs
cp -p /etc/init.crsd /etc/10gcrs_bak/init.crsd
cp -p /etc/init.cssd /etc/10gcrs_bak/init.cssd
cp -p /etc/init.evmd /etc/10gcrs_bak/init.evmd
cp -p /etc/oratab /etc/10gcrs_bak/oratab
cp -p /etc/oraInst.loc /etc/10gcrs_bak/oraInst.loc
cp -p /usr/local/bin/dbhome /etc/10gcrs_bak/dbhome
cp -p /usr/local/bin/coraenv /etc/10gcrs_bak/coraenv
cp -p /usr/local/bin/oraenv /etc/10gcrs_bak/oraenv
备份目录:
rm -rf /etc/10gcrs_bak/oracle
cp -pr /etc/oracle /etc/10gcrs_bak
查看/etc/rc.d/rc2.d下链接:
ls -lrt /etc/rc.d/rc2.d/*init.crs
结果应该返回2个文件名:
lrwxrwxrwx 1 root system 13 Apr 25 14:17 S96init.crs -> /etc/init.crs
lrwxrwxrwx 1 root system 13 Apr 25 14:17 K96init.crs -> /etc/init.crs
4、enable服务器自动启动CRS
以root用户执行:
$CRS_HOME/bin/crsctl enable crs
二、安装完11g GI环境之后,备份11g GI环境的操作步骤
1、disable服务器启动GI自动启动
以root用户执行:
$GRID_HOME/bin/crsctl disable crs
2、在/etc目录下新建/etc/11ggi_bak目录作为备份文件存放的目录
以root用户登录:
cd /etc
mkdir 11ggi_bak
3、将以下需要备份的文件和文件夹进行备份
以root用户登录,备份文件:
cp -p /etc/inittab /etc/11ggi_bak/inittab
cp -p /etc/init.ohasd /etc/11ggi_bak/init.ohasd
cp -p /etc/ohasd /etc/11ggi_bak/ohasd
cp -p /etc/oratab /etc/11ggi_bak/oratab
cp -p /etc/oraInst.loc /etc/11ggi_bak/oraInst.loc
cp -p /usr/local/bin/dbhome /etc/11ggi_bak/dbhome
cp -p /usr/local/bin/coraenv /etc/11ggi_bak/coraenv
cp -p /usr/local/bin/oraenv /etc/11ggi_bak/oraenv
备份目录:
rm -rf /etc/11ggi_bak/oracle
cp -pr /etc/oracle /etc/11ggi_bak/
查看/etc/rc.d/rc2.d下链接:
ls -lrt /etc/rc.d/rc2.d/*init.crs
结果应该返回2个文件名:
lrwxrwxrwx 1 root system 10 Apr 12 14:50 K19ohasd -> /etc/ohasd
lrwxrwxrwx 1 root system 10 Apr 12 14:50 S96ohasd -> /etc/ohasd
4、enable服务器自动启动GI
$GRID_HOME/bin/crsctl enable crs
三、10g CRS切换到11g GI环境的操作步骤
1、停止10g crs
$CRS_HOME/bin/crsctl stop crs
2、检查10g crs剩余进程
ps -ef | grep -v grep|grep -E 'init|d.bin|ocls|evmlogger|UID'
结果应该会返回以下4个进程列表:
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 12:07:31 - 0:00 /etc/init
root 139314 1 0 15:32:40 - 0:00 /bin/sh /etc/init.cssd fatal
root 364692 1 0 15:32:40 - 0:00 /bin/sh /etc/init.crsd run
root 630962 1 0 15:32:39 - 0:00 /bin/sh /etc/init.evmd run
3、删除/tmp/.oracle目录下的socket文件
rm -rf /tmp/.oracle/*
4、从11ggi_bak目录恢复11g环境
恢复目录:
rm -rf /etc/oracle
cp -pr /etc/11ggi_bak/oracle /etc/
恢复文件:
cp -p /etc/11ggi_bak/init.ohasd /etc/init.ohasd
cp -p /etc/11ggi_bak/ohasd /etc/ohasd
cp -p /etc/11ggi_bak/oratab /etc/oratab
cp -p /etc/11ggi_bak/oraInst.loc /etc/oraInst.loc
cp -p /etc/11ggi_bak/dbhome /usr/local/bin/dbhome
cp -p /etc/11ggi_bak/coraenv /usr/local/bin/coraenv
cp -p /etc/11ggi_bak/oraenv /usr/local/bin/oraenv
cp -p /etc/11ggi_bak/inittab /etc/inittab
删除10g crs链接,恢复11g GI链接
rm -rf /etc/rc.d/rc2.d/S96init.crs
rm -rf /etc/rc.d/rc2.d/K96init.crs
ln -s -f /etc/ohasd /etc/rc.d/rc2.d/K19ohasd