Da AlloyDB Omni mit PostgreSQL kompatibel ist, gelten die im pgBackRest-Handbuch beschriebenen Befehle und Techniken zur Datenwiederherstellung auch für AlloyDB Omni. Auf dieser Seite werden einige häufige Wiederherstellungsaufgaben mit Beispielen für relevante Befehle beschrieben.
Weitere Informationen zum Konfigurieren von pgBackRest für die Verwendung mit AlloyDB Omni finden Sie unter pgBackRest für AlloyDB Omni einrichten.
Hinweis
Bevor Sie AlloyDB Omni für die Verwendung mit pgBackrest konfigurieren, muss AlloyDB Omni auf einem Server, den Sie steuern, installiert sein und ausgeführt werden.
Ein Zieldatenbankserver, auf dem dieselbe Hauptversion von AlloyDB Omni wie auf dem Quelldatenbankserver ausgeführt wird. Weitere Informationen zum Installieren von AlloyDB Omni finden Sie unter AlloyDB Omni installieren.
Der Zielserver kann derselbe Computer wie der Quellserver sein.
Ein pgBackRest-Sicherungs-Repository mit mindestens einer Sicherung der AlloyDB Omni-Quelldatenbank.
Genügend freier Speicherplatz auf dem Zielserver für die wiederhergestellte Datenbank.
Übersicht
Wenn Sie eine AlloyDB Omni-Wiederherstellung mit pgBackRest ausführen möchten, verwenden Sie
den pgbackrest restore Befehl. Die Argumente, die Sie dem Befehl übergeben, variieren je nach Situation.
Im Allgemeinen führen Sie den Befehl pgbackrest restore mit Flags aus, die die folgenden Informationen enthalten:
- Der Speicherort Ihrer Datei
pgbackrest.conf. - Der Name des pgBackRest-Sicherungs-Repositorys, aus dem Sie die Wiederherstellung durchführen möchten. Diese Repositories werden in der Datei
pgbackest.confbenannt und definiert. - Der Speicherort im lokalen Dateisystem, an dem die wiederhergestellten Daten gespeichert werden sollen.
- Eine Kennung der jeweiligen Sicherung oder des jeweiligen Zeitpunkts, aus dem Sie die Wiederherstellung durchführen möchten.
Wenn Sie die containerisierten pgbackrest restore-Befehle ausführen, verwenden Sie Dateisystempfade aus der Sicht des Containers. Der Pfad zu Ihrem AlloyDB Omni-Datenverzeichnis ist beispielsweise immer /mnt/disks/pgsql, unabhängig vom Speicherort auf Ihrem Hostserver. Weitere Informationen finden Sie unter
Ein Hinweis zu Dateisystempfaden.
Wiederherstellung zu einem bestimmten Zeitpunkt ausführen
In diesem Beispiel werden Daten aus einem pgBackRest-Repository wiederhergestellt, wobei ein bestimmter Zeitpunkt für die Wiederherstellung angegeben wird. Wenn Sie in der Datei pgbackrest.conf der Zielumgebung mehrere Repositories definiert haben, wählt pgBackRest das Repository für die Wiederherstellung basierend auf Verfügbarkeit, erwarteter Geschwindigkeit und anderen Faktoren aus.
Im Beispiel wird Folgendes vorausgesetzt:
Sie haben eine Datei
pgbackrest.confauf der obersten Ebene Ihres AlloyDB Omni-Zieldatenverzeichnisses. Dadurch ist die Datei für das containerisiertepgbackrestals/mnt/disks/pgsql/pgbackrest.confverfügbar.Sie haben mit Ihrer pgBackRest-Konfiguration kontinuierliche Sicherungen aktiviert.
Führen Sie in der Zielumgebung eine PITR-Wiederherstellung aus und geben Sie einen Zeitstempel für die Wiederherstellung an:
sudo docker exec pg-service pgbackrest \ --config-path=/mnt/disks/pgsql \ --stanza=STANZA \ --type=time \ --pg1-path=/mnt/disks/pgsql/data-RESTORED \ --target="TIMESTAMP" \ restoreErsetzen Sie Folgendes:
STANZA: die Konfigurationsstanza, die durch die Dateipgbackrest.confdefiniert wird und auf diese Wiederherstellung angewendet werden soll, z. B.omni.TIMESTAMP: der Zeitpunkt, von dem aus die Wiederherstellung durchgeführt werden soll, z. B.2024-02-22 19:50:00.
Beenden Sie auf der Zielumgebung den Datenbankserver:
sudo alloydb database-server stopBenennen Sie das Unterverzeichnis
dataIhres Datenverzeichnisses um, um auf Nummer sicher zu gehen:cd DATA_DIRsudo mv data data-OLDErsetzen Sie
DATA_DIRdurch den Dateisystempfad zu Ihrem AlloyDB Omni-Datenverzeichnis.Verschieben Sie die wiederhergestellten Daten an ihren Platz und bereinigen Sie
postgresql.auto.conf:sudo mv data-RESTORED datasudo sed -i 's|data-RESTORED|data|' data/postgresql.auto.confStarten Sie den Datenbankserver:
sudo alloydb database-server start
Sie können jetzt mit psql eine Verbindung zu Ihrer Datenbank herstellen und prüfen, ob die Daten wie erwartet wiederhergestellt wurden. Wenn das der Fall ist, können Sie die zuvor erstellte data-OLD Kopie
des data Unterverzeichnisses löschen.
Weitere Informationen zu PITR in pgBackRest finden Sie unter Wiederherstellung zu einem bestimmten Zeitpunkt.
Weitere Informationen zum Vorbereiten
einer pgbackrest.conf Datei für die Verwendung mit AlloyDB Omni finden Sie unter pgBackRest für AlloyDB Omni einrichten.
Sonstige Optionen
Der Befehl pgbackrest restore ist sehr flexibel und bietet eine Reihe von Optionen und Funktionen, die Sie durch die Übergabe verschiedener Befehlszeilenoptionen steuern können. darunter:
- Wiederherstellung nur auf geänderte Dateien beschränken.
- Nur ausgewählte Datenbanken wiederherstellen.
Eine vollständige Anleitung zum Ausführen von Wiederherstellungen in pgBackRest finden Sie unter Wiederherstellen.