Oracle 12.2, 18c, 19c – was denn nun?

6. November 2018 Aus Von Markus Flechtner

Kunden suchen New-Features Kurse zu Oracle-Datenbank-Version 18c; Datenbankadministratoren, die früher ohne mit der Wimper zu zucken ihre Produktionssysteme von Oracle 11.2.0.2 auf 11.2.0.4 gebracht haben, zögern: nehme ich besser Oracle 12.1, 12.2, 18c oder warte ich auf Oracle 19c? Der neue Release-Zyklus von Oracle hat durchaus für Verwirrung gesorgt. Bringen wir doch mal etwas Licht in dieses Versions(nummern)dunkel.

Dafür müssen wir aber ein paar Jahre zurückgehen: bis einschließlich Oracle 11g Release (11.1) gab es so etwas wie Base-Releases und Patch-Sets. Man musste immer zuerst das Base-Release installieren (z.B. Oracle 10.2.0.1) und dann in das gleiche Oracle-Home-Verzeichnis das Patchset, z.B. Oracle 10.2.0.5. Das Gesamtergebnis war eine 10.2.0.5-Installation.

Mit Oracle 11g Release (11.2) hat Oracle dieses Vorgehen geändert: Jedes Patchset war ein komplettes Release, d.h. man musste das Base-Release (11.2.0.1) nicht mehr als Ausgangspunkt installieren, sondern konnte das Patch-Set in ein neues, leeres Oracle-Home-Verzeichnis installieren. Und noch eine Änderung gab es: die Patch-Sets waren nicht mehr nur Sammlungen von Fehlerbehebungen (Patches) sondern enthielten auch neue Features. Der New-Features Guide für Oracle 11.2 enthält eigene Abschnitte für die Patchsets 11.2.0.2, 11.2.0.3 und 11.2.0.4 (siehe hier).

Zwischenfazit 1:
Seit Oracle 11g Release 2 gilt:

  • Patchsets sind komplette Softwarepakete
  • Patchsets enthalten neue Features

Praktisch waren die Patchsets also damals schon neue Software-Versionen.

Mit Oracle 12c (12.1, d.h. „Major-Release” 12, Minor Release “1”) hat sich das nicht geändert. Es gibt Oracle 12.1.0.1 und Oracle 12.1.0.2. Letzteres z.B. mit dem großen neuen Feature „In-Memory-Option“.

Mit Oracle 12c Release 2 (12.2), das Anfang 2017 als „12.2.0.1“ freigegeben wurde, kamen dann aber einige Änderungen. Zuerst einmal hat Oracle kurz nach der Veröffentlichung von Oracle 12.2 die groben Termine für die Patchsets bekanntgegeben: 12.2.0.2 sollte Anfang 2018 erscheinen; 12.2.0.3 ein Jahr später (2019). Aus Sicht der Datenbank-Administratoren war das eine wichtige Information, denn damit konnte man die Patch-Zyklen für die eigenen Systeme besser planen.

Auf der DOAG-Datenbank-Konferenz im Mai 2017 in Düsseldorf verkündete Andrew Mendelsohn dann die nächste Änderung: Oracle wechselt den Release-Zyklus der Datenbank-Versionen auf jährliche Releases und passt die Versionsnummerierung dementsprechend an. Kurz gesagt: aus 12.2.0.2 wurde Oracle 18c, aus 12.2.0.3 wurde Oracle 19c. Oracle 19c wird ein sog. „Long-Term-Support“-Release. Früher nannte man es „Terminal Patchset“, für das es dann auch längeren Support gab und gibt (wie aktuell für die Oracle 11.2.0.4).

Zwischenfazit 2:

  • Namen sind Schall und Rauch.
  • Oder: Aus Raider wird jetzt Twix, sonst ändert sich nix.

Wie sieht es mit den neuen Features aus?
Die New-Features Guides für Oracle 12.1 und 12.2 haben mehr als 130 Seiten; der von Oracle 18c nur knapp 60. Wenn man sich die Release-Zyklen anschaut, dann wird das auch klar: zwischen 12.1 und 12.2 lagen fast 4 Jahre und zwischen 12.2 und 18c nur ein knappes Jahr. Da war also entsprechend wenig Zeit für die Entwicklung.

