Visão geral dos backups do Cloud SQL

O Cloud SQL permite fazer backup das instâncias sob demanda ou automaticamente usando uma programação de backup. As configurações de backup disponíveis para sua instância dependem da opção de backup dela. Os backups do Cloud SQL são incrementais e ajudam a restaurar dados perdidos na instância do Cloud SQL. Os backups também são criptografados por padrão usando chaves de criptografia gerenciadas pelo Google ou chaves de criptografia gerenciadas pelo cliente (CMEK). Com os backups, você pode:

  • Restaure a instância para um estado anterior se ela estiver com um problema.
  • Configure a recuperação de desastres (DR) criando uma nova instância usando um backup em uma região ou zona diferente.
  • Crie várias instâncias usando backups para ajudar no desenvolvimento, teste e migração.

Para reter esses backups, defina as configurações de retenção de backup da instância. As configurações de retenção podem variar de acordo com a edição do Cloud SQL e a opção de backup da instância. Além disso, também é possível reter backups após a exclusão da instância para permitir a restauração dela após a exclusão.

Opções de backup

O Cloud SQL oferece duas opções de serviço de backup para gerenciar os backups da sua instância. As duas opções são compatíveis com Google Cloud-powered encryption keys e chaves de criptografia gerenciadas pelo cliente (CMEKs):

  • Backups avançados: os backups são gerenciados e armazenados em um projeto de gerenciamento de backup centralizado que usa o serviço de Backup e DR e oferece retenção obrigatória, programação granular e monitoramento. Para instâncias com CMEK, os backups aprimorados usam permissões de acesso de chave no agente de serviço de Backup e DR no projeto do backup vault, o que adiciona uma camada extra de proteção caso sua instância ou projeto original seja excluído.
  • Backups padrão: os backups são criados, gerenciados e armazenados no mesmo projeto que as instâncias do Cloud SQL. Essa é a oferta de backup atual do Cloud SQL, que agora é chamada de backups padrão.

Selecione uma opção de backup para cada instância. Para mais informações sobre cada opção de backup e os recursos dela, consulte Escolher sua opção de backup.

Tipos de solicitação de backup

É possível fazer backups sob demanda, automatizados ou finais das instâncias do Cloud SQL. A configuração disponível para esses backups depende da opção de backup selecionada da instância.

Backups sob demanda

Os backups sob demanda podem ser criados a qualquer momento. Eles são úteis se você estiver prestes a executar uma operação arriscada na instância ou se precisar de um backup e não quiser esperar pela janela de backup. É possível criar backups sob demanda para qualquer instância, mesmo que ela não tenha backups automáticos ativados.

Backups automatizados

Os backups automatizados são feitos em uma cadência programada, como por hora, diariamente, semanalmente ou mensalmente, enquanto a instância está em execução. A cadência programada depende da opção de backup escolhida para sua instância e da cadência definida na configuração de backup para a opção de backup selecionada. O backup é iniciado durante essa janela.

A retenção de backup automatizado depende da política de retenção configurada na opção de backup escolhida para sua instância. Recomendamos que você programe os backups quando a instância tiver menos atividade, se possível.

Também recomendamos que você não exclua manualmente nenhum backup automatizado, porque eles são necessários para permitir a recuperação pontual.

Para configurar os backups automáticos da instância, consulte Configurar backups automáticos.

Backup final

Com os backups finais, é possível fazer um backup da instância do Cloud SQL antes de excluí-la. Isso é útil para reter os dados da instância depois que você a exclui. É possível usar o backup final para criar uma nova instância ou restaurar uma instância atual. Para mais informações sobre como acessar e visualizar detalhes sobre o backup final, consulte Ver uma lista de backups finais.

É possível configurar a instância para fazer um backup final automaticamente ao excluí-la. Para isso, ative a configuração de backup final na instância. Também é possível definir o período de retenção do backup final ao ativar os backups finais para sua instância. Se você não ativar os backups finais para sua instância, também poderá fazer um backup final ao excluir sua instância. Os backups finais estão disponíveis apenas para instâncias primárias e não são compatíveis com réplicas. Também é possível definir uma política da organização personalizada do Cloud SQL para fazer um backup final na exclusão de todas as instâncias da organização e definir um período de armazenamento padrão. Para mais informações, consulte Exemplos de políticas personalizadas da organização para casos de uso comuns.

Por padrão, o Cloud SQL retém o backup final por 30 dias. No entanto, é possível personalizar o tempo de retenção do backup pelo Cloud SQL. Esse período pode variar de 1 dia a 365 dias para backups padrão ou de 1 dia a 10 anos para backups avançados. Em seguida, é possível restaurar a instância do backup, desde que ela esteja disponível. Os backups finais são cobrados de forma semelhante a outros backups pelo número de dias retidos.

Para mais informações sobre como ativar backups finais para instâncias novas ou atuais usando a opção de backups padrão, consulte Configurar backups finais. Para backups aprimorados, os backups finais são gerenciados pelo plano de backup associado.

Para gerenciar um backup final depois que a instância for excluída, consulte Gerenciar backups de instâncias excluídas.

