Oracle RAC Rolling Patch 說明


 

關於Oracle 的Patch安裝,以前有整理過幾篇文檔,以下:html

 

Oracle 補丁體系 及opatch 工具 介紹sql

http://blog.csdn.net/tianlesoftware/article/details/5809526數據庫

 

Oracle 11g 新特性 --Online Patching (Hot Patching 熱補丁)說明oracle

http://blog.csdn.net/tianlesoftware/article/details/8214412app

 

Oracle 更新 OPatch 工具版本 的方法說明工具

http://blog.csdn.net/tianlesoftware/article/details/6857059spa

 

 

這裏看一下RAC的Patch。 這裏是爭對DB Patch 來講明,若是是RAC的GI升級,或者是PSR,仍是須要停機的。由於GI的升級須要停掉整個CRS。 但對數據庫獨立patch則能夠採起滾動方式來安裝。.net

 

一. RAC Patch的幾種方法

 

RAC 環境下有三種不一樣的patch方法:code

 

1.1 對全部節點同時Patch(All-Node Patch)

對於這種模式,OPatch 先在本地節點apply patch,而後在其餘節點apply,最後更新inventory。 在這個patch的過程當中,全部實例都必須shutdown。xml

 

該模式的操做步驟以下:

(1)關閉全部節點上的實例。

(2)在全部節點上applypatch。

(3)啓動全部實例。

 

1.2 使用最小宕機時間來打Patch

 

在這種模式下,OPatch 先對本地節點打opatch。而後讓用戶選擇其餘的節點來進行patch, 其餘節點也patch完成,最後在更新inventory。

 

    在這種模式下,downtime的時間就是第二個節點關閉到第一個節點起來之間的時間。

 

最小宕機的操做步驟以下:

(1)關閉節點1的實例

(2)在節點1上apply Patch

(3)關閉節點2上的實例。

(4)在節點2上應用Patch。

(5)關閉節點3上的實例。

(6)在這個時候,節點1和節點2的實例能夠啓動。

(7)在節點3上應用patch。

(8)啓動節點3上的實例。

 

以上整個過程,downtime就是節點3 shutdown到節點1,2啓動這段時間。

 

1.3 Rolling Patch(不須要down time)

 

    在這種方法裏,沒有downtime 時間。 每一個節點均可以patch,而且其餘節點也能夠正常運行,這種狀況下對系統就沒有影響。

 

Rolling Patch 也不老是不須要downtime時間,由於有些patch支持 rolling patch,有些不支持,對於不支持rolling patch的,只能按照老方法來安裝。

 

Rolling patch的步驟以下:

(1)關閉節點1的實例

(2)在節點1上應用Patch。

(3)在節點1上啓動實例。

(4)關閉節點2上的實例。

(5)在節點2上應用Patch。

(6)在節點2上啓動實例。

(7)關閉節點3上的實例。

(8)在節點3上應用Patch。

(9)啓動節點3上的實例。

 

 

1.4 如何判斷使用哪一種方法

 

只有知足特定條件的Patch 才能夠進行rolling patch。該類patch被稱爲:rolling updateble patch 或者 rolling patch。

 

若是用戶指定了最小宕機時間,選擇最小宕機時間,若是沒有指定,就使用rolling patch,最後在考慮同時對全部節點進行patch。

 

 

 

 

二. 如何判斷Patch 是不是Rolling Patch?

 

    當oracle 發佈一個patch的時候,會對patch 進行標記:rolling 或者是not rolling。大部分的patch 都是rolling的。

 

Rolling Patch 有以下特性:

(1)Patch 不影響數據庫的內容

(2)Patch 和RAC 內部通訊結構無關

(3)Patch 改變程序的邏輯,不修改kernel modules的common header definitions。包括客戶端的patch,其隻影響一些工具,如export,import,sql*plus和sql*loader等。

 

只有獨立的patches纔是rollable的。對於patch sets不能進行rolling patch。

 

將多個rolling patch 合併起來的merge patch 和普通的patch都不是 rolling patch。

 

從Oracle 9.2.0.4 開始,根據定義的規則,全部的的patches都會被標記爲rolling 或者 not rolling patch。 在這以前的patch都會標記爲not rolling。

 

 

2.1檢查patch是不是 rolling patch

 

執行以下命令:

    - 9i or 10gR1: opatchquery -is_rolling

   - 10gR2: opatch query -all  [unzipped patchlocation] | grep rolling

  - 10gR2 on Windows: opatch query -all [unzipped patchlocation] | findstr rolling

 - Later 10gR2 or 11g: opatchquery -is_rolling_patch [unzipped patch location]

 

 

