Oracle-Datenbank wiederherstellen

Datenbank mit der Verwaltungskonsole wiederherstellen

Beim Wiederherstellen der Originaldatenbank werden die ursprünglichen Produktionsanwendungsdaten durch das angegebene Point-in-Time-Image ersetzt. Bei dieser Wiederherstellung gehen alle aktuellen Anwendungsdaten verloren, da die Anwendung auf den Zustand zurückgesetzt wird, den sie zum Zeitpunkt der Erstellung des Images hatte. Dieser Vorgang kann nicht rückgängig gemacht werden. Die für einen Wiederherstellungsvorgang erforderliche Zeit hängt von der Menge der beteiligten Daten ab. Sie können eine Datenbank auch in einem anderen Ziel wiederherstellen.

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

  1. Öffnen Sie die Management Console im App Manager und geben Sie den Namen der Datenbankanwendung ein oder verwenden Sie die Filter, um das benötigte 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 Bild aus und klicken Sie unter dem Menü Einbinden auf Wiederherstellen.

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

  5. Mit dem Schieberegler Restore Range (Wiederherstellungsbereich) können Sie einen bestimmten Zeitpunkt für die Wiederherstellung der Datenbank auswählen. Schieben Sie den Schieberegler ganz nach links, um nur die Datenbank ohne angewendete Logs wiederherzustellen.

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

  7. Geben Sie für Number of Channels (Anzahl der Channels) die Anzahl der RMAN-Channels an, mit denen die Parallelität für die Datenbankwiederherstellung konfiguriert werden soll.

  8. Klicken Sie auf Senden.

  9. Ein Warnhinweis wird angezeigt. Lesen Sie sie und geben Sie zur Bestätigung 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 (Job-Monitor) verfolgen.

Datenbank mit der Verwaltungskonsole auf einem beliebigen Ziel wiederherstellen

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

  1. Klicken Sie in der Liste App Manager > Applications (App-Manager > Anwendungen) mit der rechten Maustaste auf die Datenbank und wählen Sie Access (Zugriff) aus.
  2. Wählen Sie das wiederherzustellende Reservebild aus und klicken Sie auf Wiederherstellen.
  3. Wählen Sie auf der Seite „Wiederherstellen“ die Option Traditionell aus.

    • Ziel: Bei allen Konfigurationen können Sie alle infrage kommenden Oracle-Datenbankserver aus dem Drop-down-Menü auswählen. Wählen Sie den Zielserver für die Wiederherstellung aus dem Drop-down-Menü aus.
    • Identität der ursprünglichen Anwendung ersetzen: Diese Option ist nur verfügbar, wenn Sie die Sicherung auf einem neuen Server auf derselben Appliance wiederherstellen, 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: Dies ersetzt nicht die ursprüngliche Anwendung. Die neue Datenbank wird im Rahmen des Wiederherstellungsjobs als neue Anwendung erkannt.
    • Rollforward-Zeit: Wählen Sie ein Datum und eine Uhrzeit für die Wiederherstellung einer mit Protokollen geschützten Datenbank bis zum erforderlichen Zeitpunkt aus.
    • Anwendungsoptionen:

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

    • Target Database Type (Zieldatenbanktyp): Wählen Sie den Datenbankzieltyp (ASM-Diskgroup oder Dateisystem) für die Datenbank aus der Drop-down-Liste aus. Der Dateisystem-Zieltyp wird für Reservebilder im ASM-Format nicht unterstützt.

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

  5. Klicken Sie auf Pre-Flight Check. 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 mit RMAN manuell wiederherstellen

Informationen zum manuellen Wiederherstellen einer Oracle-Datenbank finden Sie in diesen Anleitungen.

