Oracle Database-Backups konfigurieren

Sichern Sie eine On-Premise-Datenbank in einem OCI Object Storage-Bucket.

Oracle Database-Backupmodul in der Quelldatenbank installieren

Erstellen Sie ein Backup von OCI, indem Sie zuerst das Oracle Database Cloud Backup-Modul für OCI installieren.

Laden Sie das Modul herunter (siehe Bevor Sie beginnen), und installieren Sie es auf Ihrem Datenbankserver.
  1. Installieren Sie das Modul auf dem Quelldatenbankserver.
  2. Wechseln Sie in das Verzeichnis oci_installer mit der JAR-Datei.
  3. Installieren Sie die JAR-Datei.
  4. Geben Sie Folgendes ein:
    • Bereichs-ID
    • Public-Key-Fingerprint
    • Mandanten-OCID
    • Benutzer-OCID
    • Compartment-OCID
    • Bucket-Name, den Sie zuvor erstellt haben
  5. Verzeichnisse bereitstellen für:
    • Bibliothek
    • Wallet
    • Private Key-Datei
    java -jar oci_install.jar \ 
    -host https://objectstorage.us-langley-1.oraclegovcloud.com -pvtKeyFile /tmp/-01-31-22-38.pem \ 
    -pubFingerPrint 2k:cd:cv:71:6f:ab:6f:xz:ef:72:gh:cc \ 
    -uOCID ocid1.user.oc2..aaaaaabc \ 
    -tOCID ocid1.tenancy.oc2..aaaaadef \ 
    -walletDir $ORACLE_HOME/lib/oci_wallet \
    -libDir $ORACLE_HOME/lib -bucket bucket-20230131-1601-modbac \ -cOCID ocid1.compartment.oc2..aaaaaghi

    Weitere Informationen zum Erfassen von Fingerprint, Mandanten, Benutzer-OCIDs und behördenspezifischen Endpunkten finden Sie unter "Weitere Informationen". Navigieren Sie für die Compartment-OCID zu "Identität und Sicherheit" und unter "Identitäts-Compartments". Klicken Sie auf das Compartment, das Sie für die OCID benötigen, und kopieren Sie die OCID.

RMAN zur Unterstützung von Cloud-Backups konfigurieren

Nachdem Sie das erforderliche Backupmodul installiert und Recovery Manager-(RMAN-)Einstellungen konfiguriert haben, können Sie Backups mit bekannten RMAN-Befehlen erstellen. Informationen zu Ihren Cloud-Backups werden in der Datenbankkontrolldatei und im Recovery-Katalog verwaltet, wenn Sie eines verwenden.

Einige RMAN-Eigenschaften müssen vor dem Backup des Cloud-Speicherorts in Ihrem Account konfiguriert werden:

  • Aufbewahrungszeitraum für Backups festlegen (30 Tage).
  • Richten Sie einen Gerätetyp mit dem Namen sbt_tape ein, der die gerade installierten Bibliotheks- und Konfigurationsdateien verwendet. Beachten Sie, dass alle definierten Speicher-Chunks in der Cloud Namen haben, die mit onPremBackup_ beginnen.
  • Verschlüsselung wird aktiviert. Dies dient der Datensicherheit und ist für ein On-Premise-zu-Cloud-Backupszenario obligatorisch.
  • Legen Sie einen Parallelisierungsgrad fest, sodass mehrere Threads Backup und Wiederherstellung Ihrer Datendateien durchführen. Dient zur Performance.
  • Die Backupoptimierung wird auf ON gesetzt, sodass RMAN keine unnötigen Übertragungen in und aus der Cloud ausführt (z.B. wenn eine Backupdatei bereits vorhanden ist und keine Änderungen vor der Ausführung eines "neuen" Backups vorgenommen hat, wird diese Datei nicht behandelt, wodurch Zeit gespart wird).
  • Komprimierungsebene für die Dateien festlegen, die in die und aus der Cloud geleitet werden.
  • Konfigurieren Sie das Gerät sbt_tape als Standard für alle Backups.
  • Melden Sie RMAN bei der lokalen Datenbank an. Verwenden Sie dazu:
    RMAN> run {
    
    configure retention policy to recovery window of 30 days;
    
    CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' MAXPIECESIZE 2 G FORMAT 'onPremBackup' PARMS 'SBT_LIBRARY=/u01/app/oracle/product/19c/dbhome_1/lib/libopc.so ENV=(OPC_PFILE=/u01/app/oracle/product/19c/dbhome_1/dbs/opcORCL.ora)';
    
    configure encryption for database on;
    
    configure device type 'sbt_tape' parallelism 1 backup type to backupset;
    
    configure backup optimization on;
    
    configure compression algorithm 'MEDIUM' as of release 'default' optimize for load true;
    
    configure default device type to sbt_tape;
    
    }