若是咱們解壓縮的patch 路徑包含多個子patch目錄,那麼opatch命令就不能正常工做。

 

--不能用root用戶執行判斷命令:

[root@rac1 16056266]#/u01/app/grid/11.2.0/OPatch/opatch query -is_rolling_patch/u01/software/16056266

The user is root. OPatch cannot continue ifthe user is root.

 

 

OPatch failed with error code 255

 

[root@rac1 16056266]# su - grid

[grid@rac1 ~]$/u01/app/grid/11.2.0/OPatch/opatch query -is_rolling_patch/u01/software/16056266

Oracle Interim Patch Installer version11.2.0.3.4

Copyright (c) 2012, OracleCorporation.  All rights reserved.

 

 

Oracle Home       : /u01/app/grid/11.2.0

Central Inventory : /u01/app/oraInventory

  from           :/u01/app/grid/11.2.0/oraInst.loc

OPatch version    : 11.2.0.3.4

OUI version       : 11.2.0.3.0

Log file location :/u01/app/grid/11.2.0/cfgtoollogs/opatch/opatch2013-06-09_04-14-34AM_1.log

 

Failed to load the patch object.  Possible causes are:

  Thespecified path is not an interim Patch shiphome

 Meta-data files are missing from the patch area

 Patch location = /u01/software/16056266

 Details = Input metadata files are missing.

 

Patch Location"/u01/software/16056266" doesn't point to a valid patch area.

--由於咱們指定的/u01/software/16056266的路徑下面還包含其餘的子patch,因此報錯。

 

OPatch failed with error code 75

 

[grid@rac1 ~]$ cd /u01/software/16056266

[grid@rac1 16056266]$ ls

13343438 13696216  13923374  14275605 14727310  16056266  patchmd.xml README.html  README.txt

 

--對單個patch進行查看:

[grid@rac1 16056266]$  /u01/app/grid/11.2.0/OPatch/opatch query-is_rolling_patch /u01/software/16056266/13343438/

Oracle Interim Patch Installer version11.2.0.3.4

Copyright (c) 2012, OracleCorporation.  All rights reserved.

 

 

Oracle Home       : /u01/app/grid/11.2.0

Central Inventory : /u01/app/oraInventory

  from           :/u01/app/grid/11.2.0/oraInst.loc

OPatch version    : 11.2.0.3.4

OUI version       : 11.2.0.3.0

Log file location :/u01/app/grid/11.2.0/cfgtoollogs/opatch/opatch2013-06-09_04-15-17AM_1.log

 

--------------------------------------------------------------------------------

 Patch is a rolling patch: true

 

OPatch succeeded.

 

[grid@rac116056266]$ /u01/app/grid/11.2.0/OPatch/opatch query -is_rolling_patch/u01/software/16056266/13696216

Oracle Interim Patch Installer version11.2.0.3.4

Copyright (c) 2012, OracleCorporation.  All rights reserved.

 

Oracle Home       : /u01/app/grid/11.2.0

Central Inventory : /u01/app/oraInventory

  from           :/u01/app/grid/11.2.0/oraInst.loc

OPatch version    : 11.2.0.3.4

OUI version       : 11.2.0.3.0

Log file location :/u01/app/grid/11.2.0/cfgtoollogs/opatch/opatch2013-06-09_04-15-32AM_1.log

 

--------------------------------------------------------------------------------

 Patch is a rolling patch: true

 

OPatch succeeded.

 

 

2.2 Patch的一些限制

 

2.2.1 在Shared File System上進行Patch

Currently Opatch會把Shared File System看成單實例來進行Patch。OPatch 會把patch file 放在ORACLE_HOME目錄,由於是共享的,因此其餘節點也能夠訪問。

所以對於Shared FileSystem的環境,就不能使用OPatch 的高級功能:rollingpatch,在打Patch的時候,全部節點都必須shutdown。

 

 

2.2.2 每次Patch一個節點

能夠在每一個節點獨立的進行patch,即在opatch的時候只用: -local 關鍵字,這樣就只會在本地節點進行patch。

 

 

 

 

 

 

 

 

--------------------------------------------------------------------------------------------

版權全部,文章容許轉載,但必須以連接方式註明源地址,不然追究法律責任!

QQ:      251097186

Skype:    tianlesoftware

Email:    tianlesoftware@gmail.com

Blog:     http://blog.csdn.net/tianlesoftware

Weibo:    http://weibo.com/tianlesoftware

Twitter:  http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware

相關文章
相關標籤/搜索