Restaurar um backup do Spanner Omni

É possível restaurar um backup de um banco de dados do Spanner Omni em um novo banco de dados. O banco de dados restaurado tem todas as informações de dados e esquema do banco de dados original no versionTime do backup, incluindo todas as opções de banco de dados definidas com o comando ALTER DATABASE SET OPTIONS.

Os itens a seguir não são incluídos em um banco de dados restaurado:

  • Permissões do IAM. É preciso aplicar as permissões do IAM adequadas após a conclusão da restauração.

  • Dados internos de qualquer fluxo de alterações.

  • Time to live (TTL) definido por uma política de exclusão de linhas. É necessário reconfigurar essas políticas após a conclusão da restauração.

  • Pontos de divisão que você cria ao pré-dividir um banco de dados.

Como funciona a restauração

Ao restaurar um banco de dados do Spanner Omni, é necessário especificar um backup de origem e um novo banco de dados de destino. Não é possível restaurar para um banco de dados atual.

O processo de restauração oferece alta disponibilidade. É possível restaurar o banco de dados, desde que a maioria do quórum das regiões e zonas no destino esteja disponível.

Estados de restauração

Um banco de dados restaurado passa por três estados, monitorados por duas operações de longa duração.

Estado Descrição
CREATING O Spanner Omni começa a restauração criando um novo banco de dados e montando arquivos do backup. Nesse estado, o banco de dados restaurado ainda não está pronto para uso. Quando o processo terminar, o banco de dados estará pronto para uso.

Observação:o Spanner Omni não permite excluir o backup durante a restauração. É possível excluí-lo depois que a restauração for concluída e o banco de dados entrar no estado READY.
READY_OPTIMIZING Depois de montar o backup, o Spanner Omni começa a copiar os dados para o novo banco de dados enquanto otimiza o tamanho armazenado. Seu banco de dados está pronto para uso durante esse processo.

Advertências:
  • As latências de leitura podem ser um pouco maiores do que o normal.
  • As métricas de armazenamento mostram o tamanho do novo banco de dados, não do backup. Os resultados podem não refletir o tamanho total de todos os dados durante a transferência.
  • Não é possível excluir o backup montado durante esse estado.
READY Quando a operação de cópia e otimização é concluída, o banco de dados passa para o estado READY. O banco de dados foi totalmente restaurado e não precisa mais do backup.

Para acompanhar o progresso durante o estado CREATING, consulte a operação de restauração de longa duração, que retorna um objeto RestoreDatabaseMetadata. Durante o estado READY_OPTIMIZING, a operação retorna um objeto OptimizeRestoredDatabaseMetadata.

Controle de acesso (IAM)

Os papéis a seguir fornecem as permissões necessárias para as operações de restauração do Spanner Omni:

Papel do IAM Permissões
roles/spanner.restoreAdmin Permissão para restaurar usando um backup.
roles/spanner.admin Acesso total às operações de restauração e a todos os outros recursos do Spanner Omni.
owner Acesso total às operações de restauração.
editor Acesso total às operações de restauração.
viewer Permissão para visualizar operações de restauração. Não é possível criar, atualizar, excluir ou copiar um backup.

Restaurar um banco de dados a partir de um backup

Para restaurar um banco de dados, use o comando spanner databases restore:

spanner databases restore \
  --destination-database=RESTORE_DATABASE_NAME \
  --source-backup=BACKUP_NAME \
  --async

A seguir