Übersicht wiederherstellen

Sie können eine Sicherung einer Spanner-Datenbank in einer neuen Datenbank wiederherstellen. Die wiederhergestellte Datenbank enthält alle Daten und das Schema aus der ursprünglichen Datenbank zur version_time der Sicherung, einschließlich aller Datenbankoptionen, die mit dem Befehl ALTER DATABASE SET OPTIONS festgelegt werden. Die folgenden Elemente sind jedoch nicht in der wiederhergestellten Datenbank enthalten:

  • IAM-Berechtigungen (außer die, die von der Instanz übernommen wurden, die die wiederhergestellte Datenbank enthält) Nach Abschluss der Wiederherstellung müssen Sie die entsprechenden IAM-Berechtigungen anwenden.
  • Interne Daten von Änderungsstreams.
  • Gültigkeitsdauer (TTL), die durch eine Richtlinie für das Löschen von Zeilen definiert ist. Sie müssen diese Richtlinien nach Abschluss der Wiederherstellung neu konfigurieren. Weitere Informationen finden Sie unter Sicherungen und TTL.

Wenn Sie aus einer Sicherung wiederherstellen, befindet sich die wiederhergestellte Sicherung in derselben Instanz, Region und im selben Projekt wie die Quellsicherung. Wenn Sie aus Compliance- oder Geschäftskontinuitätsgründen aus der Sicherung in einer anderen Region oder einem anderen Projekt wiederherstellen müssen, können Sie die Sicherung in eine Instanz in einer anderen Region oder einem anderen Projekt kopieren und dann aus der kopierten Sicherung wiederherstellen.

Sie haben folgende Möglichkeiten, eine Sicherung wiederherzustellen:

So funktioniert die Datenbankwiederherstellung aus einer Sicherung

Wenn Sie eine Spanner-Datenbank wiederherstellen, müssen Sie eine Quellensicherung und eine neue Zieldatenbank angeben. Eine Wiederherstellung in einer vorhandenen Datenbank ist nicht möglich. Die neu wiederhergestellte Datenbank muss sich im selben Projekt wie die Sicherung und in einer Instanz mit derselben Instanzkonfiguration und derselben (oder höheren) Spanner-Version wie die Sicherung befinden. Wenn sich eine Sicherung beispielsweise in einer Instanz befindet, die us-west3 konfiguriert ist und die Enterprise-Version verwendet, kann sie in jeder Instanz im Projekt wiederhergestellt werden, die ebenfalls us-west3 konfiguriert ist und die Enterprise-Version verwendet. Wenn Sie eine Sicherung in einer Instanz der Enterprise-Version in einer Instanz der Standardversion wiederherstellen, schlägt die Wiederherstellung möglicherweise fehl, wenn die Datenbank Funktionen der Enterprise-Version verwendet. Die Rechenkapazität der Instanzen muss nicht identisch sein.

Der Wiederherstellungsvorgang ist auf Hochverfügbarkeit ausgelegt. Die Datenbank kann wiederhergestellt werden, sofern der Großteil der Regionen und Zonen in der Instanz verfügbar ist.

Zum Wiederherstellen einer CMEK-fähigen Sicherung müssen sowohl der Schlüssel als auch die Schlüsselversion für Spanner verfügbar sein. Die wiederhergestellte Datenbank verwendet standardmäßig dieselben Verschlüsselungskonfigurationen wie die Sicherung. Dieses Verhalten lässt sich durch Angabe einer anderen Verschlüsselungskonfiguration beim Wiederherstellen der Datenbank überschreiben. Weitere Informationen finden Sie unter Aus einer CMEK-fähigen Sicherung wiederherstellen.

Sicherung in einer anderen Region oder einem anderen Projekt wiederherstellen

Wenn Sie die Sicherung in einer anderen Region oder einem anderen Projekt wiederherstellen möchten, kopieren Sie die Sicherung zuerst in die gewünschte Region oder das gewünschte Projekt. Kopierte Sicherungen können wiederhergestellt werden, sobald die Kopie abgeschlossen ist. Sie können die Sicherung entweder in der Zielinstanz wiederherstellen (sofern sie dieselbe Version wie die Quellsicherungs-Instanz verwendet) oder in einer beliebigen Instanz, die dieselbe Instanzkonfiguration und dieselbe (oder eine höhere) Version wie die Zielinstanz hat. Achten Sie vor der Wiederherstellung darauf, dass der Zielinstanz genügend Knoten oder Verarbeitungseinheiten zugewiesen sind, um die Datenbankgröße gemäß dem Speicherlimit von 10 TB pro Knoten zu unterstützen. Sie benötigen also mindestens zwei Knoten, um eine Sicherung von 20 TB wiederherzustellen. Wenn Sie die Sicherung in ein anderes Projekt kopiert haben und sie dort wiederherstellen möchten, muss das Zielprojekt genügend Knotenkontingente für die Wiederherstellung haben. Die Wiederherstellung einer kopierten Sicherung funktioniert genauso wie eine normale Wiederherstellung.