Retenção de backup

A retenção de backup é definida pelo tipo de solicitação de backup e pela opção de backup selecionada para a instância. Para backups automatizados, a retenção pode variar de 1 dia a 10 anos , dependendo da opção de backup da instância. Para backups sob demanda, os backups padrão são armazenados indefinidamente até serem excluídos manualmente, enquanto os backups aprimorados sob demanda oferecem suporte a períodos de retenção personalizados definidos pelo usuário de até 10 anos, conforme configurado no plano de backup associado. Para mais informações sobre a retenção de backup relacionada à opção de backup da instância, consulte Escolher a opção de backup.

Reter backups após a exclusão da instância

Os backups retidos são aqueles que são mantidos pelo Cloud SQL após a exclusão de uma instância. Esses backups consistem em backups on demand e backups automatizados criados quando a instância estava ativa. Quando você exclui uma instância, esses backups se tornam independentes dela e são armazenados no nível do projeto. Os backups retidos são diferentes dos backups finais, que são os últimos backups feitos no momento da exclusão da instância.

É possível atualizar a descrição desses backups para facilitar o gerenciamento deles no projeto do Cloud de Confiance by S3NS . Os backups retidos podem ser restaurados em uma instância nova ou atual do Cloud SQL a qualquer momento.

Para esses backups, o período de armazenamento é definido pelo tipo de backup e não pode ser alterado após a exclusão da instância. Para backups padrão, os backups sob demanda são mantidos indefinidamente até que o backup seja excluído manualmente ou o projeto que contém o backup seja excluído. Para backups avançados, os backups sob demanda são mantidos com base na regra de retenção selecionada. Os backups automatizados são excluídos de forma contínua, um backup por dia, após a exclusão da instância. O período contínuo é definido com base nas configurações de retenção da instância antes da exclusão, que podem variar de 1 dia a 10 anos, dependendo da opção de backup selecionada para a instância. Por exemplo, se a configuração de retenção de backup automatizado da instância foi definida como 7, o backup automatizado mais recente será excluído 7 dias após a exclusão da instância.

Os backups retidos podem ser excluídos manualmente a qualquer momento. No entanto, quando você exclui um backup retido, ele não pode ser recuperado.

Para backups padrão, como os nomes de instâncias podem ser usados depois que uma instância é excluída no Cloud SQL, os backups retidos são armazenados no seu projeto doCloud de Confiance com um campo chamado instance_deletion_time. Esse campo permite identificar se um backup específico pertence a uma instância ativa ou excluída. Também é possível atualizar a descrição de um backup para facilitar o gerenciamento.

Para mais informações sobre como ativar backups retidos para instâncias novas ou atuais usando a opção de backups padrão, consulte Configurar backups retidos. Para backups aprimorados, os backups retidos são gerenciados pelo plano de backup associado.

Para gerenciar um backup retido após a exclusão da instância, consulte Gerenciar backups de instâncias excluídas.

Backups de recuperação

O Cloud SQL tenta manter pelo menos um último backup diário de cada instância ativa, se não houver backups bons disponíveis como parte da política de backup automatizado. É possível usar esse backup para fins de recuperação entrando em contato com o Google Cloud Customer Care.

Verificações de integridade de dados e backup

O Cloud SQL executa automaticamente verificações de integridade do banco de dados em segundo plano para identificar possíveis problemas de integridade de dados. A verificação de integridade é feita como um processo off-line, restaurando uma amostra de backups iniciados pelo cliente ou backups de recuperação.

Backups para réplicas

Os backups não estão disponíveis para instâncias de réplica. Como as instâncias de réplica são cópias das instâncias primárias, os backups são mantidos com a instância primária. Se uma instância de réplica for promovida a uma instância independente devido a um failover ou switchover, ela será ativada para backups e vai exigir a própria configuração de backup. As réplicas promovidas não podem acessar os backups da instância principal.

Backups e exportações

Os backups são gerenciados pelo Cloud SQL de acordo com as políticas de retenção e armazenados separadamente da instância do Cloud SQL. Os backups do Cloud SQL são diferentes de uma exportação enviada ao Cloud Storage, em que você gerencia o ciclo de vida. Os backups abrangem todo o disco da instância. As exportações podem selecionar conteúdos específicos.

As operações de backup e restauração não podem ser usadas para fazer upgrade de uma instância para uma versão mais recente. Só é possível restaurar um backup em uma instância com a mesma versão de banco de dados de quando o backup foi feito.

Para fazer upgrade para uma versão mais recente, realize um upgrade de versão principal no local, use o Database Migration Service ou exporte e importe seu banco de dados para uma nova instância do Cloud SQL.

Tamanho do backup

Todos os backups do Cloud SQL, exceto o primeiro, são incrementais. Eles contêm apenas dados que foram alterados após o backup anterior. O backup mais antigo tem um tamanho semelhante ao da instância, mas os tamanhos dos backups subsequentes dependem da taxa de alteração dos dados. Quando o backup mais antigo é excluído, o tamanho do próximo backup mais antigo aumenta para se tornar um backup completo e é ajustado para capturar a diferença entre os backups. Cada backup incremental seguinte também é atualizado para corresponder ao novo backup completo.

