Rolling Upgrade 是指在安装的过程中不停止服务。先对一个节点安装补丁或版本升级,由其他节点提供服务。然后在升级其他节点。
rac中仅支持补丁的Rolling Upgrade,不支持补丁集及版本升级。
如何确定patch是否为 Rolling Path呢,在不同的版本,不同的平台,命令是不一样的。
- 9i or 10gR1: opatch query -is_rolling
- 10gR2: opatch query -all [unzipped patch location] | grep rolling
- 10gR2 on Windows: opatch query -all [unzipped patch location] | findstr rolling
- Later 10gR2 or 11g: opatch query -is_rolling_patch [unzipped patch location]
The command may not work if unzipped patch location has more than one patch sub-directory, example output while checking CPU patches:
参考文档:Rolling Patch - OPatch Support for RAC [ID 244241.1]
[oracle@rac-02 OPatch]$ pwd
/home/oracle/product/db/OPatch
[oracle@rac02 OPatch]$ opatch query -all /home/oracle/patch/p8436582_10204_Linux-x86-64.zip | grep rolling
Patch is a rolling patch: true
The term rolling upgrade refers to upgrading different databases or different
instances of the same database (in a Real Application Clusters environment)
one at a time, without stopping the database
Using the opatch command-line utility, you can perform rolling patch upgrades with
Real Application Clusters (RAC), incurring little or no database downtime.
Note that the opatch utility can only be used to apply individual patches,
not patch set releases.
The advantage of a RAC rolling upgrade is that it enables at least some instances of
the RAC installation to be available during the scheduled outage required for patch
upgrades. Only the RAC instance that is currently being patched needs to be brought
down; the other instances can continue to remain available. This means that the effect
on the application downtime required for such scheduled outages is further minimized.
The Oracle opatch utility enables you to apply the patch successively to the different
instances of the RAC installation.