Oracle-Datenbank wiederherstellen

Datenbank mit der Verwaltungskonsole wiederherstellen

Wenn Sie die Wiederherstellung in der ursprünglichen Datenbank ausführen, werden die ursprünglichen Produktionsanwendungsdaten durch das angegebene Snapshot-Image ersetzt. Bei dieser Wiederherstellung gehen alle aktuellen Anwendungsdaten verloren, da die Anwendung auf den Status zum Zeitpunkt der Erstellung des Images zurückgesetzt wird. Dieser Vorgang kann nicht rückgängig gemacht werden. Die Dauer der Wiederherstellung hängt von der Datenmenge ab. Sie können auch eine Datenbank an einem anderen Ziel wiederherstellen.

Anhand dieser Anleitung können Sie eine Oracle-Datenbank mit RMAN automatisch über die Verwaltungskonsole wiederherstellen und dabei die ursprüngliche Produktionsdatenbank überschreiben.

  1. Öffnen Sie die Verwaltungskonsole und rufen Sie den App-Manager auf. Geben Sie den Namen der Datenbankanwendung ein oder verwenden Sie die Filter, um das gewünschte Datenbank-Image zu finden.

  2. Klicken Sie mit der rechten Maustaste auf die Anwendung und wählen Sie Zugriff aus.

  3. Wählen Sie auf der Seite Zugriff ein Image aus und klicken Sie im Menü Bereitstellen auf Wiederherstellen.

  4. Wählen Sie auf der Seite Wiederherstellen die Option Traditionell aus (nicht „Bestätigen und migrieren“).

  5. Wählen Sie mit dem Schieberegler Wiederherstellungszeitraum einen bestimmten Zeitpunkt für die Wiederherstellung der Datenbank aus. Schieben Sie den Schieberegler ganz nach links, um nur die Datenbank ohne angewendete Protokolle wiederherzustellen.

  6. Geben Sie unter Nutzername den Inhaber der Oracle-Software auf dem ausgewählten Zielserver ein.

  7. Geben Sie unter Anzahl der Kanäle die Anzahl der RMAN-Kanäle an, um den Parallelismus für die Datenbankwiederherstellung zu konfigurieren.

  8. Klicken Sie auf Senden.

  9. Ein Warndialogfeld wird angezeigt. Lesen Sie die Informationen und geben Sie zum Bestätigen DATA LOSS ein.

  10. Der Job wird für den nächsten verfügbaren Job-Slot in die Warteschlange gestellt. Sie können den Fortschritt im Job Monitor ansehen.

Datenbank mit der Verwaltungskonsole auf einem beliebigen Ziel wiederherstellen

