5 1 0: Oracle Rücksicherung

From SEPsesam
This page is a translated version of the page 5 1 0:Oracle Restore and the translation is 100% complete.


Willkommen in der aktuellsten Version der SEP sesam Dokumentation 5.1.0 Apollon. Frühere Versionen der Dokumentation finden Sie hier: Documentation Archiv.


Übersicht


Die hier erläuterten Verfahren und Funktionen bieten nur Informationen über die SEP sesam-spezifischen Teile der Oracle-Rücksicherung. Detaillierte Informationen zur Oracle-spezifischen Sicherung und Wiederherstellung finden Sie in Oracle Datenbank Dokumentation.

Das SEP sesam Sicherungsmodul für Oracle integriert den Oracle Recovery Manager (RMAN) mit SEP sesam um Oracle Datenbanken effizient online zu sichern und rückzusichern. Oracle RMAN steuert die Oracle-Serverprozesse und ist für die Pflege der Informationen im Wiederherstellungskatalog und in der Steuerdatei für die Durchführung von Oracle-Sicherungen und -Rücksicherungen verantwortlich.

RMAN kann Sicherungsdaten in einer logischen Struktur speichern, die als Backup Set bezeichnet wird. Dieses enthält die Daten aus einer oder mehreren Datendateien, archivierten Redo-Logs, Steuerdateien oder die Server-Parameterdatei. Backup Sets enthalten eine oder mehrere Binärdateien in einem RMAN-spezifischen Format (sogenannte Backup Pieces). Die Rücksicherung aus der Sicherungskopie wird mit dem RMAN durchgeführt, während SEP sesam ein Medienverwaltungsprogramm darstellt.

RMAN bietet eine vollständige Datenbankrücksicherung, die die Rücksicherung aller Datendateien, Steuer- und Serverparameterdateien in einer Zieldatenbank umfasst. Es ist möglich, auf die ursprüngliche Quelle oder einen neuen Speicherort rückzusichern.

Wenn Sie eine neue Kopie Ihrer Zieldatenbank für die weitere Verwendung auf einem neuen Host erstellen wollen, bietet RMAN die Möglichkeit, eine Datenbank aus einer früheren Sicherung zu duplizieren (klonen). Sie können ein Duplikat der Datenbank auf einem Remote-Server mit der gleichen Dateistruktur, einem Remote-Server mit einer anderen Dateistruktur oder auf einem lokalen Server mit einer anderen Dateistruktur erstellen. Da der Befehl DUPLICATE der neu erstellten Datenbank eine neue DBID zuweist, wird sie im selben Wiederherstellungskatalog registriert wie die Originaldatenbank.

Der Befehl RESTORE DATABASE wird normalerweise verwendet, wenn Ihre Produktionsdatenbank beschädigt ist und rückgesichert (ersetzt) werden muss. Wenn Sie jedoch in eine Testumgebung rücksichern und nur eine Kopie der Produktionsdatenbank erstellen möchten, sollten Sie den Befehl DUPLICATE verwenden, damit die Produktionssicherungen nicht beeinträchtigt werden.

RMAN verwaltet die Zieldatenbank (die Datenbank, die die Steuerdateien, Datendateien und optional archivierten Redo-Logs enthält, die gesichert oder rückgesichert werden) und alle Oracle-Serverprozesse auf der Zieldatenbank. Bei der Verwendung von ASM ist zu beachten, dass es sich um ein Dateisystem und einen Volume Manager handelt, die ebenfalls regelmäßig gesichert werden müssen.

Sicherung ausführen

Die Sicherungskonfiguration ist in Oracle Sicherung beschrieben.

Dabei werden die folgenden Annahmen getroffen:

  1. Ein Datenbankserver mit zwei Instanzen: Auf diesem System läuft eine Originalinstanz mit dem Namen SOURCE. Diese Instanz soll in der Instanz RESTORE rückgesichert werden.
  2. Es wird keine RMAN-Katalogdatenbank verwendet (Sicherungsinformationen werden in der Steuerdatei gespeichert). Um mit einem RMAN-Katalog zu arbeiten, muss der Befehl DUPLICATE database mit einer Verbindung zum RMAN-Katalog ausgeführt werden. Details finden Sie unter Ausführen des RMAN-Skripts.
  3. Der ORACLE_SID wird auf RÜCKSICHERUNG gesetzt, um eine Verbindung zur neuen Datenbank ohne Auflösung über tnsnames (unter Unix: export ORACLE_SID=RESTORE , unter Windows:ORACLE_SID=RESTORE ). Andernfalls muss der tnsnames.ora eingerichtet werden und der Listener muss neu gestartet werden lsnrctl reload.

Die folgenden Sicherungsaufträge müssen ausgeführt werden:

> Vollsicherung der Datendateien mit Steuerdatei (RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON)

