20
Upgrade 11.2.0.1 GI/CRS to 11.2.0.2 in Linux by Maclean.liu [email protected] www.oracledatabase12g.com

Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

Embed Size (px)

Citation preview

Page 2: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

About Me

l Email:[email protected]

l Blog:www.oracledatabase12g.com

l Oracle Certified Database Administrator Master 10g and 11g

l Over 6 years experience with Oracle DBA technology

l Over 7 years experience with Linux technology

l Member Independent Oracle Users Group

l Member All China Users Group

l Presents for advanced Oracle topics: RAC, DataGuard, Performance Tuning and Oracle Internal.

Page 3: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

11.2.0.2 已经 release 1 年多了,相对于 11.2.0.1 要稳定很多。现在我们为客户部署新系统的时候一般都会推荐直接装 11.2.0.2(out of place),并打到<Oracle Recommended Patches — Oracle

Database>所推荐的 PSU。

对于现有的系统则推荐在停机窗口允许的前提下尽可能升级到 11.2.0.2 上来,当然客户也可以更耐心的等待 11.2.0.3 版本的 release。

针对 11.2.0.1 到 11.2.0.2 上的升级工程,其与 10g 中的升级略有区别。对于 misson-critical 的数据库必须进行有效的升级演练和备份操作,因为 Oracle 数据库软件的升级一直是一项复杂的工程,并且具有风险,不能不慎。

同时 RAC 数据库的升级又要较 single-instance 单实例的升级来的复杂,主要可以分成以下步骤:

1. 若使用 Exadata Database Machine 硬件,首先要检查是否需要升级 Exadata Storage Software

和 Infiniband Switch 的版本,<Database Machine and Exadata Storage Server 11g Release 2 (11.2) Supported Versions>

2. 完成 rolling upgrade Grid Infrastructure 的准备工作

3.滚动升级 Gird Infrastructure GI 软件

4.完成升级 RDBMS 数据库软件的准备工作

5.具体升级 RDBMS 数据库软件,包括升级数据字典、并编译失效对象等

这里我们重点介绍的是滚动升级 GI/CRS 集群软件的准备工作和具体升级步骤,因为 11.2.0.2

是 11gR2 的第一个 Patchset,且又是首个 out of place 的大补丁集,所以绝大多数人对新的升级模式并不熟悉。

Page 4: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

升级 GI 的准备工作

1.注意从 11.2.0.1 GI/CRS 滚动升级(rolling upgrade)到 11.2.0.2 时可能出现意外错误,具体见<Pre-requsite for 11.2.0.1 to 11.2.0.2 ASM Rolling Upgrade>,这里一并引用:

Applies to:Oracle Server - Enterprise Edition - Version: 11.2.0.1.0 to 11.2.0.2.0 - Release: 11.2 to 11.2Oracle Server - Enterprise Edition - Version: 11.2.0.1 to 11.2.0.2 [Release: 11.2 to 11.2]Information in this document applies to any platform.PurposeThis note is to clarify the patch requirement when doing 11.2.0.1 to 11.2.0.2 rolling upgrade.Scope and ApplicationIntended audience includes DBA, support engineers.Pre-requsite for 11.2.0.1 to 11.2.0.2 ASM Rolling Upgrade

There has been some confusion as what patches need to be applied for 11.2.0.1 ASM rollingupgrade to 11.2.0.2 to be successful. Documentation regarding this is not very clear(at the time of writing) and a documentation bug has been filed and documentation will be updated in the future.

There are two bugs related to 11.2.0.1 ASM rolling upgrade to 11.2.0.2:

Unpublished bug 9413827: 11201 TO 11202 ASM ROLLING UPGRADE - OLD CRS STACK FAILS TO STOP

Unpublished bug 9706490: LNX64-11202-UD 11201 -> 11202, DG OFFLINE AFTER RESTART CRS STACK DURING UPGRADE

Some of the symptoms include error message when running rootupgrade.sh:

ORA-15154: cluster rolling upgrade incomplete (from bug: 9413827)

or

Diskgroup status is shown offline after the upgrade, crsd.log may have:

