升級場景:Oracle 8.0.5.0.0 到 Oracle 12c?
我們這裡有一個非常古老的 Oracle 8.0.5.0.0 數據庫 - 不幸的是 - 仍然作為日常生產系統大量使用。
我想開始計劃如何將此數據庫升級到最近的 Oracle 12c。
不幸的是,兩個 DB 版本似乎都不能再互相交談了 (*)。因此,據我目前所知,唯一的解決方案是將每日備份從 8.0.5.0.0 導入 12c,從技術角度來看,這可行,但不可行,因為 8.0.5.0.0 用於日常業務. 另外:8.0.5.0.0 伺服器上的數據如此之大,以至於導入 12c 伺服器(在最近的戴爾伺服器上)中的備份大約需要 6-8 小時。
所以,問題是:
從 8.0.5.0.0 到 12c 的升級策略可能是什麼好方法?
感謝您的任何意見。
() 當然,舊的 Oracle 8.0.5.0.0 客戶端可以與 Oracle 8.0.5.0.0 伺服器通信,而最近的 12c 客戶端可以與 12c 伺服器通信。但似乎沒有可以同時與 8.0.5.0.0和*12c 通信的客戶端解決方案。
這個問題有多種解決方案,但驅動問題是成本、允許的停機時間和復雜性。
Golden Gate可以購買一年的許可證,並且可以零停機時間從 Oracle 8i 升級到 12。您仍然需要從 8.05 升級到 8i。
通過使用VmWare P2V將機器轉換為虛擬機,無需任何停機時間,您的生活可以得到簡化。此方法允許您:
- 將您的生產數據庫安裝在更好的硬體上,這應該可以提高大多數操作的速度
- 允許您製作機器的副本,將其放在不同的子網上並開始測試各種策略
我已將 Oracle 8i 數據庫中的模式直接導入 Oracle 11.2,沒有任何問題。根據字元集、許可功能和程序員在 PL/SQL 程式碼中採用的任何非正統策略,您的工作量可能會有所不同。
一種可以輕鬆測試的方法:
- 購買帶有一些重要硬體(如 32GB RAM)的新伺服器,安裝 VMWare Esxi
- 將舊機器轉換為虛擬機
- 創建 Oracle 8.05 的開發副本
- 使用 Oracle 12 安裝另一個虛擬機
- 使用 Oracle 10XE 或 11XE 安裝另一個虛擬機
- 在沒有任何變化的情況下拍攝所有機器的快照
- 導出8.05開發,導入Oracle 10XE或11XE,測試驗證
- 數據泵到12個數據庫
- 驗證 12 上的數據並離線 8.05 和 oracle 10XE 或 11XE
這種方法需要停機。一個週末應該綽綽有餘,只需花費您一台新伺服器、Oracle 12 許可證和一些 VMWare 軟體許可證。請記住,測試和驗證可能需要比導入數據更多的時間。