> Archivierte Redo-Protokollsicherung

Vorbereitung des Systems für eine Rücksicherung

Um eine neue Datenbankinstanz rücksichern zu können, müssen Sie mit dem Befehl dbca eine neue und frische Setup-Instanz auf dem Oracle-System erstellen. Der Speicherort der neuen Datenbankdateien ist in diesem Schritt sehr wichtig, da diese Information für die Rücksicherung benötigt wird. Der neue Speicherort für die rückgesicherte Datenbank ist:

/opt/oracle/restore/RESTORE/

Rücksichern von Oracle-Datenbanken

Die Prozedur erklärt, wie man eine Instanz auf dem gleichen System in eine neue Instanz rücksichert. Sie beschreibt ein normales Setup, ohne ASM oder andere spezielle Komponenten.

Schritte

  1. Lesen des Sicherungsprotokolls: Da die neue Instanz an einem anderen Ort rückgesichert wird, sehen Sie sich das Sicherungsprotokoll an, in dem die Datendateien gesichert wurden:
  2.  Starting backup at 11-MAR-14
     channel SOURCE1: starting incremental level 0 datafile backup set
     channel SOURCE1: specifying datafile(s) in backup set
     input datafile file number=00001 name=/opt/oracle/app/oracle/oradata/SOURCE/system01.dbf
     input datafile file number=00002 name=/opt/oracle/app/oracle/oradata/SOURCE/sysaux01.dbf
     input datafile file number=00003 name=/opt/oracle/app/oracle/oradata/SOURCE/undotbs01.dbf
     input datafile file number=00005 name=/opt/oracle/app/oracle/oradata/SOURCE/example01.dbf
     input datafile file number=00006 name=/opt/oracle/oradata/SOURCE/sesamdata.dbf
     input datafile file number=00004 name=/opt/oracle/app/oracle/oradata/SOURCE/users01.dbf
     channel SOURCE1: starting piece 1 at 11-MAR-14

    Die Abschnitte der Eingabedateien beschreiben die Dateien, die gesichert wurden. Diese Dateien referenzieren auf den ursprünglichen Speicherort.

    Da die Sicherung keine TEMPFILE-Datenbanken enthält, geben Sie den folgenden Befehl für die Original-Datenbank ein, um herauszufinden, wie viele tempfiles vorhanden sind:

     RMAN> connect target /
     connected to target database: SOURCE (DBID=2960287951)
     RMAN> report schema;
     using target database control file instead of recovery catalog
     Report of database schema for database with db_unique_name SOURCE
     List of Permanent Datafiles
     ===========================
     File Size(MB) Tablespace           RB segs Datafile Name
     ---- -------- -------------------- ------- ------------------------
     1    680      SYSTEM               ***     /opt/oracle/app/oracle/oradata/SOURCE/system01.dbf
     2    520      SYSAUX               ***     /opt/oracle/app/oracle/oradata/SOURCE/sysaux01.dbf
     3    100      UNDOTBS1             ***     /opt/oracle/app/oracle/oradata/SOURCE/undotbs01.dbf
     4    5        USERS                ***     /opt/oracle/app/oracle/oradata/SOURCE/users01.dbf
     5    100      EXAMPLE              ***     /opt/oracle/app/oracle/oradata/SOURCE/example01.dbf
     6    100      SESAMDATA            ***     /opt/oracle/oradata/SOURCE/sesamdata.dbf 
    
     List of Temporary Files
     =======================
     File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
     ---- -------- -------------------- ----------- --------------------
     1    29       TEMP                 32767       /opt/oracle/app/oracle/oradata/SOURCE/temp01.dbf< 
  3. Einrichten des Datenbankklons: Der Datenbankklon muss sich im Startup-Nomount-Modus mit aktiviertem Archivprotokoll befinden:
  4.  sqlplus / as sysdba 
     shutdown immediate
     startup nomount
     alter database archivelog;
  5. Erstellen des RMAN Restore Skriptes: Basierend auf den Informationen des Sicherungsprotokolls erstellen Sie ein RMAN Skript (z.B. duplicate_SOURCE.rman), zum Beispiel:
  6.  run {
     ALLOCATE auxiliary channel T1 type 'SBT_TAPE' parms 'ENV=(SESAM_SERVER=qsstor,SESAM_TAPE_SERVER=qsstor,SESAM_JOB=CEFIX_ORACLE_SOURCE,SESAM_DRIVE=,
     SESAM_POOL=diskstore-7days,SOB_TRACE=0,SOB_LOGFILE=/tmp/restore.log,SESAM_COM_TIMEOUT=)';
     set newname for datafile 1 to '/opt/oracle/restore/RESTORE/system01.dbf';
     set newname for datafile 2 to '/opt/oracle/restore/RESTORE/sysaux01.dbf';
     set newname for datafile 3 to '/opt/oracle/restore/RESTORE/undotbs01.dbf';
     set newname for datafile 4 to '/opt/oracle/restore/RESTORE/users01.dbf';
     set newname for datafile 5 to '/opt/oracle/restore/RESTORE/example01.dbf';
     set newname for datafile 6 to '/opt/oracle/restore/RESTORE/sesamdata.dbf';
     set newname for tempfile 1 to '/opt/oracle/restore/RESTORE/tempfile01.dbf'; 
     duplicate target database to 'RESTORE'
     logfile
     '/opt/oracle/restore/RESTORE/redo01.log' SIZE 50M,
     '/opt/oracle/restore/RESTORE/redo02.log' SIZE 50M,
     '/opt/oracle/restore/RESTORE/redo03.log' SIZE 50M;
     }

    Die set newname-Klauseln legen den Rücksicherungsort für die neuen Dateien fest (den Ordner der neuen Datenbank RESTORE). Sie müssen auch die set newname for tempfile Klauseln entsprechend dem report schema Befehl setzen. Die Syntax für die Protokolldatei-Optionen ist die gleiche wie im Datenbank erstellen Befehl.

    Hinweis
    Anstatt set newname für jede datafile und tempfile zu verwenden, stehen andere Klauseln zur Verfügung, z.B. DB_FILE_NAME_CONVERT = ({original path},{new path}) und LOG_FILE_NAME_CONVERT = ({original log path},{new log path}). Details finden Sie unter Der DUPLICATE-Befehl in Oracle Database Backup and Recovery Reference.
  7. Ausführen des RMAN-Skripts: Verbinden Sie die Quell- und die neue Datenbank mit dem folgenden Befehl:
  8.  oracle@cefix:~$ rman target sys/sep@SOURCE auxiliary /
     Recovery Manager: Release 11.2.0.1.0 - Production on Tue Mar 11 13:56:14 2014Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
     connected to target database: SOURCE (DBID=2960287951)
     connected to auxiliary database: RESTORE (not mounted) 

    Führen Sie das RMAN-Skript aus:

     @duplicate_SOURCE.rman
    • RMAN verbindet sich mit dem als Hilfsmittel {newdb} angegebenen Datenbankklon.
    • RMAN verbindet sich mit der mit target {source} angegebenen Quelldatenbank, um die Metadaten aus der Steuerdatei zu holen. Je nach Sicherungsstrategie gibt es mehrere Möglichkeiten, die Metadaten zu holen:
    • Ziel, aber kein Katalog
      Die Metadaten stammen aus der Steuerdatei der Zieldatenbank: $ rman TARGET sys/password@SOURCE AUXILIARY /
      Katalog, aber kein Ziel
      Die Metadaten stammen aus dem RMAN-Katalog: $ rman CATALOG rman/password@rman-catalog AUXILIARY /
      Ziel und Katalog
      Die Metadaten können aus der Zielsteuerdatei oder dem Katalog stammen: $ rman TARGET sys/password@SOURCE CATALOG rman/password@rman-catalog AUXILIARY /
      Kein Ziel oder Katalog
      Metadaten stammen aus Sicherungen: $ rman AUXILIARY /

