Visão geral dos backups

Nesta página, descrevemos como funcionam os backups da sua instância do Cloud SQL.

Para ver instruções passo a passo para programar backups ou criar um backup sob demanda, consulte Como criar e gerenciar backups automáticos e sob demanda.

Para ter uma visão geral de como restaurar dados de uma instância por meio do backup, consulte Visão geral da restauração de uma instância.

O que os backups oferecem

Os backups ajudam a restaurar dados perdidos na instância do Cloud SQL. Além disso, se uma instância tiver um problema, restaure-a para um estado anterior usando o backup para substituí-la. Ative backups automáticos para qualquer instância que contenha dados necessários. Os backups protegem seus dados contra perda ou danos.

Quanto custam os backups

Por padrão, para cada instância, o Cloud SQL mantém sete backups automatizados, além de todos os backups sob demanda. É possível configurar quantos backups automáticos são retidos. Nós cobramos uma taxa mais baixa pelo armazenamento de backup do que por outros tipos de instâncias. Você pode reter mais, mas no mínimo que backups automáticos.

Consulte a página de preços para mais informações.

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 englobam todo o banco de dados. As exportações podem selecionar conteúdos específicos.

Não é possível usar as operações de backup e restauração para fazer upgrade de um banco de dados para uma versão posterior. Só é possível restaurar de um backup para uma instância com a mesma versão do banco de dados.

Se quiser fazer upgrade para uma versão posterior, exporte e importe o banco de dados para uma nova instância do Cloud SQL.

Sobre o tamanho dos backups

Os backups do Cloud SQL 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 do banco de dados, mas os tamanhos dos próximos backups 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 que um backup completo ainda exista.

Tipos de backup

O Cloud SQL realiza dois tipos de backup:

Backups sob demanda

É possível criar um backup a qualquer momento. Isso pode ser útil se você está prestes a executar uma operação arriscada no banco de dados ou se precisa de um backup e não quer esperar pela janela de backup. É possível criar backups sob demanda para qualquer instância, mesmo que a instância não tenha backups automáticos ativados.

Os backups sob demanda não são excluídos automaticamente da mesma forma como os backups automáticos são. Eles perduram até que você os exclua ou até que a instância deles seja excluída. Como não são excluídos automaticamente, os backups sob demanda poderão afetar o faturamento a longo prazo.

Backups automatizados

Os backups automáticos usam uma janela de backup de quatro horas. O backup é iniciado durante essa janela. Sempre que possível, programe backups quando a instância tiver a menor atividade.

Durante a janela de backup, os backups automatizados ocorrem todos os dias em que a instância estiver em execução. Um backup automático extra é feito após a interrupção da instância para proteger todas as alterações realizadas antes da interrupção. Por padrão, até sete backups mais recentes são mantidos. Os backups automáticos serão interrompidos se a instância estiver interrompida por mais de 36 horas. É possível configurar quantos backups automáticos reter, mas não é possível reter menos do que o padrão (sete).

Onde os backups são armazenados

Os locais dos backups incluem o seguinte:

  • Locais padrão selecionados pelo Cloud SQL com base na localização da instância original
  • Locais personalizados escolhidos por você quando não quiser usar o local padrão

Locais de backup padrão

Se um local de armazenamento não for especificado, os backups serão armazenados na multirregião geograficamente mais próxima do local da instância do Cloud SQL. Por exemplo, se a sua instância do Cloud SQL estiver em us-central1, seus backups serão armazenados na multirregião us por padrão. No entanto, um local padrão, como australia-southeast1, estará fora de uma multirregião. A multirregião mais próxima é asia.

Locais de backup personalizados

O Cloud SQL permite que você selecione um local personalizado para seus dados de backup. Isso será útil se sua organização precisar obedecer aos regulamentos de residência de dados que exigem que você mantenha seus backups em um limite geográfico específico. Se sua organização tiver esse tipo de requisito, ela provavelmente usará uma política organizacional de restrição de local de recursos. Com essa política, quando você tenta usar um local geográfico que não está em conformidade com a política, um alerta é exibido na página Backups. Se você vir esse alerta, precisará alterar o local de backup para um local permitido pela política.

Para uma lista completa de valores regionais válidos, consulte Locais de instância. Para uma lista completa de valores multirregionais, consulte Locais multirregionais.

Consulte Como configurar um local personalizado para backups e Como visualizar locais para backups.

Retenção automatizada de backup

É possível definir a retenção de backup automatizada para mais, mas não menos que o padrão (sete).

Consulte Como configurar a retenção automática de backup.

Posso exportar um backup?

Não é possível exportar um backup. Somente os dados da instância podem ser exportados. Consulte Como exportar dados do Cloud SQL.

Sobre o usuário de backup especial

O Cloud SQL cria um usuário de banco de dados especial, cloudsqladmin, para cada instância e gera uma senha exclusiva e específica da instância para ele. O Cloud SQL faz login como usuário cloudsqladmin para executar backups automatizados.

Como os backups afetam as operações de instância

Gravações e outras operações não são afetadas por operações de backup.

Solução de problemas

Problema Solução de problemas
Não é possível ver o status da operação atual. O Console do Google Cloud informa apenas sucesso ou falha quando a operação é concluída. 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 um 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.googleapis.com/sqlagent.out
  • cloudsql.googleapis.com/sqlserver.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.
Não é possível fazer um backup depois que uma instância é excluída. O período de carência para uma limpeza de instância do Cloud SQL é de quatro dias. Durante esse período, o suporte ao cliente pode recriar a instância. Depois que as instâncias são removidas, não é possível recuperar dados.

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. Apenas sete backups são mantidos. Os backups são removidos regularmente devido ao custo e ao tamanho da retenção de backups. Infelizmente, isso significa que os backups visíveis atualmente 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 falhou e você vê uma mensagem de Unknown error. A operação de backup pode ter expirado.

Há duas sinalizações que influenciam a criação de backup: checkpoint_timeout e checkpoint_completion_target. No início do backup, um checkpoint slow é executado e usa checkpoint_completion_target multiplicado por checkpoint_timeout.

Por exemplo, 900 sec * 0.9 sec = 810 sec = 13.5 min

Por isso, o tempo limite é atingido. Diminuir o valor de checkpoint_completion_target corrige o problema nesse caso.

Um backup automático falhou e você não recebeu uma notificação por e-mail. As notificações não são compatíveis com falhas no backup.

Quando um backup automático falha, uma mensagem de Operation error é exibida na página Details da instância do Cloud SQL.

É possível encontrar o status de um backup usando a API REST ou os comandos da gcloud. Por exemplo, primeiro liste os backups de uma instância e, em seguida, descreva um backup específico pelo ID:


gcloud sql backups list \
--project=PROJECT_ID \
--instance=INSTANCE_ID
   

gcloud sql backups describe BACKUP-ID \
--instance=INSTANCE_ID
    

A seguir