Oracle升級該怎麼選版本,目前看已經沒有異議了

楊建榮的學習筆記 發佈 2020-04-28T19:45:53+00:00

Oracle19c - Complete Checklist for Upgrading to Oracle Database 19c using DBUA 如果使用DBUA來升級,直接升級可以參考如下的表格:Source DatabaseTarget Database11.2

這是學習筆記的第 2222篇文章

讀完需要

9

分鐘

速讀僅需7分鐘

如果是在幾年前討論Oracle升級的問題,其實會存在很多的異議,如今再來看待這個問題,我覺得情況有了變化,我來嘗試重新解讀一下這個問題。

Oracle資料庫版本背景

首先來說下Oracle的版本背景。

根據Oracle的產品線規劃,18c開始的新版本將是年度版,版本將是發布年度的最後兩位數字。原本計劃作為12.2.0.2的版本就是現在發布中的18c,12.2.0.3將以19c的版本形式發布。預期Oracle資料庫19將是12.2的最後一個版本(「長期支持」版本)。

所以經歷了8,8i,9i,10g,11g,12c之後,接下來的就是18c,19c,現在是2020年了,最新版本按照規劃還是19c,可沒有20c,要不會被笑話。

從版本V2發展至今,我細數了如下的一些版本情況。

版本發布年
版本
1979 2.3
1983 3.1.3
1984 4.1.4.0
1985 5.0.22
1988 6.0.17
1992 7.0.12
1997 8.0.3
1998 8.1.5.0
2001 9.0.1.0
2002 9.2.0.1
2003 10.1.0.2
2005 10.2.0.1
2007 11.1.0.6
2009 11.2.0.1
2013 12.1.0.1
2016 12.2.0.1
2018 18.1.0
2019 19c

如果要從整體看出版本的差異情況,可以看下面的柱狀圖。

這個圖沒有體現版本之間的時間差,僅僅從版本的變化情況來看。

僅僅從這個圖上就能夠看出一種鮮明的差異,那就是類似SQL Server這樣的年度版本,能夠對於版本的差異沒有那麼敏感。

Oracle資料庫版本規劃

我們能夠看到有很多的版本,如果要選擇升級資料庫,到底是選擇12c還是18c,還是19c呢,我們來看一個版本路線圖,可以參考在MOS 官方文章:Release Schedule of Current Database Releases (文檔 ID 742060.1)

這個圖是理解整個內容的核心,可以看到19c的定位是長期版本,而且擴展服務的截止時間是目前最長的。

相比而言18c的生命周期就會短許多,有點像曇花一些的過渡版本,從性價比來看似乎還不如早一些的12.2.0.1這個版本,如何和當時的時間背景聯繫起來,應該是一批早期用戶從11g升級,在沒有12.2版本發布時,選擇了升級到12.1.0.2,所以看到的12.2.0.1和18c的發布時間也很接近。

值得一提的是,在2020年4月15日,Oracle修改了12.2.0.1的擴展服務截止時間,從2020年12月1日擴展到了2020年3月31日。(Added Limited Error Correction for 12.2.0.1 from Dec 1, 2020 until March 31, 2022)

Oracle資料庫服務支持

對於擴展服務,我們可能有些陌生,大體分來,支持的強度分為三個級別:Premier Support(最高優先級的支持),Extended Support(中等優先級的支持),Sustaining Support(最低優先級的支持)。

如果和上面的圖聯繫起來,其實就是對於擴展服務打了一些補丁,可以舉個例子來說明,比如主流版本是11g,那麼會有一個相對穩定產品生命周期,比如是5年,那麼在這5年內是官方大力支持的階段,會修復一系列的版本bug,推出一些改進和新功能,臨近產品生命周期,就需要考慮升級,如果不升級服務支持力度上就會打一定的折扣,比如說擴展服務周期是2年,那麼2年後正常來說是無法下載一些補丁更新的,如果過了擴展服務周期還沒有升級,如果是大客戶,花錢繼續支持也可以,如果又跨越了多個時段,但是原來的版本支持還是需要,就需要做定製化的支持了。