Folgen Sie dieser Anleitung, um eine Oracle-Datenbank mit RMAN über die Verwaltungskonsole auf einem neuen Ziel wiederherzustellen.

  1. Klicken Sie in der Liste App-Manager > Anwendungen mit der rechten Maustaste auf die Datenbank und wählen Sie Zugriff aus.
  2. Wählen Sie das Sicherungsabbild aus, das Sie wiederherstellen möchten, und klicken Sie auf Wiederherstellen.
  3. Wählen Sie auf der Seite „Wiederherstellen“ die Option Traditionell aus.

    • Ziel: Für alle Konfigurationen sind alle geeigneten Oracle-Datenbankserver im Drop-down-Menü verfügbar. Wählen Sie im Drop-down-Menü den Zielserver für die Wiederherstellung aus.
    • Ursprüngliche Anwendungsidentität ersetzen: Diese Option ist nur verfügbar, wenn die Wiederherstellung auf einem neuen Server auf derselben Appliance erfolgt, auf der die Sicherung ursprünglich erstellt wurde.
    • Ja: Dadurch wird die ursprüngliche Anwendung ersetzt. Sie hat dieselbe Anwendungs-ID, denselben Jobverlauf, dieselben Sicherungs-Images und denselben Sicherungsplan wie die ursprüngliche Anwendung.
    • Nein: Die ursprüngliche Anwendung wird dadurch nicht ersetzt. Die neue Datenbank wird im Rahmen des Wiederherstellungsjobs als neue Anwendung erkannt.
    • Roll-forward-Zeit: Wählen Sie ein Datum und eine Uhrzeit für eine Datenbank aus, die mit Protokollen geschützt ist, um sie zum gewünschten Zeitpunkt wiederherzustellen.
    • Anwendungsoptionen:

      • DATABASESID: Dieser Parameter ist vorab mit dem SID-Namen der geschützten Datenbank ausgefüllt und kann nicht geändert werden.
      • USERNAME: Dieser ist vorab mit dem Oracle-Softwareinhaber der Quelldatenbank ausgefüllt. Aktualisieren Sie den NUTZERNAMEN, wenn der Inhaber der Oracle-Software auf dem ausgewählten Zielserver ein anderer ist.
      • ORAHOME: Dieser Parameter ist vorab mit dem Oracle-Home-Pfad der Quelldatenbank ausgefüllt. Aktualisieren Sie das Oracle-Home-Verzeichnis, wenn es sich auf dem ausgewählten Zielserver von dem auf dem lokalen Computer unterscheidet.
      • Erweiterte Optionen: Diese Option ist vorausgefüllt und enthält alle Datenbankparametereinstellungen (aus der pfile) an der Quelle zum Zeitpunkt der Sicherung. Prüfen Sie, ob der Parameterwert für den Zieldatenbankserver (Quell- oder neues Ziel) für die Wiederherstellung korrekt ist.
  4. Zuordnungsoptionen:

    • Zieldatenbanktyp: Wählen Sie in der Drop-down-Liste den Zieldatenbanktyp (ASM-Speichergruppe oder Dateisystem) für die Datenbank aus. Der Dateisystemzieltyp wird für Sicherungsabbilder im ASM-Format nicht unterstützt.

      Quelldatenbank Format des Sicherungsbilds Wiederherstellungsziel
      ASM ASM ASM
      ASM Dateisystem ASM
      Dateisystem Dateisystem Dateisystem
    • Wählen Sie in der Drop-down-Liste die Ziel-ASM-Laufwerksgruppe und die Dateisystemzuordnungen für drei Dateitypen aus: Datendateien, Steuerdateien und Protokolldateien für die Datenbank.

  5. Klicken Sie auf Vorflugcheck. Wenn die Preflight-Prüfung fehlschlägt, beheben Sie das Problem und führen Sie die Preflight-Prüfung noch einmal aus.

  6. Klicken Sie auf Senden, um den Wiederherstellungsjob zu senden.

Oracle-Datenbank manuell mit RMAN wiederherstellen

Eine Anleitung zum manuellen Wiederherstellen einer Oracle-Datenbank finden Sie hier.

Kein RAC, kein ASM, Dateisystem

