Realize uma operação de restauro no local

Esta página descreve como restaurar dados numa cópia de segurança para uma base de dados com o mesmo nome que a base de dados de origem da cópia de segurança. Antes de ler esta página, deve conhecer o artigo Fazer uma cópia de segurança e restaurar dados.

Restauro no local

Uma restauração no local permite-lhe restaurar uma base de dados a partir de uma cópia de segurança para a base de dados de origem que criou a cópia de segurança enquanto a base de dados original ainda existe. Uma restauração no local ajuda a evitar o reencaminhamento do tráfego ou a criação de uma base de dados com um nome diferente.

Uma operação de restauro tem de usar uma base de dados de destino que ainda não exista. No entanto, pode simular uma restauração no local eliminando a base de dados de origem e, em seguida, restaurando a partir de uma cópia de segurança para uma nova base de dados com o mesmo nome que a base de dados de origem.

Faça uma restauração no local

Para fazer uma restauração no local, siga estes passos:

  1. Identifique a cópia de segurança a usar para a operação de restauro.
  2. Elimine a base de dados existente.
  3. Use a cópia de segurança e o ID da base de dados eliminada para concluir a operação de restauro.

Antes de começar

Recomendamos que conclua os seguintes passos antes de iniciar o processo de restauro no local.

Recupere e copie a configuração do índice da sua base de dados. Use a configuração do índice para recriar os índices depois de concluir a operação de restauro no local. Use os seguintes comandos para obter a configuração do índice da sua base de dados:

  • Use gcloud firestore indexes composite list para obter uma lista de índices compostos:

        gcloud firestore indexes composite list --database=DATABASE_ID
    

    Substitua DATABASE_ID pelo ID da sua base de dados.

  • Use gcloud firestore indexes fields list para receber uma lista de isenções de índice de campo único (incorporadas).

        gcloud firestore indexes fields list --database=DATABASE_ID
    

Faça uma restauração no local

Conclua os passos seguintes para realizar uma operação de restauro no local. Este processo requer um tempo de inatividade entre o momento em que elimina a base de dados e o momento em que a operação de restauro é concluída.

Depois de iniciar uma operação de restauro, não pode cancelá-la e tem de aguardar até que a operação seja concluída. A operação de restauro ocupa imediatamente o ID da base de dados usado na operação.

  1. Use o comando gcloud firestore backups list para identificar a cópia de segurança a usar para a operação de restauro e anote o nome do recurso. O nome do recurso usa o seguinte formato:

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. Use o comando gcloud firestore databases delete para eliminar a base de dados existente:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    Substitua DATABASE_ID pelo ID da base de dados.

  3. Aguarde, pelo menos, 5 minutos após a eliminação da base de dados para que o ID da base de dados fique novamente disponível. Inicie uma operação de restauro com o comando gcloud firestore databases restore:

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

    Substitua DATABASE_ID pelo ID da base de dados.

O que se segue?