Da AlloyDB Omni mit PostgreSQL kompatibel ist, gelten die im Barman-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 Barman für die Verwendung mit AlloyDB Omni finden Sie unter Barman für AlloyDB Omni einrichten.
Hinweis
Bevor Sie Ihre AlloyDB Omni-Daten wiederherstellen, benötigen Sie Folgendes:
Einen Zieldatenbankserver, auf dem dieselbe Hauptversion von AlloyDB Omni ausgeführt wird wie auf dem Quelldatenbankserver. Weitere Informationen zur Installation von AlloyDB Omni finden Sie unter AlloyDB Omni installieren.
Das Dienstprogramm
rsync, das auf dem Zielserver installiert ist.Einen Barman-Sicherungsserver mit mindestens einer gültigen Barman-Sicherung der AlloyDB Omni-Quelldatenbank.
Eine SSH-Verbindung zwischen dem Barman-Sicherungsserver und dem Zielserver.
SSH-Schlüssel, die so eingerichtet sind, dass sich der
barman-Nutzer auf dem Barman-Server ohne Passwort alspostgres-Nutzer auf dem Zielserver authentifizieren kann.Ausreichend freier Speicherplatz auf dem Zielserver für die wiederhergestellte Datenbank.
Mit einer bestimmten Sicherung wiederherstellen
Beenden Sie auf dem Zielserver AlloyDB Omni:
sudo systemctl stop alloydbomni18Wählen Sie auf dem Barman-Server eine Sicherung aus, aus der Sie wiederherstellen möchten. Verwenden Sie den
barman list-backupsBefehl, um die verfügbaren Sicherungen aufzurufen. Verwenden Sie denbarman show-backupBefehl, um Details zu einer bestimmten Sicherung aufzurufen.Verwenden Sie den Befehl the
barman recovercommand, um die ausgewählte Sicherung auf dem AlloyDB Omni-Zielserver wiederherzustellen.Geben Sie beim Ausführen des Befehls Folgendes an:
- Verwenden Sie die Option für die Remote-Wiederherstellung.
- Geben Sie das Datenverzeichnis des Zielservers als Zielverzeichnis an.
Der folgende Befehl zeigt ein Beispiel für die Verwendung von
barman recovermit AlloyDB Omni:barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID DATA_PATHErsetzen Sie Folgendes:
TARGET_IP: die IP-Adresse des Zielservers.TARGET_LABEL: das Label, das Sie dem Server in der Konfigurationsdatei von Barman zugewiesen haben.BACKUP_ID: die ID der Sicherung, aus der wiederhergestellt werden soll, die in einem vorherigen Schritt ermittelt wurde, z. B.20230810T210200.DATA_PATH: der Pfad zum Unterverzeichnisdatades Datenverzeichnisses des Zielservers, z. B./home/your-username/alloydb-data/data/18.
Starten Sie auf dem AlloyDB Omni-Zieldatenbankserver den Dienst:
sudo systemctl start alloydbomni18
Nachdem der Dienst neu gestartet wurde, stellen Sie eine Verbindung zu Ihrem AlloyDB Omni-Server her. Sie sollten Ihre wiederhergestellten Datenbanken und Daten sehen.
Zu einem bestimmten Zeitpunkt wiederherstellen
Führen Sie für eine Wiederherstellung zu einem bestimmten Zeitpunkt dieselben Schritte aus, die im vorherigen Abschnitt beschrieben sind, mit einer Änderung. Wenn Sie den Befehl barman recover ausführen, müssen Sie auch eine der Barman Optionen für die Wiederherstellung zu einem bestimmten Zeitpunkt angeben.
Der folgende Befehl zeigt ein Beispiel für die Verwendung von barman recover mit AlloyDB Omni mit einer Option für die Wiederherstellung zu einem bestimmten Zeitpunkt:
barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID --target-time="TARGET_TIMESTAMP" DATA_PATHErsetzen Sie Folgendes:
TARGET_IP: die IP-Adresse des Zielservers.TARGET_LABEL: das Label, das Sie dem Server in der Konfigurationsdatei von Barman zugewiesen haben.BACKUP_ID: die ID der Sicherung, aus der wiederhergestellt werden soll, die in einem vorherigen Schritt ermittelt wurde, z. B.20230810T210200.TARGET_TIMESTAMP: der Zeitpunkt, zu dem die Wiederherstellung erfolgen soll, in einem beliebigen PostgreSQL-timestampFormat, das sowohl ein Datum als auch eine Uhrzeit angibt, z. B.2024-02-06 00:00:00.DATA_PATH: der Pfad zum Unterverzeichnisdatades Datenverzeichnisses des Zielservers, z. B./home/your-username/alloydb-data/data/18.