Oracle-Datenbank mit Datendatei im Dateisystem wiederherstellen, die mit einem dateibasierten Staging-Laufwerkformat geschützt ist

  1. Das Image aus der geschützten Quelldatenbank bereitstellen.

    Geben Sie im Fenster Bereitstellen unter Zuordnungsoptionen einen Bereitstellungsort für das Image an, z. B. /acttestdb. Eine Anleitung zum Bereitstellen eines Datenbank-Images finden Sie unter Oracle-Datenbank-Image bereitstellen, das unter einem Dateisystem für den Datenzugriff geschützt ist.

    Das Sicherungsimage der Datenbank wird unter folgendem Pfad bereitgestellt: /acttestdb

    Das geschützte Archivprotokoll wird unter folgendem Pfad bereitgestellt: /acttestdb_Log

  2. Legen Sie die Oracle-Umgebung fest und verwenden Sie sqlplus, um die Datenbank herunterzufahren:

    sqlplus / as sysdba
    sql> shutdown immediate;
    

    Prüfen Sie, ob die Datenbank heruntergefahren wurde. Beenden Sie alle verbleibenden Prozesse für die Datenbank.

    ps -ef | grep <var>database sid</var>
    
  3. Starten Sie die Datenbank im Status „nomount“ mit der Sicherungsparameterdatei aus dem bereitgestellten Volume. Die Sicherungsparameterdatei befindet sich im obersten bereitgestellten Ordner, z. B. /acttestdb.

  4. Legen Sie die Oracle-Umgebung fest und starten Sie die Datenbank mit sqlplus:

    sqlplus / as sysdba
    sql> startup nomount pfile='/acttestdb/<var>database_sid</var>___backup.ora';
    
  5. Erstellen Sie eine neue spfile aus der vorhandenen pfile und starten Sie die Datenbank neu.

    Erstellen Sie eine spfile aus der pfile:

    sql> create spfile='$ORACLE_HOME/dbs/spfile_<var>database sid</var>.ora' from pfile='/acttestdb/<var>database sid</var>___backup.ora';
    

    Starten Sie die Datenbank mit dem spfile im Status „nomount“ neu:

    sql> shutdown immediate;
    sql> startup nomount;
    
  6. Stellen Sie die Kontrolldatei mit RMAN aus dem bereitgestellten Archiv-Log-Image für die Sicherung und Notfallwiederherstellung wieder her. Verwenden Sie die neueste Kontrolldatei aus dem bereitgestellten Image, z. B.:

       /acttestdb_Log/cf D_<var>sid</var>-id_<var>id</var>.ctl
    

    oder wenn mehr als ein Log-Image vorhanden ist:

       /acttestdb_Log_1/cf-D_<var>sid</var>-id_<var>id</var>.ctl
    
        rman target /
        rman> restore controlfile from '/acttestdb_Log_1/cf-D_<var>sid</var>-id_<var>id</var>.ctl' ;
    
  7. Stellen Sie die Datenbank bereit:

        rman> alter database mount;
        ```
    
    1. Catalog the datafile and archivelog folder from Backup and DR mounted
     database image and archive log image to RMAN
    
       ```rman
        rman> run { catalog start with '/acttestdb/datafile' noprompt;
        catalog start with '/acttestdb/archivelog' noprompt;
        catalog start with '/acttestdb_Log' noprompt;}
      ```
    
    1. Restore and recover the database:
    
       ```rman
        rman> run { restore database ; recover database; }
    

    Für die Wiederherstellung zu einem bestimmten Zeitpunkt im Format TTMMJJHH24MI:

        rman> run
        {
        restore database;
        recover database until time "to_date('<var>required timestamp</var>>','yyyymmddhh24mi')";
        }
    
    1. Öffnen Sie die Datenbank mit der Option zum Zurücksetzen des Protokolls.

      • Für die Wiederherstellung der primären Datenbank:
           rman> alter database open resetlogs;
      
      • Starten Sie für die Wiederherstellung der Data Guard-Standby-Datenbank den von Data Guard verwalteten Wiederherstellungsprozess:
           rman> alter database recover managed standby database nodelay disconnect;
      

    Die Datenbank ist für Lese- und Schreibvorgänge verfügbar.

RAC oder eigenständiges ASM, Dateisystem