Im Falle einer fehlgeschlagenen Rücksicherung hat RMAN bereits die neue DBID und SID für die neue Zieldatenbank gesetzt. Beachten Sie, dass eine zweite Rücksicherung nicht möglich ist. Sie müssen entweder die neue Datenbank neu erstellen, oder den Namen der Zieldatenbank auf den alten Namen zurücksetzen, indem Sie den folgenden Befehl im sqlplus verwenden:

 alter system set db_name='RESTORE' scope=spfile;
 alter system set db_unique_name='RESTORE' scope=spfile;

Stoppen Sie die Datenbank und starten Sie sie anschließend neu:

 shutdown immediate; 
 startup nomount;

Sie müssen aufgebaute RMAN-Sitzungen schließen, die verworfen werden, und die RMAN-Befehle neu starten.


Siehe auch

Oracle Duplicate DatabaseOracle Anforderungen und KonfigurationOracle Sicherung

Copyright © SEP AG 1999-2024. Alle Rechte vorbehalten.
Jede Form der Reproduktion der Inhalte dieses Benutzerhandbuches, ganz oder in Teilen, ist nur mit der ausdrücklichen schriftlichen Erlaubnis der SEP AG gestattet. Bei der Erstellung dieses Benutzerhandbuches wurde mit größtmöglicher Sorgfalt gearbeitet, um korrekte und fehlerfreie Informationen bereit stellen zu können. Trotzdem kann die SEP AG keine Gewähr für die Richtigkeit der Inhalte dieses Benutzerhandbuches übernehmen.