oracle单实例升级比较简单,但rac升级还是相对复杂一些,注意事项比较多。下面大致说一下升级步骤及注意事项,大家可以测试一些,具体遇到的问题可集中交流。
11.2.0.3(旧) ----->11.2.0.4(新)
GI_HOME:
11.2.0.3:/grid/home (旧)
11.2.0.4:/grid/home1(新)
ORACLE_HOME:
11.2.0.3:/db/base/11(旧)
11.2.0.4:/db/base/11.2.0.4(新)
在升级之前一定要备份数据库,便于回退。
升级大致分为两部分:升级GI,升级DB。
1:下载11.2.0.4介质
2:用grid用户进行解压
3:在两个节点都创建11.2.0.4的gi home
4:利用CVU进行升级前的检查
用grid用户在一节点执行:
/grid/grid/runcluvfy.sh stage -pre crsinst -upgrade -n rac1,rac2 -rolling -src_crshome /grid/home -dest_crshome /grid/11.2.0.4 -dest_version 11.2.0.4.0
5:升级GI
不要停止旧的GI,保持所有节点的GI都是运行的。
crsctl status res -t
6:在节点一用grid用户执行安装
./runInstaller
关键点:
选择:Upgrade oracle Grid infrastructure or Oracle Automatic Storage Management
输入11.2.0.4的GI的ORACLE_HOME,这个路径需要提前在两个节点创建。
7:根据提示在节点一和节点2分别执行rootupgrade.sh
8:查询GI版本,确认已经升级到11.2.0.4
crsctl query crs activeversion
9:修改grid用户的ORACLE_HOME和PATH到新的路径,所有节点都修改。
1:下载11.2.0.4介质
2:用oracle用户解压
3:在两个节点都创建11.2.0.4的db home
4:在安装前一定要取消oracle用户的oracle_base、oracle_home、oracle_sid等的设置。
这个时候只是安装软件,对运行的数据库没有影响,数据库是启动和停止的都可以。
为了减少在升级过程中对资源的占用,将实例停止。
5:按照提示执行脚本root.sh。
6:升级数据库,运行utlu112i.sql进行升级前的检查。
7:su - oracle
export 旧的ORACLE_HOME
export ORACLE_SID=db1
8:启动数据库(如果之前已经关闭了的话)
9:执行新目录下的utlu112i.sql,修正上面脚本检查发现的问题。
dbua/手动跑脚本
show parameter cluster true改成false(手动升级)
10:用oracle用户执行新目录下的dbua
11:检查数据库版本为11.2.0.4
select comp_name,version,status,schema from dba_registry;
$ORACLE_HOME/rdbms/admin/utlu112s.sql
12:修改oracle_home和path环境变量,指向到新的路径
crsctl status res -t
收起