Oracle-Datenbank mit Datendatei in einer ASM-Laufwerksgruppe wiederherstellen, die mit einem dateibasierten Staging-Laufwerkformat geschützt ist

  1. Das Image aus der geschützten Quelldatenbank bereitstellen.

    Geben Sie im Fenster „Mount“ unter „Mapping Options“ (Zuordnungsoptionen) einen Bereitstellungsort für das Image an, z. B. /acttestdb. Eine Anleitung zum Bereitstellen eines Datenbank-Images finden Sie unter Oracle-Datenbank-Image bereitstellen, das durch ein Dateisystem für den Datenzugriff geschützt ist.

    Das Image der Datenbanksicherung wird an folgendem Bereitstellungsort bereitgestellt: /acttestdb

    Das geschützte Archivprotokoll wird unter folgendem Pfad bereitgestellt:/acttestdb_Log

  2. Fahren Sie die Oracle-Datenbank herunter. Führen Sie auf Knoten 1 su für den Oracle-Betriebssystemnutzer aus:

    su - oracle

    Legen Sie die Oracle-Umgebung fest und beenden Sie die Datenbank mit srvctl auf allen Knoten:

    srvctl stop database -d <var>database_name</var>

    Prüfen Sie, ob die Datenbank (alle Knoten) heruntergefahren ist. Beenden Sie alle verbleibenden Prozesse für die Datenbank.

    ps -ef | grep <var>database_name</var>

  3. Starten Sie die Datenbank im nicht bereitgestellten Zustand mit der Sicherungsparameterdatei aus dem bereitgestellten Volume. Die Sicherungsparameterdatei befindet sich im obersten bereitgestellten Ordner, z. B. unter /acttestdb.

  4. Legen Sie die Oracle-Umgebung fest und starten Sie die Datenbank mit sqlplus:

    sqlplus / as sysdba
    
    sql> startup nomount pfile='/acttestdb/<var>database_name</var>___backup.ora';
    
  5. Erstellen Sie einen neuen spfile und starten Sie die Datenbank neu.

    So rufen Sie den Pfad der ursprünglichen spfile unter der Laufwerksgruppe ab:

    cat $ORACLE_HOME/dbs/init{database sid}.ora

    Beispiel: spfile=+{preferred disk group}/db_name/spfiledb_name.ora`

      sql> create spfile='+{preferred disk group}/{db
      name}/spfile<var>db_name</var>.ora' from pfile='/acttestdb/<var>db_name</var>___backup.ora';
    

    Starten Sie die Datenbank mit dem spfile im Status „nomount“ neu:

      sql> shutdown immediate;
    
      sql> startup nomount;
    
  6. Stellen Sie die Kontrolldatei mit RMAN aus dem bereitgestellten Archiv-Log-Image für die Sicherung und Notfallwiederherstellung wieder her. Verwenden Sie die neueste Steuerdatei aus dem

    Log mounted image, for example:<br> /acttestdb_Log/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl
    

    oder wenn mehr als ein Log vorhanden ist image:<br> /acttestdb_Log_1/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl

     rman target /
    
     rman> restore controlfile from '/acttestdb_Log_1/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl' ;
     ```
    
  1. Stellen Sie die Datenbank bereit:

    rman> alter database mount;

  2. Katalogisieren Sie den Datendatei- und Archivelog-Ordner aus dem bereitgestellten Datenbank- und Archivelog-Image von Sicherung und Notfallwiederherstellung in RMAN:

     rman> run { catalog start with '/acttestdb/datafile' noprompt;
     catalog start with '/acttestdb/archivelog' noprompt;
     catalog start with '/acttestdb_Log' noprompt;}
    
  3. So stellen Sie die Datenbank wieder her:

    rman> run { restore database ; recover database; }

    Für die Wiederherstellung zu einem bestimmten Zeitpunkt im Format TTMMJJHH24MI:

     rman> run
     {
     restore database;
     recover database until time "to_date('<var>timestamp</var>','yyyymmddhh24mi')";
     }
    
  4. Öffnen Sie die Datenbank mit der Option zum Zurücksetzen des Protokolls.

    • Für die Wiederherstellung der primären Datenbank:

    rman> alter database open resetlogs;

    Für die RAC-Konfiguration ist nach dem Zurücksetzen des Protokolls noch ein weiterer Schritt erforderlich: Fahren Sie die Datenbank auf Knoten 1 herunter und starten Sie sie auf allen Knoten.

    Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

     sqlplus / as sysdba
    
     SQL> shutdown immediate;
    

    Verwenden Sie srvctl, um die Datenbank auf allen Knoten zu starten:

     srvctl start database -d <var>database_name</var> 
    
    • Wiederherstellung der Data Guard-Standby-Datenbank:

      • Bei nicht RAC-Konfiguration: Starten Sie den von Data Guard verwalteten Wiederherstellungsprozess.

        RMAN> alter database recover managed standby database nodelay disconnect;

      • Für RAC-Konfiguration: Fahren Sie die Datenbank auf Knoten 1 herunter und starten Sie sie auf allen Knoten im bereitgestellten Zustand.

        1. Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

          sqlplus / as sysdba
          SQL> shutdown immediate;
          
        2. Verwenden Sie srvctl, um die Datenbank auf allen Knoten im Bereitstellungsstatus zu starten:

          srvctl start database -d <var>database_name</var> -o mount
          
        3. Starten Sie den von Data Guard verwalteten Wiederherstellungsprozess:

          rman> alter database recover managed standby database nodelay disconnect;
          

