Upgrade Oracle RAC to 11.2.0.3 from 11.2.0.1 on Linux

Upgrade Oracle RAC to 11.2.0.3 from 11.2.0.1 on Linux

目录

1 系统升级环境

2 升级前准备

3 安装OPATCH工具和PSU

4 升级GI/CRS到11.2.0.3

5 升级RDBMS到 11.2.0.3

6 升级DB

7 验证

1 系统升级环境

1.1 硬件环境

产品名称

产品描述

数量

 

服务器节点

Cpu: Intel(R) Xeon(R) CPU E7- 4830  @ 2.13GHz

memory:8G

Core:4

Swap:6G

2

共享存储

一块214G scsi硬盘

1

 

1.2 软件环境

 

分类

项目

说明

备注

主机

主机名

S01,s02

 

操作系统

Red hat as 5

5.8

内核

2.6.18-308.el5

x86_64

 

 

 

数据库

 

数据库版本

Oracle Database 11g Release 2

(11.2.0.1.0) for Linux x86-64

 

运行模式

RAC

 

数据库名

test

 

实例名

Test1,test2

 

ASM

+DATA,+FLASH,+OCR_VOTE

 

 

存储

组件

文件系统

卷大小

ASM卷组名

ASM冗余

OCR-VOTE

ASM

3G

+OCR_VOTE

NOMAL

数据库文件

ASM

110G

+DATA

EXTERNAL

恢复区

ASM

110G

+FLASH

EXTERNAL

 

1.3 网络环境

 

 

 

网络配置

节点

公共IP

私有IP

虚拟IP

scan名称

SCAN IP

S01

172.31.2.36

192.168.0.2

172.31.2.251

s-scan

172.31.2.253

S02

172.31.2.62

192.168.0.3

172.31.2.63

 

1.4 相关目录对比

名称

升级前

升级后

GRID_BASE

/app/grid

/app/grid

GRID_HOME

/app/11.2.0/grid

/app/11.2.0.3/grid

ORACLE_BASE

/app/oracle

/app/oracle

ORACLE_HOME

/app/oracle/product/11.2.0/db_1

/app/oracle/product/11.2.0.3/db_1

 

2安装OPATCH工具和PSU

2.1 安装OPATCH

在所有节点上安装OPTATCH工具,安装此工具时不需要停止什么服务和进程。

首先用GRID用户移动备份原有的OPTATCH目录

[root@s01 ~]#su – grid

[grid@s01 ~]$mv $GRID_HOME/OPatch  $GRID_HOME/OPatch_bak

然后,将下载的OPATCH介质解压到$GRID_HOME下,即可

[grid@s01 ~]$unzip /app/soft/p6880880_112000_Linux-x86-64.zip -d $CRS_HOME

注:Patch 6880880: OPatch 11.2 (patchid:6880880),是最新的opatch工具;

   需要节点2上做以上操作。

2.2 安装PSU

1)切换到GRID用户,查询以前安装的补丁

[root@s01 ~]#su – grid

[root@s01 ~]#su – grid

[grid@s01 ~]$/app/11.2.0/grid/OPatch/opatch lsinventory -detail -oh $GRID_HOME

2)解压相应的PSU补丁

[grid@s01 ~]$unzip /app/soft/p9413827_112010_Linux-x86-64.zip

3)切换到ORACLE用户有,停止本地节点的相关DB HOME相关资源

[root@s01 ~]#su – oracle

[oracle@s01 ~]$srvctl stop home -o $ORACLE_HOME -n s01 -s stop_db_res

参考语法:

srvctl stop home -o [RDBMS_HOME] –n [node_name] -s [status file location]

4 ROOT用户执行rootcrs.pl -unlock命令

[root@s01 ~]# $GRID_HOME/crs/install/rootcrs.pl -unlock

5 ORACLE用户执行patch目录下的prepatch.sh脚本

[root@s01 ~]#su – oracle

[oracle@s01 ~]$cd /app/soft/

[oracle@s01 /app/soft/]$ 9413827/custom/server/9413827/custom/

scripts/prepatch.sh -dbhome $ORACLE_HOME

 

6)实际apply patch

grid用户执行以下命令

[root@s01 ~]#su - grid

[grid@s01 ]$cd /app/soft/9413827/

[grid@s01 ]$opatch napply -local -oh $GRID_HOME -id 9413827

 

oracle用户执行以下命令

[root@s01 ~]#su - oracle

[oracle@s01 ~]$cd /app/soft/9413827/

[oracle@s01 9413827]opatch napply custom/server/ -local -oh $ORACLE_HOME -id 9413827

 

7)配置HOME目录

 

以root用户执行以下命令

[root@s01 ~]#chmod +w $GRID_HOME/log/[nodename]/agent

[root@s01 ~]#chmod +w $GRID_HOME/log/[nodename]/agent/crsd

以ORACLE用户执行以下命令

[root@s01 ~]#su - oracle

[oracle@s01 ~]$cd /app/soft/9413827/

[oracle@s019413827]$ custom/server/9413827/custom/scripts/postpatch.sh –dbhome $ORACLE_HOME

8)以root用户重启CRS进程

[root@s01 ~]#$GRID_HOME/crs/install/rootcrs.pl -patch