2010-05-12 03:45:49.029: [ AGFW][1506556224] Agfw Proxy Server sending thelast reply to PE for message:RESOURCE_START[ora.MYDG1.dg rwsdcvm44 1] ID 4098:1526TextMessage[CRS-2674: Start of 'ora.MYDG1.dg' on 'rwsdcvm44' failed]TextMessage[ora.MYDG1.dg rwsdcvm44 1]ora.MYDG1.dg rwsdcvm44 1:

To overcome this issue, there are two actions you need to take:

a). apply proper patch.b). change crsconfig_lib.pm

Applying Patch:

Page 5: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

1). If $GI_HOME is on version 11.2.0.1.2 (i.e GI PSU2 is applied):

Action: You can apply Patch:9706490 for version 11.2.0.1.2.

Unpublished bug 9413827 is fixed in 11.2.0.1.2 GI PSU2. Patch:9706490 for version11.2.0.1.2 is built on top of 11.2.0.1.2 GI PSU2 (i.e. includes the 11.2.0.1.2 GI PSU2,hence includes the fix for 9413827). Applying Patch:9706490 includes both fixes.opatch will recognize 9706490 is superset of 11.2.0.1.2 GI PSU2 (Patch: 9655006)and rollback patch 9655006 before applying Patch: 9706490).

2). If $GI_HOME is on version 11.2.0.1.0 (i.e. no GI PSU applied).

Action: You can apply Patch:9706490 for version 11.2.0.1.2. This would make sure you haveapplied 11.2.0.1.2 GI PSU2 plus both 9706490 and 9413827 (which is included in GI PSU2).

For platforms that do not have 11.2.0.1.2 GI PSU, then you can apply patch 9413827 on 11.2.0.1.0.

3). If $GI_HOME is on version 11.2.0.1.1 (GI PSU1) (this is rare since GI PSU1 was onlyreleased for Linux platforms and was quite old).

Action: You can rollback GI PSU1 then apply Patch:9706490 on version 11.2.0.1.2if your platform has 11.2.0.1.2 GI PSU. If your platform does not have 11.2.0.1.2GI PSU,then apply patch 9413827.

Modify crsconfig_lib.pm

After patch is applied, modify $11.2.0.2_GI_HOME/crs/install/crsconfig_lib.pm:

Before the change:# grep for bugs 9655006 or 9413827@cmdout = grep(/(9655006|9413827)/, @output);

After the change:# grep for bugs 9655006 or 9413827 or 9706490@cmdout = grep(/(9655006|9413827|9706490)/, @output);

This would prevent rootupgrade.sh from failing when it validates the pre-requsite patches.

这里我们假设环境中的 11.2.0.1 GI 没有 apply 任何 PSU 补丁,为了解决这一”11201 TO 11202

ASM ROLLING UPGRADE – OLD CRS STACK FAILS TO STOP” bug,并成功滚动升级 GI,需要在正式升级 11.2.0.2 Patchset 之前 apply 9413827 bug 的对应 patch。

此外我们还推荐使用最新的 opatch 工具以避免出现 11.2.0.1 上 opatch 无法识别相关 patch 的问题。

Page 6: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

所以我们为了升级 GI 到 11.2.0.2,需要先从 MOS 下载 3 个对应平台(platform)的补丁包,它们是

1. 11.2.0.2.0 PATCH SET FOR ORACLE DATABASE SERVER (Patchset)(patchid:10098816),注意实际上 11.2.0.2 的这个 Patchset 由多达 7 个 zip 文件组成,如在 Linux x86-64 平台上:

其中升级我们只需要下载 1-3 的 zip 包即可,第一、二包是 RDBMS Database 软件的 out of

place Patchset,而第三个包为 Grid Infrastructure/CRS 软件的 out of place Patchset,实际在本篇文章(只升级 GI)中仅会用到 p10098816_112020_Linux-x86-64_3of7.zip 这个压缩包。2. Patch 9413827: 11201 TO 11202 ASM ROLLING UPGRADE – OLD CRS STACK FAILS TO STOP(patchid:9413827)

3. Patch 6880880: OPatch 11.2 (patchid:6880880),最新的 opatch 工具

2. 在所有节点上安装最新的 opatch 工具,该步骤不需要停止任何服务:切 到换 GI 有者用 ,并移 原有的拥 户 动 Opatch目 ,将新的录 Opatch安装到 CRS_HOME

su - grid

[grid@vrh1 ~]$ mv $CRS_HOME/OPatch $CRS_HOME/OPatch_old[grid@vrh1 ~]$ unzip /tmp/p6880880_112000_Linux-x86-64.zip -d $CRS_HOME

确认 opatch版本

[grid@vrh1 ~]$ $CRS_HOME/OPatch/opatchInvoking OPatch 11.2.0.1.6

Oracle Interim Patch Installer version 11.2.0.1.6Copyright (c) 2011, Oracle Corporation. All rights reserved.

3. 在所有节点上滚动安装 BUNDLE Patch for Base Bug 9413827 补丁包:

1.切 到换 GI 有者用 ,并确 已 安装的 丁拥 户 认 经 补

su - grid

Page 7: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

opatch lsinventory -detail -oh $CRS_HOMEInvoking OPatch 11.2.0.1.6

Oracle Interim Patch Installer version 11.2.0.1.6Copyright (c) 2011, Oracle Corporation. All rights reserved.

Oracle Home : /g01/11.2.0/gridCentral Inventory : /g01/oraInventory from : /etc/oraInst.locOPatch version : 11.2.0.1.6OUI version : 11.2.0.1.0Log file location : /g01/11.2.0/grid/cfgtoollogs/opatch/opatch2011-09-04_19-08-33PM.log

Lsinventory Output file location :/g01/11.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2011-09-04_19-08-33PM.txt

--------------------------------------------------------------------------------Installed Top-level Products (1):

Oracle Grid Infrastructure 11.2.0.1.0There are 1 products installed in this Oracle Home.........................###########################################################################

2. 解 之前下 的 压 载 p9413827_11201_$platform.zip的 丁包补

unzip p9413827_112010_Linux-x86-64.zip

###########################################################################

3. 切 到换 DB HOME 有者身份,在本地 点上停止拥 节 RDBMS DB HOME相关的 源资 :

su - oracle

法:语 % [RDBMS_HOME]/bin/srvctl stop home -o [RDBMS_HOME] -s [status file location] -n [node_name]

srvctl stop home -o $ORACLE_HOME -n vrh1 -s stop_db_res

cat stop_db_resdb-vprod

hostnamewww.oracledatabase12g.com

###########################################################################

4. 切 到换 root用 行户执 rootcrs.pl -unlock 命令

[root@vrh1 ~]# $CRS_HOME/crs/install/rootcrs.pl -unlock

2011-09-04 20:46:53: Parsing the host name2011-09-04 20:46:53: Checking for super user privileges2011-09-04 20:46:53: User has super user privilegesUsing configuration parameter file: /g01/11.2.0/grid/crs/install/crsconfig_paramsCRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'vrh1'

Page 8: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

CRS-2673: Attempting to stop 'ora.crsd' on 'vrh1'CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'vrh1'CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'vrh1'CRS-2673: Attempting to stop 'ora.SYSTEMDG.dg' on 'vrh1'CRS-2673: Attempting to stop 'ora.registry.acfs' on 'vrh1'CRS-2673: Attempting to stop 'ora.DATA.dg' on 'vrh1'CRS-2673: Attempting to stop 'ora.FRA.dg' on 'vrh1'CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.vrh1.vip' on 'vrh1'CRS-2677: Stop of 'ora.vrh1.vip' on 'vrh1' succeededCRS-2672: Attempting to start 'ora.vrh1.vip' on 'vrh2'CRS-2677: Stop of 'ora.registry.acfs' on 'vrh1' succeededCRS-2676: Start of 'ora.vrh1.vip' on 'vrh2' succeededCRS-2677: Stop of 'ora.SYSTEMDG.dg' on 'vrh1' succeededCRS-2677: Stop of 'ora.FRA.dg' on 'vrh1' succeededCRS-2677: Stop of 'ora.DATA.dg' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.asm' on 'vrh1'CRS-2677: Stop of 'ora.asm' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.ons' on 'vrh1'CRS-2673: Attempting to stop 'ora.eons' on 'vrh1'CRS-2677: Stop of 'ora.ons' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.net1.network' on 'vrh1'CRS-2677: Stop of 'ora.net1.network' on 'vrh1' succeededCRS-2677: Stop of 'ora.eons' on 'vrh1' succeededCRS-2792: Shutdown of Cluster Ready Services-managed resources on 'vrh1' has completedCRS-2677: Stop of 'ora.crsd' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.gpnpd' on 'vrh1'CRS-2673: Attempting to stop 'ora.cssdmonitor' on 'vrh1'CRS-2673: Attempting to stop 'ora.ctssd' on 'vrh1'CRS-2673: Attempting to stop 'ora.evmd' on 'vrh1'CRS-2673: Attempting to stop 'ora.asm' on 'vrh1'CRS-2673: Attempting to stop 'ora.mdnsd' on 'vrh1'CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'vrh1'CRS-2677: Stop of 'ora.cssdmonitor' on 'vrh1' succeededCRS-2677: Stop of 'ora.gpnpd' on 'vrh1' succeededCRS-2677: Stop of 'ora.evmd' on 'vrh1' succeededCRS-2677: Stop of 'ora.mdnsd' on 'vrh1' succeededCRS-2677: Stop of 'ora.ctssd' on 'vrh1' succeededCRS-2677: Stop of 'ora.drivers.acfs' on 'vrh1' succeededCRS-2677: Stop of 'ora.asm' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.cssd' on 'vrh1'CRS-2677: Stop of 'ora.cssd' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.diskmon' on 'vrh1'CRS-2673: Attempting to stop 'ora.gipcd' on 'vrh1'CRS-2677: Stop of 'ora.gipcd' on 'vrh1' succeededCRS-2677: Stop of 'ora.diskmon' on 'vrh1' succeededCRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'vrh1' has completedCRS-4133: Oracle High Availability Services has been stopped.Successfully unlock /g01/11.2.0/grid

###########################################################################

5.以 RDBMS HOME 有者用 行拥 户执 patch目 下的录 prepatch.sh脚本

su - oracle

% custom/server/9413827/custom/scripts/prepatch.sh -dbhome [RDBMS_HOME]

[oracle@vrh1 tmp]$ 9413827/custom/server/9413827/custom/scripts/prepatch.sh -dbhome $ORACLE_HOME

Page 9: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

9413827/custom/server/9413827/custom/scripts/prepatch.sh completed successfully.

###########################################################################

6.实际 apply patch

以 GI/CRS 有者用 行以下命令拥 户执

% opatch napply -local -oh [CRS_HOME] -id 9413827

su - grid

cd /tmp/9413827/

opatch napply -local -oh $CRS_HOME -id 9413827

Invoking OPatch 11.2.0.1.6

Oracle Interim Patch Installer version 11.2.0.1.6Copyright (c) 2011, Oracle Corporation. All rights reserved.

UTIL session

Oracle Home : /g01/11.2.0/gridCentral Inventory : /g01/oraInventory from : /etc/oraInst.locOPatch version : 11.2.0.1.6OUI version : 11.2.0.1.0Log file location : /g01/11.2.0/grid/cfgtoollogs/opatch/opatch2011-09-04_20-52-37PM.log

Verifying environment and performing prerequisite checks...OPatch continues with these patches: 9413827

Do you want to proceed? [y|n]yUser Responded with: YAll checks passed.Provide your email address to be informed of security issues, install andinitiate Oracle Configuration Manager. Easier for you if you use your MyOracle Support Email address/User Name.Visit http://www.oracle.com/support/policies.html for details.Email address/User Name:

You have not provided an email address for notification of security issues.Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]: y

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.(Oracle Home = '/g01/11.2.0/grid')

Is the local system ready for patching? [y|n]yUser Responded with: YBacking up files...Applying interim patch '9413827' to OH '/g01/11.2.0/grid'