Die Datenbank ist für Lese- und Schreibvorgänge verfügbar.

RAC oder eigenständiges ASM, ASM-Laufwerksgruppe

Oracle-Datenbank mit Datendatei in einer ASM-Laufwerksgruppe wiederherstellen, die mit dem Staging-Laufwerkformat der ASM-Laufwerksgruppe geschützt ist

  1. Das Image aus der geschützten Quelldatenbank bereitstellen. Geben Sie im Fenster „Mount“ unter „ASM on RAC Node 1“ eine bevorzugte Laufwerksgruppe für die Image-Bindung an. Weitere Informationen zum Bereitstellen eines Datenbank-Images finden Sie unter Oracle-Datenbank-Image bereitstellen, das durch eine ASM-Laufwerkgruppe für den Datenzugriff geschützt ist.

    Beispiel auf dem Bildschirm für die Bereitstellung:

    • Host auswählen: Datenbankserver von RAC-Knoten 1

    • Bevorzugte Laufwerkgruppe: acttestdg

    • RAC-Knotenliste: IP-Adresse von RAC-Knoten 1

      Die Sicherungsparameterdatei wird beispielsweise unter /act/touch/<var>preferred_disk_group</var>/ kopiert:

      /act/touch/acttestdg/<var>database_name</var>___backup.ora

  2. Fahren Sie die Oracle-Datenbank herunter.

    Führen Sie auf Knoten 1 su für den Oracle-Betriebssystemnutzer aus:

     su - oracle
    

    Legen Sie die Oracle-Umgebung fest. Verwenden Sie srvctl, um die Datenbank auf allen Knoten zu beenden:

     srvctl stop database -d <var>database_name</var>
    

    Prüfen Sie, ob die Datenbank (auf allen Knoten) heruntergefahren wurde. Beenden Sie alle verbleibenden Prozesse für die Datenbank.

    ps -ef | grep <var>db_name</var>
    
  3. Starten Sie die Datenbank im Status „nomount“ mit der Sicherungsparameterdatei, die unter /act/touch/acttestdg kopiert wurde.

  4. Legen Sie die Oracle-Umgebung fest. Starten Sie die Datenbank mit sqlplus:

    ```
    sqlplus / as sysdba
    
    sql> startup nomount pfile='/act/touch/acttestdg/<var>db_name</var>___backup.ora';
    ```
    
  5. Erstellen Sie einen neuen spfile und starten Sie die Datenbank neu.

    So rufen Sie den Pfad der ursprünglichen spfile unter der Laufwerksgruppe ab:

     `cat $ORACLE_HOME/dbs/init(database sid).ora`
    

    Beispiel: spfile=+preferred disk group/db_name/spfiledb_name.ora

         sql> create spfile='+<var>preferred disk group</var>/<var>db_name</var>/spfile<var>db_name</var>.ora' from pfile='/act/touch/acttestdg/<var>db_name</var>___backup.ora';
    

    Starten Sie die Datenbank mit dem spfile im Status „nomount“ neu:

     ```
     sql> shutdown immediate;
     sql> startup nomount;
     ```
    
  6. Stellen Sie die Kontrolldatei mit RMAN aus dem bereitgestellten Archive-Log-Image für die Sicherung und Notfallwiederherstellung wieder her. Verwenden Sie die neueste Kontrolldatei aus dem bereitgestellten Protokoll-Image, z. B.:
    /acttestdb_Log/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl oder, wenn mehrere Protokoll-Images vorhanden sind:
    /acttestdb_Log_1/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl

     ```
     rman target /
     rman> restore controlfile from '/acttestdg_Log_1/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl' ;
     ```
    
  7. Stellen Sie die Datenbank bereit:

     rman> alter database mount;
    
  8. Katalogisieren Sie den Datendatei- und Archivelog-Ordner aus dem bereitgestellten Datenbank-Image für die Sicherung und Notfallwiederherstellung und dem Archivelog-Image in RMAN:

     ```
     rman> run { catalog start with '+acttestdg/<var>db_name</var>/datafile' noprompt;
     catalog start with '+acttestdg/<var>db_name</var>/archivelog' noprompt;
     catalog start with '/acttestdg_Log' noprompt;}
     ```
    
  9. So stellen Sie die Datenbank wieder her:

     rman> run { restore database ; recover database ; }
    

    Führen Sie für die Wiederherstellung zu einem bestimmten Zeitpunkt den Befehl „recover“ wie unten beschrieben aus:

     ```
     rman> run
     {
     restore database;
     recover database until time "to_date('<var>timestamp</var>','yyyymmddhh24mi')";
     }
     ```
    
  10. Öffnen Sie die Datenbank mit der Option zum Zurücksetzen des Protokolls.

    • Für die Wiederherstellung der primären Datenbank:

      rman> alter database open resetlogs;

      Für die RAC-Konfiguration ist noch ein weiterer Schritt erforderlich: Nach dem Zurücksetzen des Protokolls müssen Sie die Datenbank auf Knoten 1 herunterfahren und auf allen Knoten starten. Beenden Sie die Datenbank mit sqlplus:

       sqlplus / as sysdba
      
       SQL> shutdown immediate;
      

      Verwenden Sie srvctl, um die Datenbank auf allen Knoten zu starten:

       srvctl start database -d <var>database_name</var> 
      
    • Wiederherstellung der Data Guard-Standby-Datenbank:

      • Bei einer nicht RAC-Konfiguration: Starten Sie den von Data Guard verwalteten Wiederherstellungsprozess:

        rman> alter database recover managed standby database nodelay disconnect;
        
      • Für RAC-Konfiguration: Fahren Sie die Datenbank auf Knoten 1 herunter und starten Sie sie auf allen Knoten im bereitgestellten Zustand.

        1. Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

          sqlplus / as sysdba
          SQL> shutdown immediate;
          
        2. Verwenden Sie srvctl, um die Datenbank auf allen Knoten im Bereitstellungsstatus zu starten:

          srvctl start database -d <var>database_name</var> -o mount
          
        3. Starten Sie den von Data Guard verwalteten Wiederherstellungsprozess:

          rman> alter database recover managed standby database nodelay disconnect;
          

    Die Datenbank ist für Lese- und Schreibvorgänge verfügbar.

