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:
- Identifique a cópia de segurança a usar para a operação de restauro.
- Elimine a base de dados existente.
- 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:
Exporte os dados na base de dados que vai eliminar.
Se precisar de recuperar a base de dados eliminada, importe os dados da operação de exportação. Para recuperar a base de dados eliminada para o mesmo ID da base de dados, tem de aguardar até que todas as operações de restauro em execução sejam concluídas e, em seguida:
- Elimine a base de dados existente com o ID da base de dados e aguarde, pelo menos, 5 minutos
- Crie uma nova base de dados com o ID da base de dados
- Inicie uma operação de importação
Recupere e copie a configuração do índice da sua base de dados. As operações de exportação não capturam definições de índice. 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.
Use o comando
gcloud alpha 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
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.
Aguarde, pelo menos, 5 minutos após eliminar a 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 alpha firestore databases restore
:gcloud alpha 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?
- Saiba mais sobre os agendamentos de cópias de segurança e as operações de restauro
- Saiba mais sobre a configuração da recuperação pontual (PITR)