Instanz wiederherstellen

Auf dieser Seite wird beschrieben, wie Sie eine Instanz aus einer Sicherung wiederherstellen und eine Wiederherstellung einer Instanz zu einem bestimmten Zeitpunkt durchführen.

Weitere Informationen, Best Practices und Anforderungen für Wiederherstellungsvorgänge und Wiederherstellungen zu einem bestimmten Zeitpunkt finden Sie unter Instanz wiederherstellen.

Instanz aus einer Sicherung wiederherstellen

Sie können eine Sicherung verwenden, um dieselbe Instanz wiederherzustellen, von der die Sicherung erstellt wurde, oder Sie können eine Sicherung verwenden, um eine andere Instanz im selben Projekt wiederherzustellen.

Andere Instanz wiederherstellen

Wenn Sie aus einer Sicherung eine andere Instanz wiederherstellen, werden die Daten in der Zielinstanz in den Zustand versetzt, den die Quellinstanz zum Zeitpunkt der Sicherung hatte. Weitere Informationen finden Sie unter Allgemeine Tipps zur Wiederherstellung und Tipps und Anforderungen zur Wiederherstellung in einer anderen Instanz.

Wenn Sie eine Liste der Sicherungen für das Projekt benötigen und sich diese aufgrund eines Ausfalls nicht auf der Instanzübersichtsseite ansehen können, können Sie die backupRuns.list API mit einem Platzhalter (-) verwenden. Die Platzhalter-Option ruft eine Liste aller Sicherungen in allen Instanzen des Projekts ab. Weitere Informationen finden Sie unter Sicherungen während eines Ausfalls ansehen.

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Wenn die Zielinstanz Lesereplikate enthält, können Sie diese über das Dreipunkt-Menü Dreipunkt-Symbol ganz außen rechts löschen.
  3. Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
  4. Wählen Sie im SQL-Navigationsmenü die Option Sicherungen aus.
  5. Suchen Sie die Sicherung, mit der die Wiederherstellung durchgeführt werden soll, und wählen Sie Wiederherstellen aus.
  6. Bestätigen Sie auf der Seite Instanz aus einer Sicherung wiederherstellen unter Sicherungsdetails prüfen, ob Sie die richtige Sicherung ausgewählt haben.
  7. Wählen Sie unter Ziel wiederherstellen die Option Vorhandene Instanz überschreiben aus.
  8. Wählen Sie im Drop-down-Menü Instanz die Instanz aus, die Sie für die Wiederherstellung verwenden möchten. Die ausgewählte Instanz und alle zugehörigen Daten werden überschrieben.
  9. Geben Sie im Feld Zielinstanz-ID den Namen der Instanz ein, die überschrieben werden soll, um Ihre Auswahl zu bestätigen.
  10. Klicken Sie auf Wiederherstellen, um den Wiederherstellungsvorgang zu starten.
  11. Prüfen Sie den Status der Wiederherstellung. Rufen Sie dazu den Tab Vorgänge der Zielinstanz auf.
  12. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

gcloud

  1. Beschreiben Sie die Zielinstanz, um zu prüfen, ob Replikate vorhanden sind:
    gcloud sql instances describe TARGET_INSTANCE_NAME

    Notieren Sie sich alle in replicaNames aufgeführten Instanzen.

  2. So löschen Sie alle Replikate:
    gcloud sql instances delete REPLICA_NAME

    Wiederholen Sie dies für jedes Replikat.

  3. Listen Sie die Sicherungen der Instanz auf:
    gcloud sql backups list \
    --instance SOURCE_INSTANCE_NAME
  4. Suchen Sie die Sicherung, die Sie verwenden möchten, und notieren Sie den ID-Wert.
  5. So stellen Sie die angegebene Sicherung für die Zielinstanz wieder her:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=TARGET_INSTANCE_NAME \
    --backup-instance=SOURCE_INSTANCE_NAME
        
  6. Erstellen Sie nach abgeschlossener Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