對於資料庫版本來說,10g是個坎,升級到11g是個坎,升級到12c的選擇空間從上圖來看就比較有限了,目前可選的就是12.2.0.1,18c和19c了。我們來看下這3個版本,我來劃一下重點。

版本

補丁截止時間

備註和說明

19c

Long-Term Release

Mar 31, 2023 with no ES/ULA

Mar 31, 2026 with ES/ULA

  • Premier Support (PS) ends Mar 31, 2023, Extended Support (ES) fees will be required beginning Apr 01, 2023 through Mar 31, 2026

  • Error Correction / Patching is available through Mar 31, 2026 with paid ES. Without paid ES, patching is only available until Mar 31, 2023.

18c

Annual Release

Jun 08, 2021

  • Error Correction / Patching is available until Jun 08, 2021

  • 18c is not eligible for Extended Support (ES)

12.2.0.1

Annual Release

* March 31, 2022 with Limited Error Correction from Dec 1, 2020

  • Error Correction / Patching is available until Nov 30, 2020

  • Limited Error Correction (Sev 1 and Security Updates only) is available from Dec 1, 2020 - March 31, 2022 See Note 161818.1 for details.

  • 12.2.0.1 is not eligible for Extended Support (ES)

  • Gen 1 ExaCC, OCC DBCS, and ODA will have 3 additional months of support life. The end of life dates for databases on these platforms is: 28-Feb-2021

從上面的圖來看,為了求穩,我們不是選擇最接近的低版本,而是要首選儘可能穩定的大版本,避免後續的大版本改動。如果說得更清楚些,那就是選擇19c.

版本的情況基本說完了,我們來看下升級的正確姿勢,因為環境的差異,肯定初始版本都不大相同。

Oracle資料庫版本升級矩陣

對於11g的資料庫來說,如果是11g的最新版本,則可以直接升級到19c,這是一個極大的利好消息,避免了過渡升級帶來的潛在隱患和服務不可用過長。

對於12c以上的版本(12.1.0.2以上),則可以直接升級到19c。

升級的過程可以考慮純手工方式升級數據字典,也可以考慮使用DBUA來做。

Oracle 19c - Complete Checklist for Upgrading to Oracle Database 19c (19.x) using DBUA (Doc ID 2545064.1)

如果使用DBUA來升級,直接升級可以參考如下的表格:

Source Database

Target Database

11.2.0.4 and Higher

19.x

12.1.0.2

19.x

12.2.0.1

19.x

18.1

19.x

對於有些版本來說,則不可以直接升級,就需要過渡,比如你的版本是11.2.0.2,則需要先升級到11.2.0.4之後才可以升級到19c.



Source Database

Intermediate upgrade path

Target database

11.2.0.1/11.2.0.2/11.2.0.3

-->

11.2.0.4

-->

19.x

11.1.0.6/11.1.0.7

-->

11.2.0.4

-->

19.x

10.2.0.2, 10.2.0.3, 10.2.0.4, 10.2.0.5

-->

11.2.0.4/12.1.0.2

-->

19.x

10.1.0.5

-->

11.2.0.4/12.1.0.2

-->

19.x

9.2.0.8 or earlier

-->

11.2.0.4

-->

19.x

12.1.0.1

-->

12.1.0.2/12.2.0.1

-->

19.x

5 嘗鮮新版本

此外,如果我們想先嘗嘗鮮,做下測試,

Oracle提供了另外兩種方式來體驗新版本,一種是LiveSQL,連結是https://livesql.oracle.com,同時也可以通過dosc.oracle.com進行了解。

  • 去IOE or Not?

  • 拉里·佩奇(Larry Page)的偉大歸來

  • 《吊打面試官》系列-Redis基礎

  • 唯一ID生成算法剖析,看看這篇就夠了

  • 關於大數據運維能力的一些思考

  • DBA菜鳥的進化簡史:不忘初心,記工作中踩過的三個坑

  • 美女主持直播,被突發意外打斷!灣區網友卻高喊: 我懂!超甜

關鍵字: