RMAN, PSU & DBBP

8. Oktober 2016 Aus Von Markus Flechtner

Vor einiger Zeit hatte ich das Problem, dass ich eine neue 12.1.0.2 Datenbank nicht bei meinem RMAN Katalog, der ebenfalls in einer 12.1.0.2 Datenbank lief, registrieren konnte.

Beim Versuch, die Datenbank zu registrieren, erhielt ich die Fehlermeldung

PL/SQL package RMAN.DBMS_RCVCAT version 12.01.02 in RCVCAT database is too old

Das erstaunte mich, denn beiden Datenbanken waren ja auf dem gleichen Versionsstand – 12.1.0.2.

Aber es war dann doch recht einfach, die Ursache herauszufinden:

In der Katalog-Datenbank hatte ich den PSU vom Juli 2016 („12.1.0.2.160719 (Jul 2016) Database Patch Set Update DB PSU) (23054246)“) eingespielt und in der Zieldatenbank den DBBP Juli 2016 „12.1.0.2.160719 Database Proactive Bundle Patch (Jul 2016) (23273686)“).

Bekanntermassen vertragen sich PSUs und DBBPs nicht und man muss sich entscheiden: entweder DBBP oder PUS. Allerdings kommt dieser Konflikt nicht nur zum Vorschein, wenn man beide Patch-Typen in das gleiche Oracle-Home intallieren will, sondern anscheinend auch, wenn Ziel-Datenbank und Katalog-Datenbank unterschiedlich gepatcht wurden.

Ich persönlich bevorzuge die Database Proactive Bundle Patches (DBBP), denn sie enthalten die PSUs und weitere Bug-Fixes (z.B. von “wrong-result”-bug”).

Ich musste also:

  1. einen Rollback des PSU in der Katalog-Datenbank machen (datapatch rollback)
  2. den PSU deinstallieren (opatch rollback)
  3. den DBBP installieren (opatch apply)
  4. die Änderungen in die Datenbank einspielen (datapatch)

Danach konnte ich die Zieldatenbank problemlos registrieren.

Und was lernen wir daraus:

Entscheide dich für einen Patch-Typ und installiere ihn auf allen Datenbanken  (.. Standards, Standards, Standards, …).

Zu dem Thema passen folgende Blog Posts  von Mike Dietrich:

Zugehörige MOS-Notes:

  • Oracle Database – Overview of Database Patch Delivery Methods (Doc ID 1962125.1)

Werbung (Amazon-Partner-Link)