Effectuer une opération de restauration sur place

Cette page explique comment restaurer les données d'une sauvegarde dans une base de données portant le même nom que la base de données source de la sauvegarde. Avant de lire cette page, vous devez connaître la procédure de sauvegarde et de restauration des données.

Restauration sur place

Une restauration sur place vous permet de restaurer une base de données à partir d'une sauvegarde la base de données source qui a créé la sauvegarde alors que la base de données d'origine existe. Une restauration in situ vous permet d'éviter de rediriger le trafic ou de créer une base de données portant un autre nom.

Une opération de restauration doit utiliser une base de données de destination n'existe pas encore. Vous pouvez toutefois simuler une restauration in situ en supprimant la base de données source, puis en effectuant une restauration à partir d'une sauvegarde vers une nouvelle base de données portant le même nom que la base de données source.

Effectuer une restauration sur place

Pour effectuer une restauration in situ, procédez comme suit :

  1. Identifiez la sauvegarde à utiliser pour l'opération de restauration.
  2. Supprimez la base de données existante.
  3. Utilisez la sauvegarde et l'ID de la base de données supprimée pour terminer l'opération de restauration.
.

Avant de commencer

Nous vous recommandons de suivre les étapes suivantes avant de commencer le processus de restauration sur place :

  1. Exportez les données dans la base de données que vous allez supprimer.

    Si vous devez récupérer la base de données supprimée, import les données de l'opération d'exportation. Pour récupérer la base de données supprimée à partir du même ID de base de données, vous devez attendre que toutes les opérations de restauration en cours d'exécution se terminent, puis:

    1. Supprimez la base de données existante à l'aide de l'ID de base de données, puis attendez au moins cinq minutes.
    2. Créer une base de données avec l'ID de base de données
    3. Lancer une opération d'importation
  2. Récupérez et copiez la configuration d'index de votre base de données. Les opérations d'exportation ne capturent pas les définitions d'index. Utilisez la configuration d'index pour recréer des index une fois l'opération de restauration in situ terminée. Utilisez les commandes suivantes pour récupérer la configuration des index de votre base de données :

    • Utilisez gcloud firestore indexes composite list pour récupérer la liste des index composites :

      gcloud firestore indexes composite list --database=DATABASE_ID
      

      Remplacez DATABASE_ID par l'ID de votre base de données.

    • Utiliser gcloud firestore indexes fields list pour récupérer la liste des exceptions d'index à champ unique (intégrées).

      gcloud firestore indexes fields list --database=DATABASE_ID
      

Effectuer une restauration sur place

Pour effectuer une opération de restauration sur place, procédez comme suit : Ce processus nécessite un temps d'arrêt entre le moment où vous supprimez la base de données et la fin de l'opération de restauration.

Une fois qu'une opération de restauration a commencé, vous ne pouvez pas l'annuler et devez attendre qu'elle soit terminée. L'opération de restauration occupe immédiatement ID de base de données utilisé pour l'opération.

  1. Utilisez la commande gcloud alpha firestore backups list pour identifier la sauvegarde à utiliser. pour l'opération de restauration et notez le nom de la ressource. Le nom de la ressource utilise le format suivant :

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. Utilisez la commande gcloud firestore databases delete pour supprimer base de données:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    Remplacez DATABASE_ID par l'ID de la base de données.

  3. Patientez au moins cinq minutes après la suppression de la base de données pour l'ID de base de données. pour qu'ils soient de nouveau disponibles. Lancez une opération de restauration à l'aide de la commande gcloud alpha firestore databases restore :

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

    Remplacez DATABASE_ID par l'ID de la base de données.

Étape suivante