É possível verificar o tamanho de um backup individual. O tamanho do backup representa o tamanho faturável de cada backup.

Solução de problemas

Problema Solução de problemas
Não é possível ver o status da operação atual. O console do Cloud de Confiance informa apenas o sucesso ou falha no momento da operação. Ele não foi criado para mostrar avisos ou outras atualizações.

Execute o comando gcloud sql operations list para listar todas as operações da instância do Cloud SQL especificada.

Você quer descobrir quem emitiu uma operação de backup sob demanda. A interface do usuário não mostra o usuário que iniciou uma operação.

Procure nos registros e filtre por texto para encontrar o usuário. Talvez seja necessário usar registros de auditoria para informações particulares. Os arquivos de registro relevantes incluem:

  • cloudsql.googlapis.com/mysql-general.log
  • cloudsql.googleapis.com/mysql.err
  • Se os registros de auditoria do Cloud estiverem ativados e você tiver as permissões necessárias para visualizá-los, cloudaudit.googleapis.com/activity também poderá estar disponível.
Depois que uma instância é excluída, não é possível fazer backup dela.

Se você excluir uma instância sem fazer um backup final dos dados, não será possível a recuperação de dados. No entanto, se você restaurar a instância, o Cloud SQL também vai restaurar os backups. Para mais informações sobre como recuperar uma instância excluída, consulte Reter backups após a exclusão da instância.

Se você tiver feito uma operação de exportação, crie uma nova instância e faça uma operação de importação para recriar o banco de dados. As exportações são gravadas no Cloud Storage e as importações são lidas de lá.

O backup automático fica paralisado por muitas horas e não pode ser cancelado. Os backups podem levar muito tempo, dependendo do tamanho do banco de dados.

Se você realmente precisa cancelar a operação, peça ao suporte ao cliente para aplicar force restart à instância.

Uma operação de restauração pode falhar quando um ou mais usuários referenciados no arquivo dump SQL não existem. Antes de restaurar um arquivo dump SQL, todos os usuários do banco de dados com objetos ou que receberam permissões para os objetos do banco de dados despejado precisam existir no banco de dados de destino. Caso contrário, a operação de restauração não recriará os objetos com a propriedade ou as permissões originais.

Crie os usuários do banco de dados antes de restaurar do dump SQL.

Você quer aumentar o número de dias em que pode manter backups automáticos, de sete para 30 dias ou mais. É possível configurar o número de backups automatizados que serão retidos, de 1 a 365. Os backups automatizados são removidos regularmente com base no valor de retenção configurado. Infelizmente, isso significa que os backups visíveis atuais são os únicos backups automatizados que podem ser usados para restaurar.

Para manter os backups indefinidamente, crie um backup sob demanda. Ele não é excluído da mesma forma que backups automáticos. Os backups sob demanda permanecem indefinidamente. Ou seja, eles permanecem até que sejam excluídos ou a instância a que pertencem seja excluída. Como esse tipo de backup não é excluído automaticamente, ele pode afetar o faturamento.

Um backup automático falhou e você não recebeu uma notificação por e-mail. Para que o Cloud SQL notifique você sobre o status do backup, configure um alerta com base em registros.
Um backup automatizado ou on demand falha em uma instância com mais de 50 rótulos definidos pelo usuário. Quando o Cloud SQL faz um backup, ele copia os rótulos definidos pelo usuário da instância para o snapshot de armazenamento subjacente e anexa rótulos internos do sistema. Se o número combinado de rótulos exceder o limite de 64 rótulos do snapshot, o backup vai falhar.

Para resolver esse problema, remova os rótulos em excesso para que a instância tenha 50 ou menos rótulos definidos pelo usuário. Para mais informações, consulte Rotular instâncias.

Não é possível excluir uma instância quando você opta por fazer um backup final na exclusão da instância. Ao excluir uma instância, você precisa confirmar se quer fazer um backup final dela antes da exclusão. Se você ativou o backup final usando a configuração de instância final-backup, a seleção feita ao excluir a instância precisa corresponder à configuração de instância de backup final definida quando você ativou o backup final para a instância. Para minimizar esse problema, siga um destes procedimentos:
  • Defina o valor de backup final para corresponder à configuração de backup atual da instância.
  • Deixe o campo de backup final vazio ao excluir a instância. Se você deixar o campo vazio, o Cloud SQL vai usar a configuração de backup final definida nas configurações da instância para fazer um backup final e definir a retenção dele.
Para conferir a configuração final da instância de backup, consulte Ver informações da instância.
Não é possível criar uma instância de réplica depois de criar uma instância principal com a configuração de backup final. Se você criar uma nova instância com a configuração de instância de backup final ativada, será necessário atualizar a política da organização de backup final para aplicar as configurações de backup apenas à instância principal. Os backups finais não são compatíveis com instâncias de réplica.
Para mais informações, consulte Políticas da organização do Cloud SQL.

A seguir