Oracle-Tablespace und Datendateien wiederherstellen

So stellen Sie eine einzelne Tablespace-Datendatei wieder her, z. B. aufgrund von Datenbeschädigungen:

  1. Verbinden Sie den neuesten Datenbank-Snapshot von der Sicherungs-/Wiederherstellungs-Appliance wieder mit dem Oracle-Server.

  2. Katalogisieren Sie den Snapshot der Datenbanksicherung in RMAN.

  3. Stellen Sie den Tablespace mit dem Sicherungs-Snapshot wieder her, wie hier beschrieben.

Einen einzelnen Tablespace einer Produktionsdatenbank in einer ASM-Laufwerksgruppe wiederherstellen

So stellen Sie einen einzelnen Tablespace einer Produktionsdatenbank auf dem primären Knoten wieder her:

  1. Stellen Sie den Datenbank-Snapshot wie unter Oracle-Datenbank als Standard-Mount bereitstellen beschrieben bereit.

  2. Geben Sie im Fenster „Bereitstellen“ unter „Zuordnungsoptionen“ einen Bereitstellungsort für das Image an. Geben Sie beispielsweise für ein Image unter „ASM-Laufwerksgruppe“ einen Laufwerksgruppennamen unter „Bevorzugte Laufwerksgruppe“ und für ein Image unter „Dateisystem“ einen Bereitstellungsort wie /acttestdb an.

  3. Melden Sie sich auf dem Hauptknoten als Oracle-Nutzer an.

  4. Legen Sie die Datenbankumgebung fest und melden Sie sich bei RMAN an:

    rman target /
    
  5. Katalogisieren Sie die Sicherungsdatendatei und den Archivprotokollordner an der RMAN-Eingabeaufforderung:

    Beispiel: Ein Datenbank-Image, das über die ASM-Laufwerksgruppe geschützt ist: (Name der bereitgestellten ASM-Laufwerksgruppe „+ acttestdg“):

    ```rman
    rman> catalog start with '+acttestdg/<var>db_name</var>/datafile' noprompt;
    rman> catalog start with '+acttestdg/<var>db_name</var>/archivelog' noprompt;
    rman>catalog start with &#8216;/<var>mountpoint_log</var>'; noprompt;
    (If archivelogs are protected by Backup and DR)
    ```
    

    Beispiel: Ein Datenbank-Image, das über das Dateisystem geschützt ist (Name des bereitgestellten Dateisystems „/acttestdb“):

    ```rman
    rman> catalog start with '/acttestdb/datafile' noprompt;
    rman> catalog start with '/acttestdb/archivelog'
    noprompt;
    rman> catalog start with '/acttestdb_log/archivelog' noprompt;
    ```
    
    (If archivelogs are protected by Backup and DR)
    

    Jetzt können Sie alle RMAN-Wiederherstellungsbefehle ausführen, z. B.:

  6. Wenn Sie fertig sind, trennen und löschen Sie das Image.