Für das Release Oracle 19c sind wohl weniger neue Features zu erwarten, denn der Schwerpunkt bei diesem Long-Term-Support-Release (LTS) soll in der Stabilität und Fehlerbehebung liegen (siehe auch https://www.dbarj.com.br/en/2018/10/the-best-upcoming-features-in-oracle-database-19c/).
Separate Kurse, die speziell die neuen Features von 18c oder 19c behandeln, sind somit eher nicht sinnvoll. Zumal viele von den Features nicht losgelöst von neuen Funktionen in Oracle 12.2.0.1 betrachtet werden können.

Wie sieht es mit Applikationen von Drittherstellern aus?
Applikationshersteller brauchen in der Regel einige Zeit, bevor sie ihre Anwendungen gegen eine neue Datenbank-Version zertifizieren. Der einjährige Release-Zyklus setzt dann alle Beteiligten unter Druck: Applikationshersteller müssen ihre Applikationen testen und gegen die neue Version freigeben, dann starten die Kunden ihrerseits die Aktualisierung ihrer Systeme, immer schön in der Reihenfolge Test, Q+A und dann Produktion. Und dann ist das Jahr vorbei und das nächste Oracle-Release steht vor der Tür. Und alles beginnt von vorne. Oder man zertifiziert nur einmalig gegen die „12.2-Familie“ (=12.2, 18c und 19c).

Welche Version sollte man jetzt nehmen?

  • 11.2.0.4? Sicher nicht. Da endet der „Waived-Extended-Support“ im Dezember 2018 und wer nicht für den Extended-Support zahlen möchte, für den fällt die bewährte Version 11.2.0.4 aus der Auswahl heraus. Wenn man 11.2.0.4 noch in Betrieb hat, wird es langsam Zeit über einen Upgrade nachzudenken.
  • 12.1.0.2? Ist schon jetzt im „Waived Extended Support“, also eher aktuell keine gute Wahl. Im Vergleich zur 11.2.0.4 hat man nur ein unwesentlich längeres Zeitfenster bis man für den Extended-Support bezahlen muss (August 2019).
  • 12.2.0.1? Die 12.2-Familie ist sicher die beste Wahl, aber da schon das erste Patchset (AKA 18c) erschienen ist, würde ich eher nicht das „Base-Release“ 12.2.0.1 wählen.
  • 18c? Aktuell mein Favorit, wenn der Oracle-Versionswechsel in naher Zukunft erfolgen soll.
  • 19c? Oracle 19c kommt – wie der Name schon sagt – im nächsten Jahr raus. Wann, das bleibt das Geheimnis von Oracle. Vermutlich wird Oracle wieder eine ähnlich abgestufte Freigabe wie bei 18c wählen: Im ersten Quartal für die Oracle Cloud on Exadata „on premises“; im Sommer dann für Non-Exadata „on-premises“. Wer so lange warten kann (und will), für den ist 19c sicher eine Option – zumal man dann direkt beim LTS-Release gelandet ist.

Das ist wohlgemerkt meine persönliche Meinung, mit der ich in eine Upgrade-Diskussion einsteigen würde. Je nachdem von welcher Version man kommt und welche Features man nutzt (Oracle 18c ist z.B. das letzte Release das „Oracle Streams“ unterstützt), kann es Argumente geben, die zu einer anderen Zielversion führen, wie z.B. Zertifizierungen von Softwareherstellern. In jedem Fall gilt aber: jede der fünf genannten Versionen ist eine eigenständige Software und bei jedem Upgrade sollte die Applikation komplett gegen die neue Version getestet werden.

Insgesamt hat Oracle mit der Umbenennung der Versionen für viel Verwirrung gesorgt. Sicher ist Oracle damit näher an der Realität, denn de facto war schon seit Oracle 11.2. jedes sogenannte Patchset de-facto eine neue Software-Version. Aber manch ein erfahrener DBA, der sich mit Grauen an einige der älteren „.1-Versionen“ erinnert, zuckt zusammen, wenn er die Worte „neue Oracle Version“ hört. Es ist sicher auch nach dem ersten jährlichen Release 18c noch zu früh, diesen Wechsel abschließend zu beurteilen zu können. Meiner Meinung kann man das frühestens 2020, wenn das erste Release in dem jährlichen Turnus erscheint, das nicht der „12.2-Familie“ zuzurechnen ist.

MOS-Notes:

  • 742060.1 – Release schedule of current databases releases.
  • 161818.1 – Oracle Database (RDBMS) Releases Support Status Summary

Links

Werbung (Amazon-Partner-Link)