The purpose of this document is to provide information about the ASM rolling upgrade feature and Step by Step to install a patchset or patch in ASM Home without downtime.
Solution
The following conditions should be met for to perform ASM rolling upgrade
(*) An ASM rolling upgrade applies only to clustered ASM instances.
(*) Separate ASM Home. (ASM and DB Home should not be same)
(*) You can perform rolling upgrades only in environments with 11g release 1 (11.1) and later release
ie The following combination is possible
11g CRS ,11g ASM with 11g Database
or
11g CRS.11g ASM with 10g Database
(*) ASM SID format should be +ASM[1-9]
/etc/oratab
+ASM1:/oracle/asm/product/11.1.0/asm_1:N
db11g:/oracle/asm/product/11.1.0/db_1:N
ASM Rolling Upgrade (Step by Step)
1) To perform a rolling upgrade ,you should have separate ASM Home
To enable the ASM instance for rolling migration mode,you can use this command to start the rolling migration to <database version>.
ALTER SYSTEM START ROLLING MIGRATION TO '11.1.0.7.0';
You can run this command from any one of the ASM instance in the Cluster.This command does not actually perform the rolling migration but communicates with all the ASM instances in the cluster.This command informs the other ASM instances of RAC that it is preparing to perform an upgrade.Once the rolling migration is enabled ,you can query each ASM instance to view current state of the ASM;
SQL> select sys_context ('sys_cluster_properties','cluster_state') from dual;
SYS_CONTEXT('SYS_CLUSTER_PROPERTIES','CLUSTER_STATE')
--------------------------------------------------------------------------------
In Rolling Upgrade
The above output shows ASM instance in Rolling Upgrade status.Once you confirm the state of the ASM instance in rolling Upgrade ,you can now safely perform the below steps to Upgrade ASM home in Rolling method.
2) Shutdown the DB Instance,ASM instance and listener
srvctl stop instance -d <db name> -i <instance name>
srvctl stop asm -n <node name>
srvctl stop listener -n <node name> -l <listener name>
3) Apply the software upgrade to the ASM Home.
Select the current node from the Node Selection Page ("Specify Hardware Cluster Installation Mode")
Node Selection Page does not allow to deselect the remote node(s) for the following reason
ASM and Database Homes are same
ASM SID is not in the format of +ASM[1-9]
4) Apply the Patch 7436280 locally (*This step is required only to upgrade from 11.1.0.6 to 11.1.0.7 patchset*)
cd 7436280
opatch apply -local
5) startup the ASM instance ,DB Instance,listener
srvctl start asm -n <node name>
srvctl start instance -d <db name> -i <instance name>
srvctl start listener -n <node name> -l <listener name>
6) Repeat steps 2 to 5 on remaining ASM Instances in the cluster.
7) After successful upgrade of ASM on all node,need to end the ASM Rolling migration operation and to signal the ASM instance new version state.
ALTER SYSTEM STOP ROLLING MIGRATION;
* Validates that all of the members of the cluster are at the same software version. If there are one or more ASM instances that have different versions, then Oracle displays an error and the cluster continues to be in rolling upgrade mode.
* Rebalance operations that were pending are restarted if the setting for the ASM_POWER_LIMIT parameter enables this.
* The ASM instances begin supporting the full clustered ASM functionality.
ASM Rolling Downgrade
You need to have an ASM Home software and central inventory backup(before apply the patchset) to downgrade.
Perform the following steps for removing the 11.1.0.7 patch set
1) To enable the ASM instance for rolling downgrade mode,you can use this command to start the rolling mirgration to <database version>.
alter system start rolling migration to '11.1.0.7.0'
This command does not actually perform the rolling downgrade but communicates with all the ASM instances in the cluster.This command informs the other ASM instances of RAC that it is preparing to perform an downgrade.Once the rolling downgrade is enabled ,you can query each ASM instance to view current state of the ASM;
SQL> select sys_context ('sys_cluster_properties','cluster_state') from dual;
SYS_CONTEXT('SYS_CLUSTER_PROPERTIES','CLUSTER_STATE')
--------------------------------------------------------------------------------
In Rolling Downgrade
The above output shows ASM instance in Rolling Downgrade status.Once you confirm the state of the ASM instance in rolling downgrade ,you can now safely perform the below steps to downgrade ASM home in Rolling method.
2) Shutdown the Instance ,ASM instance and listener.
srvctl stop instance -d <db name> -i <instance name>
srvctl stop asm -n <node name>
srvctl stop listener -n <node name> -l <listener name>
3) Restore the Oracle 11g installation and central inventory that you backed up before applying the patch set. (See /etc/oraInst.loc.)
4) startup the ASM instance and check v$version information shows previous version ie 11.1.0.6
srvctl start asm -n <node name>
srvctl start instance -d <db name> -i <instance name>
srvctl start listener -n <node name> -l <listener name>
5) Repeat steps 2 to 4 on remaining ASM Instances in the cluster.
6) After successful downgrade of ASM on all node,need to end the ASM Rolling downgrade operation and to signal the ASM instance new version state.
ALTER SYSTEM STOP ROLLING MIGRATION;
During the ASM upgrade/downgrade mode,only the following operations are permitted.
* Mount diskgroup
* Unmount diskgroup
* Database file open, close, resize, and delete
* Limited access to fixed views and fixed packages ie Only local views are available; all global views are not allowed during rolling upgrade/downgrade mode
not allowed operations
* Rebalance
* Add/drop/online/offline disk
Please check the known issues with ASM Rolling upgrade.
Note.742647.1 ASM ROLLING UPGRADE FAILS WITH SIGSEGV IN KSXPCINI()Note.746816.1 Ora-15160: Rolling Migration Internal Fatal Error During Upgrade of ASM To 11.1.0.7.0Bug 7673203 CANNOT PERFORM ASM ROLLING UPGRADE IF SID NOT IN FORMAT +ASM[1-9]
From Oracle
-------------------------------------------------------------------------------------------------------
DBA1 群:62697716(满); DBA2 群:62697977(满) DBA3 群:62697850(满)
DBA 超级群:63306533(满); DBA4 群: 83829929 DBA5群: 142216823
聊天 群:40132017 聊天2群:69087192
--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请