4 4 3:Oracle Rücksicherung

From SEPsesam
Jump to: navigation, search
This page is a translated version of the page 4 4 3:Oracle Restore and the translation is 90% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English

Copyright © SEP AG 1999-2022. 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.

Draft.png WORK IN PROGRESS
This page is a draft. Treat the information on this page with caution as it may be incomplete.


Docs latest icon.png Willkommen in der aktuellsten Version der SEP sesam Dokumentation 4.4.3 Beefalo/5.0.0 Jaglion. Frühere Versionen der Dokumentation finden Sie hier: Oracle 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. RMAN hat die Fähigkeit, den Inhalt von Sicherungsstücken in Datendateipfaden zu speichern, die sich von denen der ursprünglichen Sicherung unterscheiden. Sie können diese Fähigkeit nutzen, um die Daten von einer Instanz in das Verzeichnis einer anderen Instanz rückzusichern.

RMAN can store backup data in a logical structure called a backup set. This contains the data from one or more datafiles, archived redo logs, control files, or server parameter file. Backup sets contain one or more binary files in an RMAN-specific format (so-called backup pieces). The restore from backup copy is performed using the RMAN, while SEP sesam represents a media management utility.

RMAN provides a full database restore which includes restoring all datafiles, control and server parameter files to a target database. It is possible to restore to the original source or a new location.

If you want to create a new copy of your target database for ongoing use on a new host, RMAN has the ability to duplicate (clone) a database from a previous backup. You can create a duplicate database on a remote server with the same file structure, a remote server will a different file structure, or on a local server with a different file structure. As the DUPLICATE command assigns a new DBID to the newly created database, it is registered in the same recovery catalog as the original database.

The RESTORE DATABASE command is typically used if your production database is damaged and needs to be restored (replaced). However, if you want to restore into a test environment and only make a copy of the production database, the DUPLICATE command should be used so that the production backups are not affected.

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-Log-Sicherung

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 Logfile-Optionen ist die gleiche wie im Datenbank erstellen Befehl.

    SEP Tip.png 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 /
      Target and catalog
      Metadata can come from the target controlfile or the catalog: $ 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.