遷移式升級的測試

jeanron100發表於2016-09-22
之前寫了一篇文章分析了目前存在的一個問題和改進思路。
當前的硬體環境是Solaris,Oracle 10gR2 單例項,資料量在800G左右。想遷移到另外一臺伺服器上。大體的需求如下:
    1.藉助這次維護的時機,能夠把資料庫升級至11g
    2.升級的過程需要儘可能保留一個較短的時間視窗,計劃在2個小時以內完成
    3.有較好的解決方案去演練整個過程,多次總結,提高遷移的效率,保證質量
    4.有完善的回退計劃,能夠支援回退場景下業務平滑過渡
    5.目前對於跨平臺沒有明確的要求,可以繼續使用Solaris,也可以考慮跨平臺,但是影響範圍要小。
大體的實現思路如下,分為三個主要步驟:
1.首先就是搭建Data Guard環境,在保證業務資料已經完全同步到備庫的情況下,在維護時間做Failover切換到備機環境,目前的主庫為10g的庫,然後在同一臺伺服器上建立一個11g的資料庫,資料庫的引數配置和10g的基本保持一致。


第二個步驟很關鍵,就是在10g的資料庫上匯出傳輸表空間的dump檔案,然後保持資料檔案不懂,停掉10g的資料庫,做傳輸表空間資料字典的匯入,這樣10g的資料檔案就匯入了11g的庫裡。

第三步是11g的資料庫全面接管成為真正的主庫的時候,因為傳輸表空間只同步表資料,對於儲存過程,函式,檢視,同義詞,DB link,許可權等都無法同步,所以可以在這個基礎上選擇性匯出全庫的指定schema的資訊,匯入目標庫中,因為是DDL的匯入,這個過程持續時間也會很快。

這個過程,如果準備充分,應該在半個小時內會順利完成,今天下午測試了一下大體的過程,發現效率還不錯。當然這個之外就是效能的考慮了,統計資訊,資料庫引數的優化等,這些都是需要提前考慮的問題,大體的處理步驟的時間會很短。

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

相關文章