Direktwiederherstellung ausführen

Auf dieser Seite wird beschrieben, wie Sie Daten in einer Sicherung in einer Datenbank mit demselben Namen wie die Quelldatenbank der Sicherung wiederherstellen. Bevor Sie diese Seite lesen, sollten Sie sich mit dem Sichern und Wiederherstellen von Daten vertraut gemacht haben.

Vor-Ort-Wiederherstellung

Bei einer direkten Wiederherstellung können Sie eine Datenbank aus einer Sicherung in der Quelldatenbank wiederherstellen, aus der die Sicherung erstellt wurde, während die ursprüngliche Datenbank noch vorhanden ist. Mit einer In-Place-Wiederherstellung können Sie den Traffic nicht umleiten oder eine Datenbank mit einem anderen Namen erstellen.

Für einen Wiederherstellungsvorgang muss eine Zieldatenbank verwendet werden, die noch nicht vorhanden ist. Sie können jedoch eine Vor-Ort-Wiederherstellung simulieren, indem Sie die Quelldatenbank löschen und dann aus einer Sicherung in einer neuen Datenbank mit demselben Namen wie die Quelldatenbank wiederherstellen.

Direkte Wiederherstellung ausführen

So führen Sie eine In-Place-Wiederherstellung durch:

  1. Ermitteln Sie die Sicherung, die für den Wiederherstellungsvorgang verwendet werden soll.
  2. Löschen Sie die vorhandene Datenbank.
  3. Verwenden Sie die Sicherung und die Datenbank-ID der gelöschten Datenbank, um die Wiederherstellung abzuschließen.

Hinweis

Wir empfehlen, die folgenden Schritte auszuführen, bevor Sie mit der Wiederherstellung vor Ort beginnen:

  1. Exportieren Sie die Daten in die Datenbank, die Sie löschen möchten.

    Wenn Sie die gelöschte Datenbank wiederherstellen müssen, importieren Sie die Daten aus dem Exportvorgang. Wenn Sie die gelöschte Datenbank mit derselben Datenbank-ID wiederherstellen möchten, müssen Sie warten, bis alle laufenden Wiederherstellungsvorgänge abgeschlossen sind, und dann:

    1. Löschen Sie die vorhandene Datenbank mit der Datenbank-ID und warten Sie mindestens 5 Minuten.
    2. Neue Datenbank mit der Datenbank-ID erstellen
    3. Importvorgang starten
  2. Rufen Sie die Indexkonfiguration Ihrer Datenbank ab und kopieren Sie sie. Bei Exportvorgängen werden keine Indexdefinitionen erfasst. Verwenden Sie die Indexkonfiguration, um die Indexe nach Abschluss der Vor-Ort-Wiederherstellung neu zu erstellen. Verwenden Sie die folgenden Befehle, um die Indexkonfiguration Ihrer Datenbank abzurufen:

    • Verwenden Sie gcloud firestore indexes composite list, um eine Liste zusammengesetzter Indexe abzurufen:

      gcloud firestore indexes composite list --database=DATABASE_ID
      

      Ersetzen Sie DATABASE_ID durch die ID Ihrer Datenbank.

    • Verwenden Sie gcloud firestore indexes fields list, um eine Liste der integrierten Einzelfeldindex-Ausnahmen abzurufen.

      gcloud firestore indexes fields list --database=DATABASE_ID
      

Direkte Wiederherstellung ausführen

Führen Sie die folgenden Schritte aus, um eine In-Place-Wiederherstellung durchzuführen. Dieser Vorgang erfordert eine Ausfallzeit zwischen dem Moment, in dem Sie die Datenbank löschen, und dem Abschluss der Wiederherstellung.

Nachdem ein Wiederherstellungsvorgang begonnen hat, können Sie ihn nicht mehr abbrechen und müssen warten, bis er abgeschlossen ist. Die Datenbank-ID, die für den Vorgang verwendet wird, wird sofort belegt.

  1. Identifizieren Sie mit dem Befehl gcloud alpha firestore backups list die Sicherung, die für den Wiederherstellungsvorgang verwendet werden soll, und notieren Sie sich den Ressourcennamen. Der Ressourcenname hat das folgende Format:

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. Verwenden Sie den Befehl gcloud firestore databases delete, um die vorhandene Datenbank zu löschen:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    Ersetzen Sie DATABASE_ID durch die Datenbank-ID.

  3. Warten Sie nach dem Löschen der Datenbank mindestens fünf Minuten, bis die Datenbank-ID wieder verfügbar ist. Starten Sie einen Wiederherstellungsvorgang mit dem Befehl gcloud alpha firestore databases restore:

    gcloud alpha firestore databases restore \
    --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \
    --destination-database='DATABASE_ID'
    

    Ersetzen Sie DATABASE_ID durch die Datenbank-ID.

Nächste Schritte