Visão geral de backup e restauração

O backup e a restauração do Spanner permitem criar backups de bancos de dados do Spanner sob demanda e restaurá-los para fornecer proteção contra erros de operador e aplicativo que resultam em corrupção lógica de dados. Os backups são altamente disponíveis, criptografados e podem ser retidos por até um ano a partir do momento em que são criados. Quando você cria um backup, ele reside na mesma instância, região e projeto que o banco de dados de origem. Se você precisar restaurar o backup em uma região ou projeto diferente por motivos de conformidade ou continuidade de negócios, copie o backup para uma instância em uma região ou projeto separado. Para reter backups por mais de um ano, recomendamos exportar seu banco de dados. Para proteção contra corrupção lógica de dados, o Spanner também oferece recuperação pontual. Também é possível ativar a proteção contra exclusão de banco de dados para impedir a exclusão acidental de bancos de dados.

É possível fazer o backup e a restauração das seguintes maneiras:

Principais recursos

  • Consistência de dados: os backups são uma cópia transacional e consistente externamente de um banco de dados do Spanner em version_time do backup.

  • Replicação: os backups residem na mesma instância do banco de dados de origem e são replicados nos mesmos locais geográficos. Para instâncias regionais, o backup é armazenado em cada uma das três zonas de leitura e gravação. Para instâncias multirregionais, o backup é armazenado em todas as zonas que contêm uma réplica de leitura/gravação ou somente leitura. Se for necessário armazenar o backup do banco de dados em uma região ou um projeto diferente, copie o backup concluído da instância de origem para uma instância de destino localizada em uma região ou projeto diferente. Para mais informações, consulte Copiar um backup.

  • Expiração automática: todos os backups têm uma data de validade especificada pelo usuário que determina quando ela será excluída automaticamente. O Spanner exclui backups expirados de maneira assíncrona. Portanto, pode haver um atraso entre a expiração e a exclusão de um backup.

A tabela a seguir descreve vários planos de recuperação de dados, a abordagem recomendada para implementar o plano e o tempo máximo de retenção para a abordagem sugerida.

Plano de recuperação de dadosAbordagem recomendadaTempo máximo de retenção para a abordagem sugerida
Armazenamento do backup de um banco de dados na mesma instância, região e projeto que o banco de dados de origem Crie um backup. 1 ano
Armazenar o backup de um banco de dados em uma instância, região ou projeto diferente do banco de dados de origem (ou seja, um backup entre regiões ou projetos) Crie um backup e copie-o para uma instância em uma região ou projeto diferente. 1 ano
Armazenar o backup no Cloud Storage Exportar o banco de dados para um bucket do Cloud Storage. Para ver uma comparação detalhada entre backup e exportação, consulte Escolher entre backup e restauração ou importação e exportação. Ilimitado (retido até a exclusão)
Recuperação pontual (PITR) Para recuperar dados de um momento no passado, escolha PITR. É possível alterar o version_retention_period do banco de dados do padrão de 1 hora para, no máximo, sete dias. 7 dias

Controle de acesso com o Identity and Access Management (IAM)

O IAM permite controlar o acesso aos recursos do Spanner, que incluem backups e bancos de dados restaurados. Se você não conhece o IAM, os papéis e as permissões, consulte Visão geral do IAM para uma introdução.

Os recursos de backup são organizados em instâncias na hierarquia de recursos do Spanner. Recomendamos a aplicação das políticas do IAM no nível do projeto ou da instância. Se você precisar de um controle mais refinado, as políticas do IAM também podem ser aplicadas no nível de backup e banco de dados, mas isso não é recomendado devido à complexidade. Lembre-se de que os backups não contêm metadados do banco de dados, como políticas de IAM. Portanto, quando você restaurar um banco de dados, ele inicialmente herdará as políticas da instância pai.

Esta seção descreve os papéis predefinidos que têm acesso a backup e restauração.

Os papéis a seguir são projetados especificamente para backup e restauração:

  • spanner.backupAdmin: tem acesso para criar, visualizar, atualizar, copiar e excluir backups. Esse papel também pode visualizar e gerenciar a política do IAM de um backup. Esse papel não pode restaurar um banco de dados a partir de um backup.
  • spanner.restoreAdmin: tem acesso para restaurar bancos de dados de backups. Se você precisar restaurar um backup em uma instância diferente, aplique esse papel no nível do projeto ou em ambas as instâncias. Esse papel não pode criar backups.
  • spanner.backupWriter: tem acesso para criar e copiar backups, mas não pode atualizá-los ou excluí-los. Esse papel é usado por scripts que automatizam a criação de backups.

Os seguintes papéis também têm acesso ao backup e à restauração:

  • spanner.admin: tem acesso total ao backup e à restauração. Esse papel tem acesso total a todos os recursos do Spanner.
  • owner: tem acesso total ao backup e à restauração.
  • editor: tem acesso total ao backup e à restauração.
  • viewer: tem acesso para visualizar backups, operações de backup e operações de restauração. Esse papel não pode criar, atualizar, excluir, copiar ou restaurar um backup.

Para mais informações, consulte IAM do Spanner.

Preços

A cobrança é feita com base na quantidade de armazenamento usado pelos backups por unidade de tempo. O faturamento começa quando a operação de backup é concluída e vai continuar até que o backup seja excluído. Um backup concluído é faturado por no mínimo 24 horas. Se você criar um backup e excluí-lo um minuto após a conclusão, ainda será cobrado por 24 horas.

A cópia de um backup está sujeita aos mesmos custos de armazenamento de um backup original. Se você criar uma cópia entre duas instâncias que ocupam regiões diferentes, serão aplicados custos de transferência de dados de saída.

Não há cobrança pela restauração de um backup.

Os backups são armazenados e faturados separadamente. O armazenamento de backup não afeta o faturamento para armazenamento do banco de dados nem os limites de armazenamento do banco de dados. Para mais informações, consulte também Métricas de utilização do armazenamento.

Para informações mais completas sobre os custos de backup, consulte Preços do Spanner.

A seguir