Nicht-RAC, Nicht-ASM, Dateisystem

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

  1. Stellen Sie das Image aus der geschützten Quelldatenbank bereit.

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

    Das Datenbanksicherungs-Image wird unter /acttestdb bereitgestellt.

    Das Protokoll des geschützten Archivs wird unter /acttestdb_Log bereitgestellt.

  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 database sid
    
  3. Starten Sie die Datenbank im Status „nomount“ (nicht bereitgestellt) mit der Sicherungsparameterdatei aus dem bereitgestellten Volume. Die Sicherungsparameterdatei befindet sich im oben eingebundenen 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/database sid___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:

    create spfile='$ORACLE_HOME/dbs/spfile_database sid.ora' from pfile='/acttestdb/database sid___backup.ora';
    

    Starten Sie die Datenbank mit der SPFILE im Status „nomount“ neu:

    shutdown immediate;
    startup nomount;
    
  6. Stellen Sie die Steuerdatei mit RMAN aus dem bereitgestellten Archivlog-Image von Backup and DR wieder her. Verwenden Sie die aktuelle Steuerdatei aus dem bereitgestellten Log-Image, z. B.:

    /acttestdb_Log/cf D_sid-id_Target SID.ctl
    

    oder wenn es mehr als ein Logbild gibt:

    /acttestdb_Log_1/cf-D_sid-id_Target SID.ctl

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

       alter database mount;
    
  8. Katalogisieren Sie die Datendatei und den Archivelog-Ordner aus dem in Backup and DR bereitgestellten Datenbank-Image und Archivelog-Image in RMAN:

       run {
         catalog start with '+acttestdg/db_name/datafile' noprompt;
         catalog start with '+acttestdg/db_namearchivelog' noprompt;
         catalog start with 'mountpoint_log' noprompt;
         }
    
  9. Stellen Sie die Datenbank wieder her:

      run { restore database ; recover database; }
    

    Für die Wiederherstellung zu einem bestimmten Zeitpunkt im Format „jjjjmmddhh24mi“:

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

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

      alter database open resetlogs;
      
    • Starten Sie für die Wiederherstellung der Data Guard-Standby-Datenbank den von Data Guard verwalteten Wiederherstellungsprozess:

      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 der ASM-Laufwerksgruppe wiederherstellen, die mit dem dateibasierten Staging-Laufwerksformat geschützt ist

  1. Stellen Sie das Image aus der geschützten Quelldatenbank bereit.

    Geben Sie im Fenster „Mount“ unter „Mapping Options“ (Zuordnungsoptionen) einen Mount-Speicherort für das Bild an, z. B. /acttestdb. Eine Anleitung zum Mounten eines Datenbank-Images finden Sie unter Mounting an Oracle Database Image Protected Under a File System for Data Access.

    Das Datenbank-Sicherungsimage wird am Bereitstellungspunkt /acttestdb bereitgestellt.

    Das Protokoll des geschützten Archivs wird unter /acttestdb_Log bereitgestellt.

  2. Fahren Sie die Oracle-Datenbank herunter. Wechseln Sie auf Knoten 1 mit dem Befehl „su“ zum Oracle-Betriebssystemnutzer:

    su - oracle

    Legen Sie die Oracle-Umgebung fest und 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 heruntergefahren ist (alle Knoten). Beenden Sie alle verbleibenden Prozesse für die Datenbank.

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

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

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

    sqlplus / as sysdba
    startup nomount pfile='/acttestdb/<var>database_name</var>___backup.ora';
    
  5. Erstellen Sie eine neue SPFILE und starten Sie die Datenbank neu.

    So rufen Sie den Pfad der ursprünglichen SPFILE unter der Festplattengruppe ab:

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

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

      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 der SPFILE im Status „nomount“ neu:

      shutdown immediate;
      startup nomount;
    
  6. Stellen Sie die Steuerdatei mit RMAN aus dem bereitgestellten Archivlog-Image von Backup and DR wieder her. Verwenden Sie die aktuelle Steuerdatei aus dem im Log eingebundenen Image, z. B.:

    /acttestdb_Log/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl
    

    oder wenn Sie mehr als ein Logbild haben:

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

     alter database mount;
    
  8. Katalogisieren Sie die Datendatei und den Archivelog-Ordner aus dem in Backup and DR bereitgestellten Datenbank-Image und Archivelog-Image in RMAN:

     run { catalog start with '/acttestdb/datafile' noprompt;
     catalog start with '/acttestdb/archivelog' noprompt;
     catalog start with '/acttestdb_Log' noprompt;}
    
  9. Stellen Sie die Datenbank wieder her:

     run { restore database ; recover database; }
    

    Für die Wiederherstellung zu einem bestimmten Zeitpunkt im Format „jjjjmmddhh24mi“:

     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:
    alter database open resetlogs;
    

    Die RAC-Konfiguration erfordert nach dem Zurücksetzen des Logs einen weiteren Schritt: Fahren Sie die Datenbank auf Knoten 1 herunter und starten Sie die Datenbank auf allen Knoten.

    Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

      sqlplus / as sysdba
      shutdown immediate;
      ```
    Use srvctl to start the database across all nodes:
    
     ```srvctl
      srvctl start database -d <var>database_name</var>
      ```
    + For Data Guard standby database recovery:
    
      + For non-RAC config: Start the Data Guard managed recovery process
    
          ```rman
          alter database recover managed standby database nodelay disconnect;
          ```
    
      + For RAC config: Shut down the database on node 1 and start the
        database in mounted state across all nodes.
    
         1. Use sqlplus to shut down the database:
    
              ```sqlplus
              / as sysdba
              shutdown immediate;
              ```
    
         1. Use srvctl to start the database in a mount state across all
            nodes:
    
             ```srvctl
             srvctl start database -d <var>database_name</var> -o mount
             ```
    
         1. Start the Data Guard managed recovery process:
    
             ```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 ASM-Laufwerksgruppe wiederherstellen, die im ASM-Laufwerksgruppen-Staging-Laufwerkformat geschützt ist

  1. Stellen Sie das Image aus der geschützten Quelldatenbank bereit. Geben Sie im Fenster „Mount“ (Bereitstellen) unter „ASM on RAC Node 1“ (ASM auf RAC-Knoten 1) eine bevorzugte Laufwerksgruppe für die Image-Bereitstellung an. Weitere Informationen zum Bereitstellen eines Datenbank-Images finden Sie unter Mounting an Oracle Database Image Protected Under an ASM Disk Group for Data Access.

    Beispiel:

    • Host auswählen: Datenbankserver für RAC-Knoten 1

    • Bevorzugte Laufwerkgruppe: acttestdg

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

      Die Sicherungsparameterdatei wird unter /act/touch/<var>preferred_disk_group</var>/ kopiert, z. B.:

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

  2. Fahren Sie die Oracle-Datenbank herunter.

    Wechseln Sie auf Knoten 1 mit dem Befehl „su“ zum Oracle-Betriebssystemnutzer:

     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“ (nicht bereitgestellt) 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
    startup nomount pfile='/act/touch/acttestdg/<var>db_name</var>___backup.ora';
    ```
    
  5. Erstellen Sie eine neue SPFILE und starten Sie die Datenbank neu.

    So rufen Sie den Pfad der ursprünglichen SPFILE unter der Festplattengruppe ab:

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

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

         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 der SPFILE im Status „nomount“ neu:

     ```sql
     shutdown immediate;
     startup nomount;
     ```
    
  6. Stellen Sie die Steuerdatei mit RMAN aus dem eingebundenen Archivlog-Image von Backup and DR wieder her. Verwenden Sie die aktuelle Steuerdatei aus dem bereitgestellten Log-Image, z. B.
    /acttestdb_Log/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl oder, wenn mehrere Log-Images vorhanden sind:
    /acttestdb_Log_1/cf-D_<var>db_name</var>-id_<var>db_id</var>.ctl.

     ```rman
     rman target /
     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 die Datendatei und den Archivelog-Ordner aus dem in Backup and DR bereitgestellten Datenbank-Image und 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. Stellen Sie die Datenbank wieder her:

     ```rman
     run { restore database ; recover database ; }
     ```
    

    Führen Sie für eine Wiederherstellung zu einem bestimmten Zeitpunkt den Befehl „recover“ wie unten 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:

       alter database open resetlogs;
      

      Die RAC-Konfiguration erfordert einen weiteren Schritt: Nach dem Zurücksetzen des Logs muss die Datenbank auf Knoten 1 heruntergefahren und auf allen Knoten gestartet werden. Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

       / as sysdba
       shutdown immediate;
      

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

       start database -d <var>database_name</var>
      
    • Für die Wiederherstellung der Data Guard-Standby-Datenbank:

      • Für Nicht-RAC-Konfiguration: Starten Sie den von Data Guard verwalteten Wiederherstellungsprozess:

        alter database recover managed standby database nodelay disconnect;
        
      • Bei der RAC-Konfiguration: Fahren Sie die Datenbank auf Knoten 1 herunter und starten Sie sie auf allen Knoten im bereitgestellten Status.

        1. Verwenden Sie sqlplus, um die Datenbank herunterzufahren:

          as sysdba
          shutdown immediate;
          
        2. Verwenden Sie srvctl, um die Datenbank auf allen Knoten im Mount-Status zu starten:

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

          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 beispielsweise eine einzelne Tablespace-Datendatei aufgrund von Datenbeschädigung wieder her:

  1. Hängen Sie den neuesten Datenbank-Snapshot von der Sicherungs-/Wiederherstellungs-Appliance wieder auf dem Oracle-Server ein.

  2. Katalogisieren Sie den Datenbank-Sicherungs-Snapshot 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. Hängen Sie den Point-in-Time-Snapshot der Datenbank wie unter Oracle-Datenbank als Standardmount einhängen beschrieben ein.

  2. Geben Sie im Fenster „Mount“ unter „Mapping Options“ (Zuordnungsoptionen) einen Mount-Speicherort für das Bild an. Geben Sie beispielsweise für ein Image unter der ASM-Laufwerksgruppe einen Laufwerksgruppennamen unter „Bevorzugte Laufwerksgruppe“ und für ein Image unter dem Dateisystem einen Mount-Pfad wie /acttestdb an.

  3. Melden Sie sich vom primären Knoten aus als Oracle-Betriebssystemnutzer beim Datenbankserver an.

  4. Richten Sie die Datenbankumgebung ein und melden Sie sich im RMAN an:

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

    Beispiel: Ein Datenbank-Image, das durch eine ASM-Laufwerksgruppe geschützt ist (Name der eingebundenen ASM-Laufwerksgruppe: „+ acttestdg“):

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

    Beispiel: Ein Datenbank-Image, das durch das Dateisystem geschützt ist (gemounteter Dateisystemname „/acttestdb“):

    ```rman
    catalog start with '/acttestdb/datafile' noprompt;
    catalog start with '/acttestdb/archivelog'
    noprompt;
    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, heben Sie die Bereitstellung des Images auf und löschen Sie es.

Tablespace wiederherstellen

So stellen Sie einen Tablespace wieder her:

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

Datendatei wiederherstellen

So stellen Sie eine Datendatei wieder her:

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

Beschädigten Datenbankblock wiederherstellen

So stellen Sie einen beschädigten Datenbankblock wieder her:

  1. Hängen Sie den Point-in-Time-Snapshot der Datenbank ein, wie unter Oracle-Datenbank als Standardmount einhängen beschrieben.

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

  3. Melden Sie sich vom primären Knoten aus als Oracle-Betriebssystemnutzer beim Datenbankserver an.

  4. Legen Sie die Datenbankumgebung fest und melden Sie sich bei sqlplus an. Fragen Sie dann v$database_block_corruption ab, um die beschädigten Blöcke zu prüfen:

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

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

    Nachdem die Blöcke wiederhergestellt wurden, werden sie von der Datenbank 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
    recover datafile 8 block 13;
    ```
    

