physru指令碼實現11g DataGuard簡易滾動升級

hooca發表於2016-06-24
OS:Oracle Linux 6u6 x64
DB:Oracle 11.2.0.3.0 -> 11.2.0.4.0

參考MOS文件:
ID 949322.1
內有PDF文件(MAA Best Practice Paper: Database Rolling Upgrades Made Easy)記錄了具體步驟。
附件是指令碼檔案physru.sh,在Linux平臺上需要dos2unix。

步驟不列舉了,這裡主要談一些要點:

開始前,需要確認主備庫能夠正常Switchover,參考:Data Guard切換測試 

備庫是先升級的,可以在安裝11.2.0.4時選擇“升級existing database”,在提示監聽器時可選擇Typical配置,然後DBUA。
輪到主庫升級時,與備庫有所不同。主庫的新ORACLE_HOME選擇“僅安裝RDBMS”,然後準備好監聽器、本地服務名、spifle、密碼檔案、/etc/oratab,用新的ORACLE_HOME啟動資料庫到mount模式。接下來執行physru指令碼會應用新主庫(原備庫)上的redo log,達成同步後也就和新主庫一樣完成了升級。升級的結果可在DBA_REGISTRY_HISTORY檢視中確認。

以下是大致的過程描述:
0.準備
flashback
靜態監聽
Bug修復(本實驗中只打了Bug 14174798一個補丁)

1.第一次執行physru
    *兩端建立GRP
    *轉換物理備用到邏輯備用

2.DBA升級新的邏輯備用

3.第二次執行physru
    *switchover
    *閃回原主庫到GRP

4.DBA以新ORACLE_HOME啟動主庫到mount階段

5.第三次執行physru
    *原主庫應用redo log
    *切換回初始狀態
    *移除GRP



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22621861/viewspace-2120938/,如需轉載,請註明出處,否則將追究法律責任。

相關文章