Patching component oracle.crs, 11.2.0.1.0...Patches 9413827 successfully applied.Log file location: /g01/11.2.0/grid/cfgtoollogs/opatch/opatch2011-09-04_20-52-37PM.log

Page 10: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

OPatch succeeded.

以 DB/RDBMS 有者用 行以下命令拥 户执

su - oraclecd /tmp/9413827/

% opatch napply custom/server/ -local -oh [RDBMS_HOME] -id 9413827

opatch napply custom/server/ -local -oh $ORACLE_HOME -id 9413827

Verifying the update...Inventory check OK: Patch ID 9413827 is registered in Oracle Home inventory with proper meta-data.Files check OK: Files from Patch ID 9413827 are present in Oracle Home.Running make for target installRunning make for target install

The local system has been patched and can be restarted.

UtilSession: N-Apply done.

OPatch succeeded.

###########################################################################

7. 配置 HOME目录

以 root用 行以下命令户执

chmod +w $CRS_HOME/log/[nodename]/agent chmod +w $CRS_HOME/log/[nodename]/agent/crsd

以 DB/RDBMS 有者用 行以下命令拥 户执su - oracle

cd /tmp/9413827/

% custom/server/9413827/custom/scripts/postpatch.sh -dbhome [RDBMS_HOME]

[oracle@vrh1 9413827]$ custom/server/9413827/custom/scripts/postpatch.sh -dbhome $ORACLE_HOMEReading /s01/orabase/product/11.2.0/dbhome_1/install/params.ora..Reading /s01/orabase/product/11.2.0/dbhome_1/install/params.ora..Parsing file /s01/orabase/product/11.2.0/dbhome_1/bin/racgwrapParsing file /s01/orabase/product/11.2.0/dbhome_1/bin/srvctlParsing file /s01/orabase/product/11.2.0/dbhome_1/bin/srvconfigParsing file /s01/orabase/product/11.2.0/dbhome_1/bin/cluvfyVerifying file /s01/orabase/product/11.2.0/dbhome_1/bin/racgwrapVerifying file /s01/orabase/product/11.2.0/dbhome_1/bin/srvctlVerifying file /s01/orabase/product/11.2.0/dbhome_1/bin/srvconfigVerifying file /s01/orabase/product/11.2.0/dbhome_1/bin/cluvfyReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/racgwrapReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/srvctlReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/srvconfigReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/cluvfyReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/racgmainReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/racgeutReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/diskmon.binReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/lsnodes

Page 11: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

Reapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/osdbagrpReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/rawutlReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/srvm/admin/ractransReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/srvm/admin/getcrshomeReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/gnsdReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/bin/crsdiag.plReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libhasgen11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libclsra11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libdbcfg11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libocr11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libocrb11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libocrutl11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libuini11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/librdjni11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libgns11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libgnsjni11.soReapplying file permissions on /s01/orabase/product/11.2.0/dbhome_1/lib/libagfw11.so

###########################################################################

8.以 root用 重启户 CRS 程进

# $CRS_HOME/crs/install/rootcrs.pl -patch

2011-09-04 21:03:32: Parsing the host name2011-09-04 21:03:32: Checking for super user privileges2011-09-04 21:03:32: User has super user privilegesUsing configuration parameter file: /g01/11.2.0/grid/crs/install/crsconfig_paramsCRS-4123: Oracle High Availability Services has been started.

# $ORACLE_HOME/bin/srvctl start home -o $ORACLE_HOME -s $STATUS_FILE -n nodename

###########################################################################

9. 使用 opatch命令确 丁安装成功认补

opatch lsinventory -detail -oh $CRS_HOME opatch lsinventory -detail -oh $RDBMS_HOME

###########################################################################

10. 在其他 点上重复以上步 ,直到在所有 点上成功安装 丁节 骤 节 该补

###########################################################################

Page 12: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

注意 AIX平台上有 外的注意事 :额 项

