In diesem Dokument erfahren Sie, wie Sie eine Cloud SQL-Instanz aus einem Backup Vault mithilfe der Google Cloud console oder der gcloud CLI wiederherstellen. Es wird beschrieben, wie Sie eine Wiederherstellung in einer neuen oder vorhandenen Instanz ausführen, eine Quellinstanz überschreiben oder eine Wiederherstellung zu einem bestimmten Zeitpunkt (Point-In-Time Recovery, PITR) durchführen.
Weitere Informationen zu den konzeptionellen Funktionen des Backup and DR Service finden Sie in der Übersicht zum Backup and DR Service. Wenn Sie Ihre Datenbanken zuerst sichern möchten, lesen Sie Cloud SQL-Instanzen in einem Backup Vault sichern.
Notfallwiederherstellung und Resilienz
Der Backup- und DR-Dienst bietet Wiederherstellungsoptionen für Ihre Cloud SQL-Instanzen. In einem Backup Vault gespeicherte Sicherungen sind unabhängig vom Lebenszyklus und Projekt der Quellinstanz.
Projektlöschung: Sie können Sicherungen auch dann wiederherstellen, wenn das ursprüngliche Arbeitslast projekt mit der Cloud SQL-Quellinstanz gelöscht wurde. Das liegt daran, dass die erforderlichen Entschlüsselungsberechtigungen für CMEK-verschlüsselte Sicherungen dem Dienst-Agent für Backup and DR im Projekt des Backup Vault und nicht im Arbeitslastprojekt gewährt werden. So wird sichergestellt, dass Ihre Sicherungen weiterhin zugänglich und wiederherstellbar sind, solange der Backup Vault und der Cloud Key Management Service-Schlüssel intakt sind und der Dienst-Agent Berechtigungen hat.
Flexible Wiederherstellungsziele: Sie können eine Wiederherstellung in einer neuen Instanz im selben oder in einem anderen Projekt ausführen, was für Wiederherstellungsszenarien mehr Flexibilität bietet.
Hinweis
Bevor Sie eine Cloud SQL-Instanz aus einem Backup Vault wiederherstellen, müssen Sie die erforderlichen Rollen haben.
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Wiederherstellen einer Cloud SQL-Instanz aus einem Backup Vault benötigen:
-
Zum Erstellen des Wiederherstellungsziels:
Cloud SQL-Administrator (
roles/cloudsql.admin) für das Projekt, in dem sich die Zielinstanz befindet -
Zum Lesen der Sicherung aus dem Vault:
Backup and DR Restore User (
roles/backupdr.restoreUser) für das Projekt, in dem sich die Quellsicherungen befinden
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Wiederherstellen einer Cloud SQL-Instanz aus einem Backup Vault erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen , um die notwendigen Berechtigungen anzuzeigen, die erforderlich sind:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um eine Cloud SQL-Instanz aus einem Backup Vault wiederherzustellen:
-
Zum Erstellen des Wiederherstellungsziels:
cloudsql.instances.restore -
Zum Lesen der Sicherung aus dem Vault:
backupdr.bvbackups.useReadOnlyForCloudSqlInstance
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Cloud SQL-Instanz aus der letzten Sicherung wiederherstellen
Folgen Sie der Anleitung, um eine Cloud SQL-Instanz wiederherzustellen:
Console
Rufen Sie in der Google Cloud console die Seite Vaulted backups (Gesicherte Sicherungen) auf.
Auf der Seite Vaulted backups (Gesicherte Sicherungen) werden nur die Datenressourcen aufgeführt, auf die Sicherungspläne angewendet wurden und deren Sicherungen in einem Backup Vault innerhalb dieses Projekts gespeichert sind.
Wählen Sie die Sicherung aus, die Sie wiederherstellen möchten. Wählen Sie entweder auf der Detailseite für die Sicherung oder im Menü die Option Restore (Wiederherstellen) aus.
Auf der Seite Restore (Wiederherstellen) können Sie die folgenden Wiederherstellungsoptionen auswählen:
Das Feld Resource type (Ressourcentyp) ist mit
Cloud SQLvorab ausgefüllt.Wählen Sie unter Resource name (Ressourcenname) die Cloud SQL-Instanz aus, die Sie wiederherstellen möchten.
Wenn Sie auf Backup (Sicherung) klicken, wird ein Bereich mit allen verfügbaren Sicherungen geöffnet. Wählen Sie die gewünschte Sicherung aus.
Wählen Sie unter Choose the restore destination (Wiederherstellungsziel auswählen) das Projekt aus, in dem Sie die Cloud SQL-Instanz wiederherstellen möchten.
Klicken Sie auf Continue (Weiter).
Wenn Sie aufgefordert werden, ein Wiederherstellungsziel auszuwählen, treffen Sie eine Auswahl aus den folgenden Optionen:
- Restore to a new instance (In einer neuen Instanz wiederherstellen): Anhand der in der Sicherung gespeicherten Konfiguration wird eine neue Instanz erstellt. Sie können die Instanz nach Abschluss der Wiederherstellung anpassen. Geben Sie eine neue Instanz-ID mit Kleinbuchstaben, Ziffern und Bindestrichen an. Muss mit einem Buchstaben beginnen.
Overwrite an existing instance (Vorhandene Instanz überschreiben): Wählen Sie in der Liste der verfügbaren Instanzen eine vorhandene Instanz aus, die überschrieben werden soll.
Overwrite the source instance (Quellinstanz überschreiben): Überschreibt die aktuelle Instanz. Alle aktuellen Daten in der ausgewählten Instanz werden überschrieben, einschließlich früherer Logs zur Wiederherstellung zu einem bestimmten Zeitpunkt. Die überschriebenen Daten können später nicht wiederhergestellt werden. Diese Option wird nicht für die Produktion empfohlen.
gcloud
Suchen Sie die Datenquelle mit der Sicherung, die Sie wiederherstellen möchten. Sie können die Datenquelle in einem Cloud SQL-Instanzprojekt oder einem Backup Vault-Projekt finden:
Aus dem Cloud SQL-Instanzprojekt: Verwenden Sie
data-source-referencegcloud alpha backup-dr data-source-references fetch-for-resource-type sqladmin.googleapis.com/Instance \ --location=LOCATION \ --project=CSQL_INSTANCE_PROJECT_ID \ --filter='dataSourceGcpResourceInfo.cloudSqlInstanceProperties.name="projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID"' \ --format="table(RESOURCE_NAME,DATA_SOURCE)"Ersetzen Sie Folgendes:
LOCATION: der Speicherort des Backup Vault.
CSQL_INSTANCE_ID: der Datenbankname der Cloud SQL-Instanz.
CSQL_INSTANCE_PROJECT_ID: das Projekt mit der Cloud SQL-Instanz.
Aus einem Backup Vault-Projekt: Verwenden Sie
data-sourcegcloud backup-dr data-sources list \ --location=LOCATION \ --project=BACKUP_VAULT_PROJECT_ID \ --filter='dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name=projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID' \ --format="table(dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name:label=RESOURCE_NAME,name:label=DATA_SOURCE)"Ersetzen Sie Folgendes:
LOCATION: der Speicherort des Backup Vault.
CSQL_INSTANCE_ID: der Name der Cloud SQL -Instanz.
CSQL_INSTANCE_PROJECT_ID: das Projekt mit der Cloud SQL-Instanz.
BACKUP_VAULT_PROJECT_ID: das Projekt mit dem Backup Vault.
Listen Sie alle Sicherungen in der Datenquelle mit dem Befehl
gcloud backup-dr backups listauf und wählen Sie die Sicherung aus, die Sie wiederherstellen möchten.gcloud backup-dr backups list --data-source=DATA_SOURCE \ --format="table(consistencyTime,backupType,name:label=BACKUP_NAME)"Stellen Sie eine Cloud SQL-Instanz mit dem Befehl
gcloud sql backups restorewieder her:gcloud sql backups restore BACKUP_NAME \ --restore-instance=RESTORE_INSTANCE \ --project=RESTORE_PROJECT --region=RESTORE_REGIONErsetzen Sie Folgendes:
BACKUP_NAME: der Name des Backup Vault, aus dem Sie Daten wiederherstellen möchten.
RESTORE_INSTANCE: der Name der Cloud SQL-Zielinstanz.
RESTORE_PROJECT: das Projekt, in dem Sie die Cloud SQL-Instanz wiederherstellen möchten.
RESTORE_REGION: die Region, in der Sie eine neue Cloud SQL-Instanz wiederherstellen möchten. Dies ist für regionale Sicherungen optional. Verwenden Sie diese Option nicht, wenn Sie eine Wiederherstellung in einer vorhandenen Instanz ausführen.
Optional: Informationen zum Überschreiben anderer Attribute finden Sie unter Übersicht über die gcloud CLI-Befehle des Backup and DR Service .
Cloud SQL-Instanz zu einem anderen Zeitpunkt wiederherstellen
Folgen Sie der Anleitung, um eine Cloud SQL-Instanz zu einem bestimmten Zeitpunkt wiederherzustellen. Wenn Sie eine Wiederherstellung zu einem bestimmten Zeitpunkt ausführen, erstellen Sie einen Cloud SQL-Klon.
Rufen Sie in der Google Cloud console die Seite Vaulted backups (Gesicherte Sicherungen) auf.
Wählen Sie oben in der Tabelle Filter table (Tabelle filtern) und dann Resource type (Ressourcentyp) aus. Wählen Sie Cloud SQL aus. So werden nur die Cloud SQL-Instanzen angezeigt, auf die Sicherungspläne angewendet wurden und deren Sicherungen in einem Backup Vault innerhalb eines Projekts gespeichert sind.
Klicken Sie auf Restore from a point in time (Von einem bestimmten Zeitpunkt wiederherstellen). Die Cloud SQL-Seite Create a clone (Klon erstellen) wird geöffnet.
Folgen Sie der Anleitung unter Wiederherstellung zu einem bestimmten Zeitpunkt mit dem Backup Vault durchführen.
Nächste Schritte
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.