Backup mit dem Oracle Recovery Manager (RMAN) leicht gemacht
Backup- und Recovery-Strategien gehören zu den wichtigsten Aufgaben eines DBAs. Hardware und Software können ersetzt werden, verlorene Daten sind jedoch nicht wiederherstellbar. Deshalb ist es notwendig, dass Sie die passende Backup- und Recovery-Strategie für Ihr Unternehmen wählen.
Seit Oracle den Recovery Manager – kurz RMAN – in der Version 8 auslieferte, sollte klar sein, dass der RMAN das bevorzugte Mittel zur Sicherung der Datenbank ist. RMAN-Backup ist zwar einfach, die Herausforderung besteht jedoch darin, den Recovery-Manager entsprechend Ihrer Anforderung in Ihre Systemlandschaft zu integrieren. Mit zunehmenden Anforderungen an den RMAN bzw. das RMAN-Skript, wird auch Ihr Backup-Skript komplexer. Auch mit zunehmender Komplexität der Infrastruktur steigt die Komplexität einer einheitlichen, plattformübergreifenden RMAN-Integration. Auf den ersten Blick ist RMAN-Backup zwar einfach, doch der Teufel steckt im Detail. RMAN-Backup stellt nämlich einen nicht zu unterschätzenden Aufwand dar.
In den meisten Unternehmen werden Oracle-Datenbanken sowohl auf Unix/Linux wie auch auf Windows betrieben. In diesem Fall nutzen Sie vermutlich mindestens zwei Backup-Skripte, die sich vermutlich sowohl im Umfang der umgesetzten Features wie auch in der Parametrisierung unterscheiden. Das nächste nicht zu vernachlässigende Problem ist in solchen Umgebungen die Kontrolle von Backup-Abbrüchen, auch diese ist vermutlich unterschiedlich realisiert.
Für den Dienstleister, welcher Datenbanken für Kunden auf unterschiedlichen Plattformen betreibt, stellt somit die Vereinheitlichung sowie die Kontrolle der Backups einen relativ großen Aufwand dar. Vielleicht sieht Ihre Organisationsstruktur auch vor, dass 1st-Level-Tickets von Kollegen bearbeitet werden, deren Primärfokus nicht im Oracle-Datenbankbetrieb liegt.
Aus diesen Gesichtspunkten heraus wäre es wünschenswert, eine Backup-Methode zu nutzen, die sowohl plattformunabhängig ist, wie auch Kollegen, deren Fokus nicht primär auf Oracle-Betrieb liegt, bei der Fehleranalyse und -behebung entsprechend zu unterstützen. Ziel in solchen Unternehmen sollte es sein, den administrativen Aufwand bei der Pflege und Umsetzung von Backup Features auf ein Minimum zu reduzieren und die Qualität Ihres Services auf ein Maximum zu erhöhen.
Aus diesem Aspekt heraus haben wir das PL/SQL-Package YS.DBMS_BACKUP entwickelt, welches all diese Anforderungspunkte erfüllt.
Funktionsweise von YS.DBMS_BACKUP
Bevor darauf eingegangen wird, wie einfach unser PL/SQL-Package zur Sicherung ihrer Datenbanken verwendet werden kann, möchte ich kurz die Funktionsweise vereinfacht erläutern.
Wie in Abb.1 zu erkennen ist, wird aus der Datenbank heraus ein RMAN-Prozess auf Betriebssystemebene gestartet. Entsprechende RMAN-Befehle werden dann über eine zuvor definierte PIPE (inter process communication) von der entsprechenden Datenbank-Session an den zugeordneten RMAN-Betriebssystemprozess gesendet. Die Zuordnung von der Oracle-Session zum jeweiligen richtigen RMAN-Betriebssystemprozess erfolgt über die Mapping-Tabelle ys.rman_watchdog (Abb.2). Wie aus Abb.2 auch zu erkennen ist, können mehrere Oracle-RMAN-Prozesse parallel bedient werden.
Der komplette Output, welchen der RMAN-Prozess erzeugt, wird zurück über die PIPE an die richtige Oracle-Session übertragen und entsprechend gespeichert (Abb.10 weiter unten).
YS.DBMS_BACKUP kann also alle Backup-Skripte, welche auf Betriebssystemebene laufen würden, zu 100 Prozent ersetzen. Sie müssen sich also keine Gedanken mehr darüber machen, wie Ihre Windows-, Unix- oder Linux-Datenbank gesichert wird. Egal auf welcher Plattform, Sie können YS.DBMS_BACKUP zur Sicherung Ihrer Datenbank verwenden, Sie verwenden immer den 100 Prozent identischen Code. Die Genialität liegt somit auf der Hand, Sie können mittels YS.DBMS_BACKUP alle Ihre Backup-Skripte ablösen und durch eine Version welche in PL/SQL geschrieben ist ersetzen. Nicht nur das, Sie erhalten durch die Verwendung auch eine komplette Backup-Auswertung, die diverse Vorteile gegenüber der eines herkömmlichen Backup-Skripts bietet.
Im nachfolgenden wird gezeigt, wie Sie mittels unserem PL/SQL-Package YS.DBMS_BACKUP Ihr Backup vereinheitlichen und dabei Ihre Qualität maximieren können.
Beispielhafte RMAN-Steuerung über YS.DBMS_BACKUP
Die Verwendung des Package YS.DBMS_BACKUP ist einfach und intuitiv. Jeder Administrator, welcher die Syntax von RMAN beherrscht, kann sofort das Package YS.DBMS_BACKUP verwenden. Beispielhaft wird das an den RMAN-Befehlen ersichtlich:
- show all (Abb.3)
- backup incremental level 0 database (Abb.4)
- list backup summary (Abb.5)
Sie müssen sich jedoch keine eigenen Prozeduren in PL/SQL schreiben, um Ihr Datenbank-Backup zu erstellen. Sie können vorgefertigte Prozeduren verwenden um z. B. Ihre Level 0-, Level 1- oder Archivlog-Sicherung durchzuführen. Es ist jedoch generell möglich, über die Procedure ys.dbms_backup.rcv, die hier in den Bespielen verwendet wurde, eigene Backup-Varianten zu realisieren, sofern es für Ihre Umgebung nötig sein sollte. Die Prozedur ys.dbms_backup.rcv dient als zentrale Schnittstelle, welche die Kommunikation zwischen den Oracle-Sessions und den Betriebssystemprozessen regelt, und wurde deshalb in den Beispielen verwendet.
Ein weiterer Benefit, den Sie durch die Verwendung des Packages erhalten, ist die einfache Backup-Auswertung.
Backup-Überprüfung
Dem Datenbank-Administrator werden die wichtigsten Information bezüglich des Backups mittels Daten aus dem "Oracle Central Repository" verständlich bereitgestellt, welche mit zusätzlichen Information ergänzt werden (s. Abb.6).
Diese zusätzlichen Informationen unterstützen den Administrator, entsprechende Analysen zu machen und die richtigen Schritte sofern nötig zu veranlassen. Die Abb.7 hilft dem DBA dabei, schnell und sicher festzustellen, von welchem Zeitraum die letzten jeweiligen Backups sind. So wird z. B. vermieden, dass die letzte Vollsicherung veraltet ist.
Dem Administrator steht neben den Logfiles, welche durch den RMAN-Prozess erzeugt werden (Abb.8, Abb.9), auch direkt die Loginformation in der Datenbank zur Verfügung (Abb.10).
Die bereitgestellten Views können leicht in das zentrale Monitoring Ihrer Umgebung eingebunden werden.
Fazit
YS.DBMS_BACKUP ist eine einfache und gute Methode, sämtliche Backup-Skripte und Backup-Varianten in Ihrer Systemlandschaft zu konsolidieren. Durch den Einsatz des Packages sichern Sie alle Ihre Datenbanken auf eine und dieselbe Methode, Sie müssen nicht mehrere unterschiedliche Backup-Skripte (Perl, Shell, Powershell etc.) pflegen. Die Backup-Steuerung der Datenbanken kommt endlich dorthin wo Sie auch hingehört: in die Datenbank.
Zum Abschluss möchte ich noch mal kurz die Key Benefits aufzählen.
Warum sollten Sie YS.DBMS_BACKUP zur Sicherung Ihrer Datenbanken einsetzen?
- YS.DBMS_BACKUP ist eine API, die die Steuerung des RMAN übernimmt
- Alle Datenbanken – egal auf welchem Betriebssystem – werden einheitlich gesichert (PL/SQL)
- Bessere und detaillierte Backup-Auswertung, basierend auf dem Oracle Central Repository
- Sie können sich 100 prozentig sicher sein, dass Ihr Backup gelaufen ist
- Backup-Abbrüche schreiben eine ORA-Fehlermeldung in das Oracle Alert Log
- Volle administrative Funktionsfähigkeit aus SQL*Plus heraus
- 100 Prozent RMAN-Syntax per SQL*Plus
- Vordefinierte Backup-Routinen die ohne RMAN-Know-how gestartet werden können
- Unterstützt Ihren Helpdesk und erhöht dadurch Ihre Qualität
- Kein Zugriff für Mitarbeiter auf Betriebssystemebene im normalen Betrieb erforderlich
- Backup-Logs in der Datenbank
- Unterbindung von Lizenzverstößen z. B. durch Verwendung von Advanced Compression
- Einbindung in Ihre Jobsteuerung möglich
- Automatische Plausibilitätskontrolle der RMAN-Konfiguration
- Plattformunabhängig
- Easy to set up
DBMS_BACKUP-/ RMAN-Features
- Full Database Backup
- Incremental Level Backup
- Archivlog Backup
- Image Copy Backup
- Crosscheck
- List Backup
- Configure
- Delete Backup
- RMAN-RUN-Blöcke
- Report
- Sync Oracle Catalog
- Restore Datafile (coming soon)
- Restore Tablespace (coming soon)
Unser Service für Sie:
Unsere Experten erarbeiten mit Ihnen eine auf Ihre Bedürfnisse ausgerichtete Sicherungsstrategie. Wir richten die Sicherung genau nach Ihren Anforderungen ein. Darüber hinaus sind individuelle Schulungen Bestandteil unseres Portfolios.
- Erstellen einer Backup- und Recovery-Sicherungsstrategie auf Basis YS.DBMS_BACKUP / RMAN
- Ergänzung der Recovery-Strategie durch Oracle-HA-Lösungen
- Implementierung Sicherungsstrategie
- Testen der Sicherungsstrategie
- Hilfe bei Recoveryproblemen
- 24 Stunden, 7 Tage die Woche
- Remotesupport
- Experten-Hotline
- Entwicklung von Oracle-Datenbank-Utilities
- Individuelle Schulungen und Workshops
Kontakt:
info@~@itunified.de
www.itunified.de
ITUnified UG (haftungsbeschränkt)
Kettelerstraße 13
82515 Wolfratshausen
HRB: 216326
USt-ID: DE298120026
Steuernummer 139/129/40688