Verlorene Steuerdateien wiederherstellen

So stellen Sie verlorene Steuerdateien wieder her:

  1. Hängen Sie den Point-in-Time-Snapshot der Datenbank wie unter Oracle-Datenbank als Standardmount einhängen beschrieben ein.

  2. Geben Sie im Fenster Bereitstellen unter Zuordnungsoptionen einen Bereitstellungspfad für das Image an. Geben Sie beispielsweise für ein Image in einer ASM-Laufwerksgruppe einen Laufwerksgruppennamen unter „Preferred Disk Group“ (Bevorzugte Laufwerksgruppe) an und für ein Image im Dateisystem einen Mount-Speicherort wie /acttestdb.

  3. Melden Sie sich vom primären Knoten aus als Oracle-Betriebssystemnutzer beim Datenbankserver an.

  4. Legen Sie die Datenbankumgebung fest, melden Sie sich bei sqlplus an, fahren Sie die Datenbank herunter und starten Sie sie im Status „nomount“:

    Für eine eigenständige Datenbank:

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

    Fahren Sie für die RAC-Datenbank über den bereitgestellten Image-Knoten die Datenbank auf allen Knoten herunter:

    ```sh
    srvctl stop database -d <var>db_name</var>
    sql> startup nomount;
    ```
    
  5. Stellen Sie die Steuerdatei aus dem eingebundenen Image von Backup and DR wieder her.

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

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

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

Oracle-Plug‑in-Datenbank wiederherstellen

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

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

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

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

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

         / as sysdba
         alter pluggable database <var>pluggable_db_name</var> close;
      
  3. Katalogisieren Sie die Datendatei und den Archivelog-Ordner aus dem in Backup and DR bereitgestellten Datenbank-Image und Archivelog-Image in 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 und reparieren

        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:

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

Die PDB ist für Lese- und Schreibvorgänge geöffnet.

Oracle DBA-Leitfaden