# Special Instruction for AIX# ---------------------------## During the application of this patch should you see any errors with regards# to files being locked or opatch being unable to copy files then this## could be as result of a process which requires termination or an additional## file needing to be unloaded from the system cache.### To try and identify the likely cause please execute the following commands## and provide the output to your support representative, who will be able to## identify the corrective steps.### genld -l | grep [CRS_HOME]## genkld | grep [CRS_HOME] ( full or partial path will do )### Simple Case Resolution:## If genld returns data then a currently executing process has something open# in# the [CRS_HOME] directory, please terminate the process as# required/recommended.### If genkld return data then please remove the enteries from the# OS system cache by using the slibclean command as root;### slibclean############################################################################## Patch Deinstallation Instructions:# ----------------------------------## To roll back the patch, follow all of the above steps 1-5. In step 6,# invoke the following opatch commands to roll back the patch in all homes.## % opatch rollback -id 9413827 -local -oh [CRS_HOME]## % opatch rollback -id 9413827 -local -oh [RDBMS_HOME]## Afterwards, continue with steps 7-9 to complete the procedure.############################################################################## If you have any problems installing this PSE or are not sure# about inventory setup please call Oracle support.############################################################################

Page 13: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

正式升级 GI 到 11.2.0.2

1. 解压软件包,如上所述第三个 zip 包为 grid 软件unzip p10098816_112020_Linux-x86-64_3of7.zip

2. 以 GI 拥有者用户启动 GI/CRS 的 OUI 安装界面,并选择 Out of Place 的安装目录(grid)$ unset ORACLE_HOME ORACLE_BASE ORACLE_SID(grid)$ export DISPLAY=:0(grid)$ cd /u01/app/oracle/patchdepot/grid(grid)$ ./runInstallerStarting Oracle Universal Installer…

在”Select Installation Options”屏幕中选择 Upgrade Oracle Grid Infrastructure or Oracle Automatic Storage Management

Page 15: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

选择不同于现有 GI 软件的目录

Page 16: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

完成安装后会提示要以 root 用户执行 rootupgrade.sh

3. 注意在正式执行 rootupgrade.sh 之前数据库服务在所有节点上都是可用的,而在执行rootupgrade.sh 脚本期间,本地节点的 CRS 将短暂关闭,也就是说滚动升级期间至少有一个节点不用

因为 unpublished bug 10011084 and unpublished bug 10128494 的关系,在执行 rootupgrade.sh

之前需要修改 crsconfig_lib.pm参数文件,修改方式如下:cp $NEW_CRS_HOME/crs/install/crsconfig_lib.pm $NEW_CRS_HOME/crs/install/crsconfig_lib.pm.bakvi $NEW_CRS_HOME/crs/install/crsconfig_lib.pm

Page 17: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

从以上配置文件中修改如下行,并使用 diff命令确认

From @cmdout = grep(/$bugid/, @output);To @cmdout = grep(/(9655006|9413827)/, @output);

