Wiederherstellung zu einem bestimmten Zeitpunkt (PITR) verwenden

Wenn Sie versehentlich geänderte Daten oder große Datenmengen schnell wiederherstellen möchten, können Sie die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-Time Recovery, PITR) verwenden, um einen AlloyDB for PostgreSQL-Cluster in einen bestimmten Zustand aus der jüngeren Vergangenheit zurückzusetzen.

Hinweis

  • Das Projekt von Google Cloud , das Sie verwenden, muss für den Zugriff auf AlloyDB aktiviert sein.
  • Sie benötigen eine der folgenden IAM-Rollen im Projekt von Google Cloud , das Sie verwenden:
    • roles/alloydb.admin (die vordefinierte IAM-Rolle „AlloyDB Admin“)
    • roles/owner (einfache IAM-Rolle „Inhaber“)
    • roles/editor (einfache IAM-Rolle „Bearbeiter“)

    Wenn Sie keine dieser Rollen haben, wenden Sie sich an den Organisationsadministrator, um Zugriff anzufordern.

  • Sie benötigen alle folgenden IAM-Berechtigungen (Identity and Access Management) im Projekt von Google Cloud , das Sie verwenden:
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • compute.globalAddresses.create
    • compute.globalAddresses.list
    • servicenetworking.services.addPeering

    Um diese Berechtigungen nach dem Prinzip der geringsten Berechtigung zu erhalten, bitten Sie Ihren Administrator, Ihnen die vordefinierte IAM-Rolle „AlloyDB Admin“ (roles/alloydb.admin) zuzuweisen, die die erforderlichen alloydb.clusters.restore- und Netzwerkberechtigungen enthält.

Von einem kürzlichen Zeitpunkt wiederherstellen

Mit AlloyDB können Sie die Daten eines aktiven Clusters zu einem beliebigen Zeitpunkt innerhalb eines bestimmten, aktuellen Zeitraums vollständig wiederherstellen.

Verfügbare PITR-Zeitfenster

Sie können Daten zu einem beliebigen Zeitpunkt nach dem aktuelleren der folgenden beiden Zeitpunkte wiederherstellen:

  • Der Zeitpunkt, der durch das Limit des Wiederherstellungsfensters dargestellt wird. Wenn Sie beispielsweise ein Wiederherstellungsfenster von 14 Tagen haben, liegt dieser Zeitpunkt 14 Tage in der Vergangenheit.

  • Der Erstellungszeitpunkt der ältesten Sicherung, die seit der letzten Aktivierung der kontinuierlichen Sicherung erstellt wurde. Wenn Sie den Cluster mit aktivierter kontinuierlicher Sicherung erstellt und die kontinuierliche Sicherung seitdem nicht deaktiviert haben, wird dieser Zeitpunkt effektiv zum Erstellungszeitpunkt der ältesten Sicherung Ihres Clusters.

Wenn Sie die kontinuierliche Sicherung deaktivieren und anschließend wieder aktivieren, können Sie erst dann eine Wiederherstellung zu einem bestimmten Zeitpunkt durchführen, wenn Sie oder AlloyDB die erste neue Sicherung des Clusters erstellt haben. Dies kann eine On-Demand-Sicherung oder die erste der täglichen Sicherungen sein, die AlloyDB nach dem Aktivieren der kontinuierlichen Sicherung erstellt. Weitere Informationen zu Sicherungstypen finden Sie unter Datensicherung und -wiederherstellung – Übersicht.

Sie können eine Wiederherstellung zu einem bestimmten Zeitpunkt nur ausführen, wenn der ursprüngliche Cluster vorhanden ist. Sie können diese Art der Wiederherstellung nicht für einen gelöschten Cluster ausführen.

Sie können eine Wiederherstellung zu einem bestimmten Zeitpunkt für einen Cluster im Status „Bereit“ ausführen, auch wenn die primäre Instanz gelöscht wurde. Der Cluster kann jedoch nur zu einem Zeitpunkt wiederhergestellt werden, bevor die Instanz gelöscht wurde.

