Offline-Sicherung einer Db2 Warehouse Datenbank

Sie können den Wiederherstellungsprozess vereinfachen, indem Sie für Ihre Db2 Warehouse Datenbankbereitstellungen eine Single System View (SSV)-Sicherung verwenden. Sie können Datenbankpartitionen gleichzeitig sichern und erhalten einen einzigen Zeitstempel für alle Partitionen.

Vorbereitende Schritte

  • Bei einer Offlinesicherung ist die Datenbank offline und nicht für Anwendungen zugänglich. Es müssen aber auch keine laufenden Transaktionen zu der Sicherung hinzugefügt werden.
  • Sie müssen den Db2 Warehouse Katalogknoten identifizieren und über eine SSH-Verbindung zum Katalogknoten verfügen.
Hinweis: Die folgenden Befehle verwenden die Umgebungsvariable, die den Standard-Datenbanknamen enthält: $ {DBNAME}.

Vorgehensweise

  1. Schalten Sie in einer Bash-Shell auf dem Katalogknoten auf den Eigner der Datenbankinstanz um und erstellen Sie das Verzeichnis für die Sicherungs-Images:
    su - db2inst1
    mkdir /backup_dir/backup_nnn
    Dabei ist Sicherungsverzeichnis das Verzeichnis, das Sie erstellen, um Backup-Images zu speichern, und nnn ein inkrementeller Wert, über den jede Sicherung in ein separates Unterverzeichnis platziert wird. Die Sicherungen können in einem beliebigen Clusterverzeichnis gespeichert werden, das von den Containerknoten gemeinsam genutzt wird und über ausreichend Speicherplatz für die Sicherungen verfügt. Wenn Sie für die Sicherung ein anderes Verzeichnis verwenden, ändern Sie die Befehle entsprechend.
  2. Inaktivieren Sie vorübergehend die integrierte HA:
    sudo wvcli system disable -m "Disable HA before Db2 maintenance"
  3. Stellen Sie eine Verbindung zur Datenbank her:
    db2 connect to ${DBNAME}
  4. Finden Sie alle Anwendungen, die mit Db2 Warehouse verbunden sind:
    db2 list applications
    Dieser Befehl gibt eine Liste aller derzeit verbundenen Anwendungen zurück. Sie können alle Verbindungen stoppen, indem Sie die Anwendungen schließen, oder den folgenden Befehl eingeben, um alle Verbindungen zu trennen:
    db2 force application all
  5. Geben Sie den Befehl zum Beenden der Datenbank aus:
    db2 terminate
  6. Stoppen Sie die Datenbank:
    db2stop force

    Stellen Sie sicher, dass der Befehl auf allen Knoten ausgeführt wird.

  7. Stellen Sie sicher, dass die gesamte Db2-Interprozesskommunikation für die Instanz bereinigt wird:
    ipclean -a
  8. Beenden Sie die gesamte Kommunikation mit der Datenbank, indem Sie die Variable DB2COMM auf den Wert null setzen:
    db2set -null DB2COMM
  9. Starten Sie die Datenbank im eingeschränkten Zugriffsmodus erneut:
    db2start admin mode restricted access
  10. Führen Sie die Offlinesicherung mit dem folgenden Befehl aus:
    db2 backup db ${DBNAME} on all dbpartitionnums to backup_dir
    Dabei steht Sicherungsverzeichnis für den vollständigen Pfad zu dem Verzeichnis, das Sie in Schritt 1 erstellt haben.
    Das Folgende ist ein Beispiel für ein erfolgreiches Ergebnis:
    Part  Result
    ----  ------------------------------------------------------------------------
    0000  DB20000I  The BACKUP DATABASE command completed successfully.
    0001  DB20000I  The BACKUP DATABASE command completed successfully.
    0002  DB20000I  The BACKUP DATABASE command completed successfully.
    
    Backup successful. The timestamp for this backup image is : 20190523210916
  11. Stoppen Sie den eingeschränkten Zugriffsmodus:
    db2stop force
  12. Stellen Sie sicher, dass die gesamte Db2-Interprozesskommunikation für die Instanz bereinigt wird:
    ipclean -a
  13. Initialisieren Sie den Db2 Warehouse Kommunikationsmanager neu, um Datenbankverbindungen zu akzeptieren:
    db2set DB2COMM=TCPIP,SSL
  14. Starten Sie die Datenbank für den normalen Betrieb neu:
    db2start
  15. Aktivieren Sie die Datenbank:
    db2 activate db ${DBNAME}
  16. Aktivieren Sie als Rootbenutzer wieder die HA-Überwachung:
    sudo wvcli system enable -m "Enable HA after Db2 maintenance"
  17. Vergewissern Sie sich, dass die integrierte HA-Überwachung aktiv ist:
    sudo wvcli system status 
    sudo wvcli system devices
  18. Stellen Sie eine Verbindung zur Datenbank her:
    db2 connect to ${DBNAME}

    Weitere Informationen zu erweiterten Befehlsoptionen finden Sie im Abschnitt zum Befehl BACKUP DATABASE.

  19. Führen Sie den folgenden Befehl aus, um die beiden Keystore-Dateien aus dem Keystore-Verzeichnis in das Backup-Verzeichnis zu kopieren.
    cp ${KEYSTORELOC}/keystore.p12 ${BACKUPDIR}
    cp ${KEYSTORELOC}/keystore.sth ${BACKUPDIR}

    Wenn Sie eine verschlüsselte Sicherung wiederherstellen, benötigen Sie die folgenden zwei Keystore-Dateien:

    • keystore.p12
    • keystore.sth

Nächste Schritte

Anweisungen zur empfohlenen Wiederherstellungsoption finden Sie unter Wiederherstellen von Db2 Warehouse aus einer Offline-Sicherung mit dem Wiederherstellungsskript.