REST Version 1

  1. Listen Sie alle Replikate für die Zielinstanz auf.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=replicaNames

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  2. Löschen Sie alle Replikate:

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • replica-id: die Replikat-ID

    HTTP-Methode und URL:

    DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/replica-id

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    Wiederholen Sie dies für jedes Replikat.

  3. Lassen Sie die Sicherungen für die Quellinstanz auflisten, um die ID der gewünschten Sicherung zu ermitteln.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    -ODER- Wenn sich Ihre Instanz in einer Region befindet, in der ein Ausfall vorliegt, listen Sie alle Back-ups in einem Projekt auf:

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID oder - für eine Liste aller Sicherungen im Projekt

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/-/backupRuns

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    Suchen Sie das Back-up der Instanz, die Sie wiederherstellen möchten.
  4. Stellen Sie die Zielinstanz aus der Sicherung wieder her.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • target-instance-id: die ID der Zielinstanz
    • source-instance-id: die ID der Quellinstanz
    • backup-id: die Sicherungs-ID

    HTTP-Methode und URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/target-instance-id/restoreBackup

    JSON-Text anfordern:

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten in etwa folgende JSON-Antwort erhalten:

  5. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

REST v1beta4

  1. Listen Sie alle Replikate für die Zielinstanz auf.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=replicaNames

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  2. Löschen Sie alle Replikate:

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • replica-id: die Replikat-ID

    HTTP-Methode und URL:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/replica-id

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    Wiederholen Sie dies für jedes Replikat.

  3. Lassen Sie die Sicherungen für die Quellinstanz auflisten, um die ID der gewünschten Sicherung zu ermitteln.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  4. Stellen Sie die Zielinstanz aus der Sicherung wieder her.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • target-instance-id: die ID der Zielinstanz
    • source-instance-id: die ID der Quellinstanz
    • backup-id: die Sicherungs-ID

    HTTP-Methode und URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/target-instance-id/restoreBackup

    JSON-Text anfordern:

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten in etwa folgende JSON-Antwort erhalten:

  5. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

Gleiche Instanz wiederherstellen

Wenn Sie aus einer Sicherung die gesicherte Instanz wiederherstellen, werden die Daten in dieser Instanz in den Status zurückversetzt, den sie zum Zeitpunkt der Sicherung hatten. Weitere Informationen über das Wiederherstellen einer Instanz finden Sie unter Allgemeine Tipps zum Wiederherstellen aus Sicherungen.

Console

  1. Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.

    Cloud SQL-Instanzen aufrufen

  2. Wenn die Zielinstanz Lesereplikate enthält, können Sie diese über das Dreipunkt-Menü Dreipunkt-Symbol ganz rechts löschen.
  3. Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
  4. Wählen Sie im SQL-Navigationsmenü die Option Sicherungen aus.
  5. Suchen Sie die Sicherung, die Sie verwenden möchten, und wählen Sie Wiederherstellen aus.
  6. Bestätigen Sie auf der Seite Instanz aus einer Sicherung wiederherstellen unter Sicherungsdetails prüfen, ob Sie die richtige Sicherung ausgewählt haben.
  7. Wählen Sie unter Wiederherstellungsziel auswählen die Option Quellinstanz überschreiben aus.

    Prüfen Sie, ob der Name der Quellinstanz in Klammern angegeben ist.

  8. Geben Sie den Instanznamen in das Feld Zielinstanz-ID ein, um Ihre Auswahl zu bestätigen.
  9. Klicken Sie auf Wiederherstellen, um den Wiederherstellungsvorgang zu starten.
  10. Prüfen Sie den Status der Wiederherstellung. Rufen Sie dazu die Seite Vorgänge der Instanz auf.
  11. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie im ersten Schritt gelöscht haben.

gcloud

  1. Beschreiben Sie die Instanz, um zu prüfen, ob Replikate vorhanden sind:
    gcloud sql instances describe INSTANCE_NAME

    Notieren Sie sich alle in replicaNames aufgeführten Instanzen.

  2. So löschen Sie alle Replikate:
    gcloud sql instances delete REPLICA_NAME

    Wiederholen Sie dies für alle Replikate.

  3. Listen Sie die Sicherungen der Instanz auf:
    gcloud sql backups list --instance INSTANCE_NAME
  4. Suchen Sie die Sicherung, die Sie verwenden möchten, und notieren Sie den ID-Wert.
  5. Stellen Sie die Instanz aus der angegebenen Sicherung wieder her:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=INSTANCE_NAME
  6. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie im ersten Schritt gelöscht haben.

REST Version 1

  1. Listen Sie alle Replikate für die Instanz auf.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=replicaNames

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  2. Löschen Sie alle Replikate:

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • replica-id: die Replikat-ID

    HTTP-Methode und URL:

    DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/replica-id

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    Wiederholen Sie dies für jedes Lesereplikat.

  3. Listen Sie die Sicherungen der Instanz auf, um die ID der gewünschten Sicherung zu ermitteln.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  4. Stellen Sie die Instanz aus der Sicherung wieder her.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID
    • backup-id: die Sicherungs-ID

    HTTP-Methode und URL:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/restoreBackup

    JSON-Text anfordern:

    {
      "restoreBackupContext":
      {
        "backupRunId": "backup-id",
      }
    }
    

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten in etwa folgende JSON-Antwort erhalten:

  5. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