Wiederherstellung zu einem bestimmten Zeitpunkt ausführen

  1. Verwenden Sie entweder die Google Cloud Console oder die Google Cloud CLI, um die Wiederherstellung durchzuführen.

    Console

    1. Zur Clusterseite.

      Zu den Clustern

    2. Klicken Sie in der Spalte Ressourcenname auf einen Cluster.

    3. Klicken Sie auf Datenschutz.

    4. Klicken Sie unter Von einem bestimmten Zeitpunkt wiederherstellen auf Wiederherstellen.

    5. Geben Sie im Feld Zielzeit das Datum und die Uhrzeit für die Wiederherstellung ein.

    6. Geben Sie im Feld Cluster-ID einen Namen für den neuen Cluster ein.

    7. Wählen Sie im Feld Netzwerk ein Virtual Private Cloud-Netzwerk für den neuen Cluster aus.

    8. Wenn Sie die kontinuierlichen Sicherungen und Datenänderungsprotokolle dieses Clusters mit einem vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) anstelle der standardmäßigen von Google verwalteten Verschlüsselung verschlüsseln möchten, führen Sie die folgenden zusätzlichen Schritte aus:

      1. Klicken Sie auf Erweiterte Verschlüsselungsoptionen.

      2. Klicken Sie auf das Optionsfeld kundenverwalteter Verschlüsselungsschlüssel (CMEK).

      3. Klicken Sie auf die Liste Vom Kunden verwalteten Schlüssel auswählen und wählen Sie einen Schlüssel aus.

    9. Klicken Sie auf Wiederherstellen.

    gcloud

    Verwenden Sie den Befehl gcloud alloydb clusters restore und geben Sie einen Cluster und einen Zeitstempel an.

    gcloud alloydb clusters restore NEW_CLUSTER \
      --source-cluster=SOURCE_CLUSTER \
      --point-in-time=TIMESTAMP \
      --region=REGION

    Dieser Befehl gibt einen Vorgang zurück, dessen Status Sie mit dem Befehl gcloud alloydb operations describe abfragen können.

    gcloud alloydb operations describe OPERATION_ID \
      --region=REGION

    Ersetzen Sie Folgendes:

    • NEW_CLUSTER: Die ID, die für den neuen Cluster verwendet werden soll.

    • SOURCE_CLUSTER: Die ID des Clusters, aus dem Daten wiederhergestellt werden sollen.
      Wenn Sie die Wiederherstellung von einem Cluster in einem anderen Projekt durchführen möchten, ersetzen Sie den Wert durch den vollständigen Clusterpfad im folgenden Format:
      projects/SOURCE_PROJECT/locations/SOURCE_REGION/clusters/SOURCE_CLUSTER

    • TIMESTAMP: Eine Beschreibung des Zeitpunkts, von dem Daten wiederhergestellt werden sollen, im RFC 3339-Format, z. B. 2012-11-15T16:19:00.094Z. Sie können einen Bruchteil einer Sekunde bis zu einer Mikrosekunde angeben.

      Dieser Zeitstempel muss innerhalb der Aufbewahrungsdauer liegen, die Sie beim Erstellen des Clusters angegeben haben.

    • REGION: Die Region, die den Quellcluster enthält und in der AlloyDB den neuen Cluster erstellt. Beispiel: us-central1

    • PROJECT_ID: Die ID des Projekts, in dem sich der neue Cluster befindet.

    Wenn Sie die Daten des neuen Clusters mit einem kundenverwalteten Verschlüsselungsschlüssel (CMEK) anstelle der von Google verwalteten Verschlüsselung verschlüsseln möchten, müssen Sie diese zusätzlichen Argumente angeben:

    • --kms-key=KEY_ID: Die ID des zu verwendenden CMEK-Schlüssels.
    • --kms-keyring=KEYRING_ID: Die ID des Schlüsselbunds des Schlüssels.
    • --kms-location=LOCATION_ID: Die ID der Region des Schlüsselbunds. Beachten Sie, dass sie mit der Region des Clusters übereinstimmen muss.
    • --kms-project=PROJECT_ID: Die ID des Projekts des Schlüsselbunds.

    Wenn Sie einen Cluster mit aktiviertem Private Service Connect wiederherstellen möchten, müssen Sie das Flag --enable-private-service-connect hinzufügen.

  2. Nachdem AlloyDB den Cluster erstellt hat, erstellen Sie eine primäre Instanz dafür. Über diese Instanz können Sie auf die wiederhergestellten Daten zugreifen. Die Konfiguration der neuen Instanz muss nicht genau mit der der ursprünglichen primären Instanz übereinstimmen.

  3. Optional: Lesepoolinstanzen erstellen

Sie können den Cluster verwenden, nachdem der Wiederherstellungsvorgang abgeschlossen ist.

Nächste Schritte