Sichern der On-Premise-Datenbank

Aus Sicherheitsgründen muss für das Backup in OCI die Verschlüsselung verwendet werden. Folgende Optionen stehen zur Verfügung: transparente Datenverschlüsselung (TDE) und/oder Passwortverschlüsselung. Wir verwenden hier die Passwortverschlüsselung.

Führen Sie für Backup und Recovery diese Befehlsfolge von einem Shell-Skript oder einem RMAN-Ausführungsblock aus.
  1. Legen Sie die Kennwortverschlüsselung fest.
    RMAN> set encryption on identified by ‘password’ only;
  2. Führen Sie den Backupbefehl aus.
    RMAN> backup as compressed backupset tag ‘onprem’ database plus archivelog;
  3. Hinweis:

    Beim Erstellen eines Backups werden die Dateichunks in einem benutzerdefinierten Objektspeicher-Bucket db_backups im Compartment abgelegt, oder er verwendet einen systemgenerierten Container namens oracle-data-storage-xxx. Wir können prüfen, ob das Backup in der Cloud ausgeführt wurde, nachdem der Backupbefehl abgeschlossen ist.
    Prüfen Sie mit RMAN die Backupdateien, indem Sie eine Zusammenfassung des Listenbackups eingeben.
    RMAN> create restore point gold preserve;
  4. Beenden Sie RMAN.

Backups in OCI Cloud validieren

Validieren Sie die Backups in Oracle Cloud Infrastructure Object Storage. Nach der Validierung können Sie die zu testende Tabelle löschen und mit der Wiederherstellung fortfahren.

  1. Öffnen Sie die Oracle Cloud-Konsole.
  2. Öffnen Sie Object Storage.
    • Klicken Sie im Hauptmenü auf Speicher, Objektspeicher.
    • Geben Sie in die Suchleiste "object Storage" ein, und drücken Sie die Eingabetaste.
  3. Wählen Sie im Listengeltungsbereich das Compartment aus.
    Dadurch wird der gesicherte Bucket mit einem vom Benutzer generierten Namen oder einem vom System generierten Namen angezeigt.
  4. Wählen Sie den Backup-Bucket aus, um file_chunks des Backupsets anzuzeigen.

Wiederherstellung und Recovery der Datenbank testen

Stellen Sie die Datenbank bis zum Zeitpunkt vor dem Löschen der Datenbank wieder her.

  1. Wechseln Sie zur RMAN-Session.
    rman target /
  2. Fahren Sie die Datenbank herunter.
    RMAN>Shutdown immediate;
  3. Starten Sie den Mount.
    RMAN>Startup mount
  4. Entschlüsseln Sie das Kennwort.
    RMAN> set decryption identified by ‘Oracle_1’;
  5. Hinweis:

    Mit den folgenden Schritten wird die gesamte Datenbank an einen Punkt gebracht, an dem Media Recovery stattfinden kann. Dadurch wird die Datenbank offline gesetzt. Wenn mehrere PDBs in der Datenbank vorhanden sind und nur Daten in einer wiederhergestellt werden müssen, während die anderen PDBs online bleiben, können Sie die PDB nur mit den Schritten schließen, wiederherstellen und wiederherstellen. Die Verwendung dieser Methode dauert etwas länger. Daher stellen wir für diese Anweisungen die gesamte Datenbank wieder her.
    Stellen Sie die gesamte Datenbank wieder her.
    RMAN> run {
    restore database;
    
    Recover database to restore point gold;
    
    Alter database open reset logs;
    
        }

    Hinweis:

    Dieses Backup-Skript kann zur Automatisierung des Backup-Prozesses täglich oder wöchentlich mit cronjob ausgeführt werden.
  6. Prüfen Sie die Datenbank, indem Sie einen Abfragebefehl in der Datenbank ausführen.
    Dies sollte die wiederhergestellten Datenbanken anzeigen.