Frommy @exp_func = qw(check_CRSConfig validate_olrconfig validateOCRTomy @exp_func = qw(check_CRSConfig validate_olrconfig validateOCR read_file

$ diff crsconfig_lib.pm.orig crsconfig_lib.pm699c699< my @exp_func = qw(check_CRSConfig validate_olrconfig validateOCR --- >my @exp_func = qw(check_CRSConfig validate_olrconfig validateOCR read_file13277c13277< @cmdout = grep(/$bugid/, @output); --- > @cmdout = grep(/(9655006|9413827)/, @output);

cp /g01/11.2.0.2/grid/crs/install/crsconfig_lib.pm /g01/11.2.0.2/grid/crs/install/crsconfig_lib.pm.bak

并在所有 点上复制 配置文件节 该scp /g01/11.2.0.2/grid/crs/install/crsconfig_lib.pm vrh2:/g01/11.2.0.2/grid/crs/install/crsconfig_lib.pm

如果觉得麻烦,那么也可以直接从这里下载修改好的 crsconfig_lib.pm 。

由于 bug 10056593 和 bug 10241443 的缘故执行 rootupgrde.sh 的过程中还可能出现以下错误Due to bug 10056593, rootupgrade.sh will report this error and continue. This error is ignorable.

Failed to add (property/value):('OLD_OCR_ID/'-1') for checkpoint:ROOTCRS_OLDHOMEINFO.Error code is 256

Due to bug 10241443, rootupgrade.sh may report the following error when installing the cvuqdisk package.This error is ignorable.

ls: /usr/sbin/smartctl: No such file or directory /usr/sbin/smartctl not found.

以上错误可以被忽略,不会影响到升级。

4.正式执行 rootupgrade.sh 脚本,建议从负载较高的节点开始

[root@vrh1 grid]# /g01/11.2.0.2/grid/rootupgrade.shRunning Oracle 11g root script...

The following environment variables are set as:ORACLE_OWNER= gridORACLE_HOME= /g01/11.2.0.2/grid

Page 18: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

Enter the full pathname of the local bin directory: [/usr/local/bin]:The contents of "dbhome" have not changed. No need to overwrite.The contents of "oraenv" have not changed. No need to overwrite.The contents of "coraenv" have not changed. No need to overwrite.

Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Using configuration parameter file: /g01/11.2.0.2/grid/crs/install/crsconfig_paramsCreating trace directoryFailed to add (property/value):('OLD_OCR_ID/'-1') for checkpoint:ROOTCRS_OLDHOMEINFO.Error code is 256

ASM upgrade has started on first node.

CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'vrh1'CRS-2673: Attempting to stop 'ora.crsd' on 'vrh1'CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'vrh1'CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'vrh1'CRS-2673: Attempting to stop 'ora.SYSTEMDG.dg' on 'vrh1'CRS-2673: Attempting to stop 'ora.registry.acfs' on 'vrh1'CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.vrh1.vip' on 'vrh1'CRS-2677: Stop of 'ora.vrh1.vip' on 'vrh1' succeededCRS-2672: Attempting to start 'ora.vrh1.vip' on 'vrh2'CRS-2677: Stop of 'ora.registry.acfs' on 'vrh1' succeededCRS-2676: Start of 'ora.vrh1.vip' on 'vrh2' succeededCRS-2677: Stop of 'ora.SYSTEMDG.dg' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.asm' on 'vrh1'CRS-2677: Stop of 'ora.asm' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.ons' on 'vrh1'CRS-2673: Attempting to stop 'ora.eons' on 'vrh1'CRS-2677: Stop of 'ora.ons' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.net1.network' on 'vrh1'CRS-2677: Stop of 'ora.net1.network' on 'vrh1' succeededCRS-2677: Stop of 'ora.eons' on 'vrh1' succeededCRS-2792: Shutdown of Cluster Ready Services-managed resources on 'vrh1' has completedCRS-2677: Stop of 'ora.crsd' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.mdnsd' on 'vrh1'CRS-2673: Attempting to stop 'ora.cssdmonitor' on 'vrh1'CRS-2673: Attempting to stop 'ora.ctssd' on 'vrh1'CRS-2673: Attempting to stop 'ora.evmd' on 'vrh1'CRS-2673: Attempting to stop 'ora.asm' on 'vrh1'CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'vrh1'CRS-2677: Stop of 'ora.cssdmonitor' on 'vrh1' succeededCRS-2677: Stop of 'ora.mdnsd' on 'vrh1' succeededCRS-2677: Stop of 'ora.evmd' on 'vrh1' succeededCRS-2677: Stop of 'ora.ctssd' on 'vrh1' succeededCRS-2677: Stop of 'ora.drivers.acfs' on 'vrh1' succeededCRS-2677: Stop of 'ora.asm' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.cssd' on 'vrh1'CRS-2677: Stop of 'ora.cssd' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.gpnpd' on 'vrh1'CRS-2673: Attempting to stop 'ora.diskmon' on 'vrh1'CRS-2677: Stop of 'ora.diskmon' on 'vrh1' succeededCRS-2677: Stop of 'ora.gpnpd' on 'vrh1' succeededCRS-2673: Attempting to stop 'ora.gipcd' on 'vrh1'CRS-2677: Stop of 'ora.gipcd' on 'vrh1' succeededCRS-2793: Shutdown of Oracle High Availability Services-managed resources on

Page 19: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

'vrh1' has completedCRS-4133: Oracle High Availability Services has been stopped.Successfully deleted 1 keys from OCR.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.OLR initialization - successfulAdding daemon to inittabACFS-9200: SupportedACFS-9300: ADVM/ACFS distribution files found.ACFS-9312: Existing ADVM/ACFS installation detected.ACFS-9314: Removing previous ADVM/ACFS installation.ACFS-9315: Previous ADVM/ACFS components successfully removed.ACFS-9307: Installing requested ADVM/ACFS software.ACFS-9308: Loading installed ADVM/ACFS drivers.ACFS-9321: Creating udev for ADVM/ACFS.ACFS-9323: Creating module dependencies - this may take some time.ACFS-9327: Verifying ADVM/ACFS devices.ACFS-9309: ADVM/ACFS installation correctness verified.clscfg: EXISTING configuration version 5 detected.clscfg: version 5 is 11g Release 2.Successfully accumulated necessary OCR keys.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.Preparing packages for installation...cvuqdisk-1.0.9-1Configure Oracle Grid Infrastructure for a Cluster ... succeeded

最后执行 rootupgrade.sh 脚本的节点会出现以下 GI/CRS 成功升级的信息:

Successfully deleted 1 keys from OCR.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.OLR initialization - successfulAdding daemon to inittabACFS-9200: SupportedACFS-9300: ADVM/ACFS distribution files found.ACFS-9312: Existing ADVM/ACFS installation detected.ACFS-9314: Removing previous ADVM/ACFS installation.ACFS-9315: Previous ADVM/ACFS components successfully removed.ACFS-9307: Installing requested ADVM/ACFS software.ACFS-9308: Loading installed ADVM/ACFS drivers.ACFS-9321: Creating udev for ADVM/ACFS.ACFS-9323: Creating module dependencies - this may take some time.ACFS-9327: Verifying ADVM/ACFS devices.ACFS-9309: ADVM/ACFS installation correctness verified.clscfg: EXISTING configuration version 5 detected.clscfg: version 5 is 11g Release 2.Successfully accumulated necessary OCR keys.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.Started to upgrade the Oracle Clusterware. This operation may take a few minutes.Started to upgrade the CSS.Started to upgrade the CRS.The CRS was successfully upgraded.Oracle Clusterware operating version was successfully set to 11.2.0.2.0

ASM upgrade has finished on last node.

Page 20: Upgrade 11.2.0.1 gi crs to 11.2.0.2 in linux

Preparing packages for installation...cvuqdisk-1.0.9-1Configure Oracle Grid Infrastructure for a Cluster ... succeeded

5. 确认 GI/CRS 的版本

su - grid

$ crsctl query crs activeversionOracle Clusterware active version on the cluster is [11.2.0.2.0]

hostnamewww.oracledatabase12g.com

/g01/11.2.0.2/grid/OPatch/opatch lsinventory -oh /g01/11.2.0.2/gridInvoking OPatch 11.2.0.1.1

Oracle Interim Patch Installer version 11.2.0.1.1Copyright (c) 2009, Oracle Corporation. All rights reserved.

Oracle Home : /g01/11.2.0.2/gridCentral Inventory : /g01/oraInventory from : /etc/oraInst.locOPatch version : 11.2.0.1.1OUI version : 11.2.0.2.0OUI location : /g01/11.2.0.2/grid/ouiLog file location : /g01/11.2.0.2/grid/cfgtoollogs/opatch/opatch2011-09-05_02-17-19AM.log

Patch history file: /g01/11.2.0.2/grid/cfgtoollogs/opatch/opatch_history.txt

Lsinventory Output file location : /g01/11.2.0.2/grid/cfgtoollogs/opatch/lsinv/lsinventory2011-09-05_02-17-19AM.txt

--------------------------------------------------------------------------------Installed Top-level Products (1):

Oracle Grid Infrastructure 11.2.0.2.0There are 1 products installed in this Oracle Home.

6.更新 bash_profile , 将 CRS_HOME、ORACLE_HOME、PATH 等变量指向新的 GI 目录