REST v1beta4

  1. Listen Sie alle Replikate für die Instanz auf.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=replicaNames

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  2. Löschen Sie alle Replikate:

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • replica-id: die Replikat-ID

    HTTP-Methode und URL:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/replica-id

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

    Wiederholen Sie dies für jedes Lesereplikat.

  3. Listen Sie die Sicherungen der Instanz auf, um die ID der gewünschten Sicherung zu ermitteln.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID

    HTTP-Methode und URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

  4. Stellen Sie die Instanz aus der Sicherung wieder her.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • project-id: die Projekt-ID
    • instance-id: die Instanz-ID
    • backup-id: die Sicherungs-ID

    HTTP-Methode und URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/restoreBackup

    JSON-Text anfordern:

    {
      "restoreBackupContext":
      {
        "backupRunId": "backup-id",
      }
    }
    

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    Sie sollten in etwa folgende JSON-Antwort erhalten:

  5. Erstellen Sie nach Abschluss der Wiederherstellung alle Replikate neu, die Sie zuvor gelöscht haben.

Instanz in einem anderen Projekt wiederherstellen

Mit dem Parameter project können Sie Daten in einer Instanz wiederherstellen, die sich in einem anderen Projekt befindet als in jenem, in dem die Sicherung erstellt wurde. Wenn Sie den Parameter project verwenden, rufen Sie restoreBackup im Projekt und auf der Instanz auf, für die Sie Daten wiederherstellen möchten. Wenn Sie aus einer Sicherung eine andere Instanz wiederherstellen, werden die Daten in der Zielinstanz in den Zustand versetzt, den die Quellinstanz zum Zeitpunkt der Sicherung hatte.

Berechtigungen

Der Nutzer, der die Wiederherstellung in einem anderen Projekt durchführt, muss die Berechtigung cloudsql.instances.restoreBackup für das Zielprojekt und die Berechtigung cloudsql.backupRuns.get für die Quellinstanz haben. Diese Berechtigungen sind in der Rolle Cloud SQL Admin enthalten.

So stellen Sie Daten in einer Instanz in einem anderen Projekt wieder her:

REST Version 1

Rufen Sie backupId mit diesem Befehl ab.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Stellen Sie die Sicherung für eine Instanz in einem anderen Projekt wieder her.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • source-project-id: die ID des Quellprojekts
  • target-project-id: die ID des Zielprojekts
  • target-instance-id: die ID der Zielinstanz
  • source-instance-id: die ID der Quellinstanz
  • backup-id: die Sicherungs-ID

HTTP-Methode und URL:

POST https://sqladmin.googleapis.com/v1/projects/target-project-id/instances/target-instance-id/restoreBackup

JSON-Text anfordern:

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Weitere Informationen zum Attribut project finden Sie unter restoreBackup

REST v1beta4

Rufen Sie backupId mit diesem Befehl ab.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • project-id: die Projekt-ID
  • instance-id: die Instanz-ID

HTTP-Methode und URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Stellen Sie die Sicherung für eine Instanz in einem anderen Projekt wieder her.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • source-project-id: die ID des Quellprojekts
  • target-project-id: die ID des Zielprojekts
  • target-instance-id: die ID der Zielinstanz
  • source-instance-id: die ID der Quellinstanz
  • backup-id: die Sicherungs-ID

HTTP-Methode und URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/target-project-id/instances/target-instance-id/restoreBackup

JSON-Text anfordern:

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

Weitere Informationen zum Attribut project finden Sie unter restoreBackup

Wiederherstellung zu einem bestimmten Zeitpunkt ausführen

Weitere Informationen zur Wiederherstellung zu einem bestimmten Zeitpunkt finden Sie unter Wiederherstellung zu einem bestimmten Zeitpunkt.

Wiederherstellungsposition ermitteln

Vor dem Durchführen einer Wiederherstellung zu einem bestimmten Zeitpunkt müssen Sie einen Dateinamen für das binäre Log und die Wiederherstellungsposition identifizieren, die den Zeitpunkt angibt, zu dem die Instanz wiederhergestellt werden soll.

Informationen dazu finden Sie unter Wiederherstellungsposition angeben.

Nächste Schritte