[root@s01 ~]# $ORACLE_HOME/bin/srvctl start home -o $ORACLE_HOME -s $STATUS_FILE -n nodename

 

9)验证补丁安装成功

[grid@s01 ~]opatch lsinventory -detail -oh $GRID_HOME

[oracle@s01 ~]opatch lsinventory -detail -oh $ORACLE_HOME

 

注:以上步聚需要两节点操作,最好一节点操作成功后再操作另一节点。

3 升级前准备

3.1 备份数据库

为保证万无一失,在升级前最好对数据库做一次全备,并验证其有效性。

3.2 配置新的GRID_HOME,ORACLE_HOME

分别在两节点上创建目录,并配置相应的属组和权限。

[root@s01 ~]#mkdir –p /app/oracle/product/11.2.0/db_1

[root@s01 ~]#mkdir –p /app/11.2.0.3/grid

[root@s01 ~]#chown –R grid:oinstall /app/11.2.0.3/grid

[root@s01 ~]#chown –R oracle:oinstall /app/oracle/product/11.2.0/db_1

[root@s01 ~]#chmod –R 755/app/11.2.0.3/grid

[root@s01 ~]#chmod –R 755 /app/oracle/product/11.2.0/db_1

 

3.3 升级前检查

[grid@s01 ~]unzip p10404530_112030_Linux-x86-64_3of7.zip

[grid@s01 ~]$./runcluvfy.sh stage -pre crsinst -upgrade -n all -rolling -src_crshome /app/11.2.0/grid -dest_crshome /app/11.2.0.3/grid -dest_version 11.2.0.3.0

 

确定可以满足升级需求时,往下进行安装

 

4升级GI/CRS11.2.0.3

4.1 安装GI/CRS PATCH

以GRID用户启动GI/CRS的OUI安装界面

[grid@s01 ~]$unset GRID_HOME GRID_BASE ORACLE_SID
[grid@s01 ~]$ cd /app/patch/grid
[grid@s01 ~]$ ./runInstaller

1)选择skip software updates,并下一步

 

 

2 )选择update oracle grid,并下一步

 

3 ) 选择ENGLISH,并下一步

 

4)确认信息后下一步

 

5)确认信息后并下一步

 

6)填写新的GRID_HOME,并下一步

 

7 )确认可以满足需求时,下一步

8 )分别在两个节点上按序执行下列脚本

[root@s01 ~]#/app/11.2.0.3/grid/rootupdate.sh

[root@s02 ~]#/app/11.2.0.3/grid/rootupdate.sh

注:在正式执行rootupgrade.sh之前数据库服务在所有节点上都是可用的,而在执行rootupgrade.sh脚本期间,本地节点的CRS将短暂关闭,其它节点正常使用;

    为解决 unpublished bug 10011084 and unpublished bug 10128494,在两节点执行rootupgrade.sh之前,需要修改crsconfig_lib.pm参数文件,修改方式如下:

[root@s01 ~]#cp $NEW_CRS_HOME/crs/install/crsconfig_lib.pm

$NEW_CRS_HOME/crs/install/crsconfig_lib.pm.bak

[root@s01 ~]#vi $NEW_CRS_HOME/crs/install/crsconfig_lib.pm

@cmdout = grep(/$bugid/, @output);

修改为:

@cmdout = grep(/(9655006|9413827)/, @output);

@exp_func = qw(check_CRSConfig validate_olrconfig validateOCR

修改为:

@exp_func = qw(check_CRSConfig validate_olrconfig validateOCR read_file

4.2 验证

[root@s01 ~]#su – grid

[root@s01 ~]$crsctl query crs activeversion

注:更新bash_profile , 将GRID_HOME、ORACLE_HOME、PATH等变量指向新的目录

5升级RDBMS 11.2.0.3

以oracle用户启动GI/CRS的OUI安装界面

[oralce@s01 ~]$unset ORACLE_HOME ORACLE_BASE ORACLE_SID
[oracle@s01 ~]$cd /app/patch/database
[oracle@s01 ~]$ ./runInstaller

1) 可根据情况填写,并下一步

2)选择skip software update,并下一步

3)选择upgrade an existing database,并下一步

 

4 )确认信息后下一步

5)语言推荐选择English,并下一步

 

6)选择企业版,并下一步

 

7)填写、核实新的ORACLE_BASE,ORACLE_HOME,并下一步

 

8)核实OS权利组,并下一步

 

9)下一步

 

10)下一步

 

11)下一步

12)两节点上分别执行下列脚本

[root@s01 ~]# /app/oracle/product/11.2.0.3/db_1/root.sh

[root@s02 ~]# /app/oracle/product/11.2.0.3/db_1/root.sh

 

6升级DB

在最后一个节点执行以上脚本后,会以OUI形式DBUA

1)下一步

 

 

2)下一步

3)选择第一项后,并下一步

4)选择快速恢复区位置和大小,并一下步      

5 )RDBMS升级完毕

 

7验证

[root@s01 ~]#su – oracle

[oracle@s01 ~]#sqlplus / as sysdba

检查对象的有效性

Select * from dba_invalid_objects;

检查各组件版本号及其状态

SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRYSELECT

 

你可能感兴趣的:(oracle,rac)