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. Folgendes ist 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 aller Änderungsstreams.
- Die Gültigkeitsdauer (TTL) wird durch eine Richtlinie zum Löschen von Zeilen definiert. Sie müssen diese Richtlinien nach Abschluss der Wiederherstellung neu konfigurieren. Weitere Informationen finden Sie unter Sicherungen und TTL.
- Aufteilungspunkte, die Sie beim Vorabaufteilen einer Datenbank erstellt haben. Weitere Informationen finden Sie unter Übersicht über das Aufteilen von Daten.
Wenn Sie eine Datenbank aus einer Sicherung wiederherstellen, befindet sich die wiederhergestellte Datenbank in derselben Instanz, Region und demselben Projekt wie die Quellsicherung. Wenn Sie die Sicherung aus Compliance- oder Geschäftskontinuitätsgründen in einer anderen Region oder einem anderen Projekt wiederherstellen müssen, können Sie die Sicherung in eine Instanz in einer separaten Region oder einem separaten Projekt kopieren und dann die Wiederherstellung aus der kopierten Sicherung vornehmen.
Sie haben folgende Möglichkeiten, eine Sicherung wiederherzustellen:
- In der Google Cloud Console
- Google Cloud CLI verwenden
- Clientbibliotheken
- Mit den REST- oder RPC-APIs
So funktioniert die Wiederherstellung einer Datenbank 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 einer höheren) Spanner-Edition wie die Sicherung befinden. Wenn sich eine Sicherung beispielsweise in einer Instanz befindet, die als us-west3
konfiguriert ist und die Enterprise-Version verwendet, kann sie in jeder Instanz im Projekt wiederhergestellt werden, die ebenfalls als us-west3
konfiguriert ist und die Enterprise-Version verwendet. Wenn Sie eine Sicherung in einer Enterprise-Edition-Instanz in einer Standard-Edition-Instanz wiederherstellen, kann die Wiederherstellung fehlschlagen, wenn die Datenbank Enterprise-Edition-Funktionen verwendet. Die Rechenkapazität der Instanzen muss nicht identisch sein.
Der Wiederherstellungsprozess 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üssen, kopieren Sie die Sicherung zuerst in die ausgewählte Region oder das ausgewählte Projekt. Kopierte Sicherungen können wiederhergestellt werden, sobald das Kopieren abgeschlossen ist. Sie können die Sicherung entweder in der Zielinstanz wiederherstellen (sofern sie dieselbe Edition wie die Quellsicherungsinstanz verwendet) oder in einer beliebigen Instanz mit derselben Instanzkonfiguration und derselben (oder einer höheren) Edition wie die Zielinstanz. Prüfen Sie vor der Wiederherstellung, ob für die Zielinstanz genügend Knoten oder Verarbeitungseinheiten bereitgestellt sind, um die Datenbankgröße gemäß dem Speicherlimit von 10 TB pro Knoten zu unterstützen. Das bedeutet, dass Sie mindestens zwei Knoten benötigen, um eine 20-TB-Sicherung wiederherzustellen. Wenn Sie die Sicherung in ein anderes Projekt kopiert haben und sie dort wiederherstellen möchten, muss Ihr Zielprojekt über genügend Knotenkontingente für die Wiederherstellung verfügen. Die Wiederherstellung einer kopierten Sicherung funktioniert genauso wie eine normale Wiederherstellung.
Status der Wiederherstellung
Eine wiederhergestellte Datenbank durchläuft drei Status, die von zwei lang andauernden Vorgängen verfolgt werden.
CREATING
: Spanner beginnt mit der Wiederherstellung, indem eine neue Datenbank erstellt und Dateien aus der Sicherung bereitgestellt werden. Während dieses erstenCREATING
-Status ist die wiederhergestellte Datenbank noch nicht einsatzbereit. Dieser Status wird in der Regel innerhalb einer Stunde abgeschlossen. Sobald der StatusCREATING
erreicht ist, kann Ihre Datenbank verwendet werden.Um den Fortschritt dieses Status zu verfolgen, können Sie den Vorgang mit langer Ausführungszeit für die Wiederherstellung abfragen, den Spanner während dieses Vorgangs zur Verfügung stellt. Es wird ein
RestoreDatabaseMetadata
-Objekt zurückgegeben.Beachten Sie die folgenden Einschränkungen in Bezug auf den Status
CREATING
:- Wenn Sie eine andere Instanz wiederherstellen, gehört der Wiederherstellungsvorgang zu der Instanz, die die wiederhergestellte Datenbank enthält, und nicht zu der Instanz, die die Sicherung enthält.
- In Spanner können Sie die Sicherung nicht löschen, während sie wiederhergestellt wird. Sie können sie löschen, nachdem die Wiederherstellung abgeschlossen ist und die Datenbank den Status
READY
erreicht hat. - Eine Instanz kann aufgrund der Wiederherstellung aus Sicherungen maximal zehn Datenbanken im Status
CREATING
haben. Sie können erst dann eine weitere Sicherung in der Instanz wiederherstellen, wenn eine der zehn wiederhergestellten Datenbanken in den StatusREADY_OPTIMIZING
oderREADY
wechselt.
READY_OPTIMIZING
: Nachdem Spanner die Sicherung bereitgestellt hat, werden die Sicherungsdaten in die neue Datenbank kopiert und gleichzeitig die gespeicherte Größe optimiert. Ihre Datenbank kann während dieses Vorgangs verwendet werden. Diese Phase der Wiederherstellung dauert in der Regel einige Stunden für Datenbanken mit einer Größe von weniger als 100 TB.Während Sie Ihre Datenbank während
READY_OPTIMIZING
wie gewohnt verwenden können, gelten die folgenden Einschränkungen:- Die Leselatenzen sind möglicherweise etwas höher als gewöhnlich.
- Speichermesswerte zeigen die Größe der neuen Datenbank an, nicht die der Sicherung. Daher werden in den Spanner-Speichermesswerten möglicherweise Ergebnisse angezeigt, die nicht die Gesamtgröße aller Ihrer Daten widerspiegeln, solange die Datenübertragung noch läuft.
- Wie beim Status
CREATING
können Sie die eingebundene Sicherung in Spanner nicht löschen.
Spanner stellt in diesem Status einen weiteren Vorgang mit langer Ausführungszeit zum Wiederherstellen zur Verfügung, der diesmal ein Metadatenobjekt vom Typ
OptimizeRestoredDatabaseMetadata
zurückgibt.READY
: Nach Abschluss des Kopiervorgangs wechselt die Datenbank in den StatusREADY
. Die Datenbank wurde vollständig wiederhergestellt und verweist nicht mehr auf die Sicherung.
Zugriffssteuerung (IAM)
Mit der Rolle spanner.restoreAdmin
haben Sie die Berechtigung, eine 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
: Kann Wiederherstellungen und Wiederherstellungsvorgänge ansehen. 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
- Informationen zum Wiederherstellen einer Datenbank aus einer Sicherung finden Sie unter Aus einer Sicherung wiederherstellen.