Tablespace wiederherstellen

So stellen Sie einen Tablespace wieder her:

    ```rman
    rman> restore tablespace <var>tablespace name</var>;
    rman> recover tablespace <var>tablespace name</var>;
    ```

Datendatei wiederherstellen

So stellen Sie eine Datendatei wieder her:

    ```rman
    rman> restore datafile <var>file#</var>;
    rman> recover datafile <var>file#</var>;
    ```

Beschädigten Datenbankblock wiederherstellen

So stellen Sie einen beschädigten Datenbankblock wieder her:

  1. Stellen Sie den Datenbank-Snapshot wie unter Oracle-Datenbank als Standard-Mount bereitstellen beschrieben bereit.

  2. Geben Sie im Fenster Bereitstellen unter Zuordnungsoptionen einen Bereitstellungsort für das Image an. Geben Sie beispielsweise für ein Image in einer ASM-Laufwerksgruppe unter „Bevorzugte Laufwerksgruppe“ einen Laufwerksgruppennamen und für ein Image in einem Dateisystem einen Bereitstellungsort an, z. B. /acttestdb.

  3. Melden Sie sich auf dem Hauptknoten als Oracle-Nutzer an.

  4. Richten Sie die Datenbankumgebung ein, melden Sie sich in sqlplus an und führen Sie dann eine Abfrage für v$database_block_corruption aus, um die beschädigten Blöcke zu prüfen:

    ```sh
    sqlplus / as sysdba
    sql> SELECT * FROM V$DATABASE_BLOCK_CORRUPTION;
    ```
    
  5. Melden Sie sich in RMAN an, um alle beschädigten Blöcke wiederherzustellen:

    ```rman
    rman target /
    rman> RECOVER CORRUPTION LIST;
    ```
    

    Nachdem die Blöcke wiederhergestellt wurden, werden sie aus V$DATABASE_BLOCK_CORRUPTION entfernt.

  6. So stellen Sie einen einzelnen beschädigten Block wieder her (z. B. Datendatei 8 und Block 13):

    Über die RMAN-Eingabeaufforderung

    ```rman
    RMAN> recover datafile 8 block 13;
    ```
    

Verlorene Steuerdateien wiederherstellen