Wiederherstellungsstatus

Eine wiederhergestellte Datenbank durchläuft drei Status, die von zwei lang laufenden Vorgängen erfasst werden.

  • CREATING: Spanner beginnt mit der Wiederherstellung, indem eine neue Datenbank erstellt und Dateien aus der Sicherung bereitgestellt werden. In diesem anfänglichen Status CREATING kann die wiederhergestellte Datenbank noch nicht verwendet werden. Dieser Status ist in der Regel innerhalb einer Stunde abgeschlossen. Sobald der Status CREATING erreicht ist, ist die Datenbank einsatzbereit.

    Sie können den Fortschritt dieses Status verfolgen, indem Sie den Wiederherstellungsvorgang mit langer Ausführungszeit abfragen, den Spanner während dieses Vorgangs zur Verfügung stellt. Es gibt ein RestoreDatabaseMetadata-Objekt zurück.

    Beachten Sie die folgenden Einschränkungen für den Status CREATING:

    • Wenn Sie eine andere Instanz wiederherstellen, gehören die Wiederherstellungsvorgänge zu der Instanz, die die wiederhergestellte Datenbank enthält, und nicht zu der Instanz, die die Sicherung enthält.
    • Sie können die Sicherung in Spanner nicht löschen, während sie wiederhergestellt wird. Sie können es löschen, nachdem die Wiederherstellung abgeschlossen ist und die Datenbank den Status READY hat.
    • Eine Instanz kann aufgrund der Wiederherstellung aus Sicherungen maximal zehn Datenbanken im Status CREATING haben. Sie können erst dann wieder eine Sicherung in der Instanz wiederherstellen, wenn eine der zehn wiederhergestellten Datenbanken in den Status READY_OPTIMIZING oder READY wechselt.
  • READY_OPTIMIZING: Nachdem Spanner die Sicherung bereitgestellt hat, beginnt es, die Sicherungsdaten in die neue Datenbank zu kopieren und dabei die gespeicherte Größe zu optimieren. Ihre Datenbank kann während dieses Vorgangs verwendet werden. Bei Datenbanken mit einer Größe von weniger als 100 TB dauert diese Phase der Wiederherstellung in der Regel einige Stunden.

    Sie können Ihre Datenbank während READY_OPTIMIZING wie gewohnt verwenden. Es gelten jedoch die folgenden Einschränkungen:

    • Die Leselatenz ist möglicherweise etwas höher als üblich.
    • Die Speichermesswerte geben die Größe der neuen Datenbank an, nicht der Sicherung. Solange die Datenübertragung noch läuft, spiegeln die Spanner-Speichermesswerte möglicherweise nicht die Gesamtgröße aller Daten wider.
    • Wie beim Status CREATING können Sie die bereitgestellte Sicherung in Spanner nicht löschen.

    In diesem Status stellt Spanner einen weiteren lang andauernden Wiederherstellungsvorgang bereit, der diesmal ein Metadatenobjekt vom Typ OptimizeRestoredDatabaseMetadata zurückgibt.

  • READY: Nach Abschluss des Kopier- und Optimierungsvorgangs wechselt die Datenbank in den Status READY. Die Datenbank ist vollständig wiederhergestellt und verweist nicht mehr auf die Sicherung oder benötigt sie nicht mehr.

Zugriffssteuerung (IAM)

Mit der Rolle spanner.restoreAdmin sind Sie berechtigt, Daten aus einer Sicherung wiederherzustellen. Weitere Informationen finden Sie unter Zugriffssteuerung mit IAM.

Die folgenden Rollen haben auch Zugriff auf Spanner-Wiederherstellungsvorgänge:

  • spanner.admin: Hat vollständigen Zugriff auf die Wiederherstellung. Diese Rolle hat vollständigen Zugriff auf alle Spanner-Ressourcen.
  • owner: Hat vollständigen Zugriff auf die Wiederherstellung.
  • editor: Hat vollständigen Zugriff auf die Wiederherstellung.
  • viewer: Hat Zugriff auf Wiederherstellungen und Wiederherstellungsvorgänge. Mit dieser Rolle können keine Sicherungen erstellt, aktualisiert, gelöscht oder kopiert werden.

Preise

Die Wiederherstellung aus einer Sicherung ist kostenlos.

Nächste Schritte