So stellen Sie verlorene Steuerdateien wieder her:

  1. Stellen Sie den Datenbank-Snapshot wie unter Oracle-Datenbank als Standard-Mount bereitstellen beschrieben bereit.

  2. Geben Sie im Fenster Bereitstellen unter Zuordnungsoptionen einen Bereitstellungsort für das Image an. Geben Sie beispielsweise für ein Image unter „ASM-Laufwerksgruppe“ einen Laufwerksgruppennamen unter „Bevorzugte Laufwerksgruppe“ und für ein Image unter „Dateisystem“ einen Bereitstellungsort wie /acttestdb an.

  3. Melden Sie sich auf dem Hauptknoten als Oracle-Nutzer an.

  4. Richten Sie die Datenbankumgebung ein und melden Sie sich in SQL*Plus an. Beenden Sie dann die Datenbank und starten Sie sie im Status „nomount“:

    Für eigenständige Datenbank:

    ```sql
    sqlplus / as sysdba
    sql> shutdown immediate;
    sql> startup nomount;
    ```
    

    Für RAC-Datenbanken: Fahren Sie die Datenbank über alle Knoten hinweg vom bereitgestellten Image-Knoten aus herunter:

    ```sh
    srvctl stop database -d <var>db_name</var>
    sql> startup nomount;
    ```
    
  5. Stellen Sie die Kontrolldatei aus dem bereitgestellten Sicherungs- und Notfallwiederherstellungs-Image wieder her.

    Beispiel: /acttestdb (Dateisystem) und +acttestdg (für ASM)

    ```rman
    rman target /
    rman> restore controlfile
    from '/acttestdb/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl' ; (Filesystem
    mount)
    rman> restore controlfile
    from '+acttestdb/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl' ; (ASM
    mount)
    ```
    
  6. Sie können die Datenbank über sqlplus bereitstellen und öffnen:

    ```sql
    sqlplus / as sysdba
    sql> alter database mount;
    sql> recover database until cancel;
    sql> alter database open resetlogs;
    ```
    

Pluggable Oracle-Datenbank wiederherstellen

So stellen Sie eine Plug-in-Datenbank (PDB) von Oracle 12c oder höher wieder her:

  1. Sie müssen das Image vom Quelldatenbankserver bereitstellen, um es wiederherzustellen. Geben Sie im Fenster Mount eine bevorzugte Laufwerksgruppe für die Image-Bindung unter ASM auf RAC-Knoten 1 an. Weitere Informationen zum Bereitstellen eines Datenbank-Images finden Sie unter Oracle-Datenbank-Image bereitstellen, das für den Datenzugriff unter der ASM-Laufwerksgruppe geschützt ist.

  2. Schließen Sie die Plug-in-Datenbank:

    1. Von Knoten 1, su, an Oracle-Nutzer

      su - oracle

    2. Legen Sie die Oracle-Umgebung fest. Stellen Sie eine Verbindung zur Oracle-Datenbank als Nutzer „sysdba“ her:

         sqlplus / as sysdba
         SQL> alter pluggable database <var>pluggable_db_name</var> close;
      
  3. Katalogisieren Sie den Datendatei- und Archivelog-Ordner aus dem bereitgestellten Datenbank- und Archivelog-Image von Sicherung und Notfallwiederherstellung in RMAN:

        rman> run { catalog start with '+acttestdg/<var>db_name</var>/datafile' noprompt;
        catalog start with '+acttestdg/<var>db_name</var>/archivelog' noprompt;
        catalog start with '/acttestdg_Log' noprompt;
        }
    
  4. Plug-in-Datenbank wiederherstellen

        rman> run
        {
        restore pluggable database <var>pluggable_db_name</var>;
        recover pluggable database <var>pluggable_db_name</var> until time "to_date('<var>required time stamp</var>>';,';yyyymmddhh24mi')";
        }
    
  5. Öffnen Sie die Plug-in-Datenbank:

        rman> alter pluggable database <var>pluggable_db_name</var> open;
    

Die Plug-in-Datenbank ist für Lese- und Schreibvorgänge geöffnet.

Der Oracle DBA-Leitfaden