Restaurar uma instância

Nesta página, veja como restaurar sua instância de um backup.

Para mais informações, práticas recomendadas e requisitos para operações e restauração, consulte Visão geral da restauração de uma instância.

Como restaurar uma instância de um backup

Você pode usar um backup para restaurar a mesma instância que deu origem ao backup ou uma instância diferente no mesmo projeto.

Como restaurar para a mesma instância

Ao usar um backup para restaurar a instância original dele, os dados nessa instância retornam ao estado em que estavam no momento em que o backup foi feito. Para informações sobre como restaurar uma instância, consulte as Dicas sobre como fazer uma restauração.

Console

  1. Acesse a página "Instâncias" do Cloud SQL no Console do Google Cloud.

    Acesse a página "Instâncias" do Cloud SQL

  2. Se a instância de destino tiver réplicas de leitura, use o menu "Mais ações" Ícone mais ações. à extrema direita para excluí-las.
  3. Clique na instância que você quer restaurar para abrir a respectiva página Detalhes da instância.
  4. Clique na guia Backups.
  5. Encontre o backup que você quer usar e selecione Restaurar.
  6. Na caixa de diálogo Restaurar uma instância de um backup, verifique se o nome da instância que você quer usar para a restauração está selecionado no menu suspenso da instância. A instância de destino padrão é a mesma em que o backup foi criado.
  7. Digite o nome da instância no campo Nome da instância para confirmar a seleção.
  8. Clique em RESTAURAR para iniciar o processo de restauração.
  9. Verifique o status da operação de restauração na página Operações da instância.
  10. Após a conclusão da operação de restauração, recrie todas as réplicas que você excluiu na primeira etapa.

    Não é possível reutilizar o nome da instância por até uma semana após a exclusão dela.

gcloud

  1. Descreva a instância para ver se ela tem alguma réplica:
    gcloud sql instances describe [INSTANCE_NAME]
    

    Anote todas as instâncias listadas em replicaNames.

  2. Exclua todas as réplicas:
    gcloud sql instances delete [REPLICA_NAME]
    

    Repita para todas as réplicas.

  3. Liste os backups da instância:
    gcloud sql backups list --instance [INSTANCE_NAME]
    
  4. Encontre o backup a ser usado e registre o valor ID correspondente.
  5. Restaure a instância a partir do backup especificado:
    gcloud sql backups restore [BACKUP_ID] --restore-instance=[INSTANCE_NAME]
  6. Após a conclusão da operação de restauração, recrie todas as réplicas que você excluiu na primeira etapa.

API REST v1beta4

  1. Liste os backups da instância para ver o ID do backup a ser usado.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • instance-id: o ID da instância

    Método HTTP e URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

  2. Restaure a instância por meio do backup.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • instance-id: o ID da instância
    • backup-id O ID de backup

    Método HTTP e URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/restoreBackup

    Corpo JSON da solicitação:

    {
      "restoreBackupContext":
      {
        "backupRunId": "backup-id",
      }
    }
    

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

  3. Após a conclusão da restauração, recrie as réplicas que você excluiu anteriormente.

    Não é possível reutilizar o nome da instância por até uma semana após a exclusão dela.

Como restaurar para uma instância diferente

Ao usar um backup para restaurar para uma instância diferente, os dados na instância de destino são atualizados para o estado em que eles estavam na instância de origem no momento em que o backup foi feito. Para mais informações, consulte Dicas para executar uma restauração e Dicas e requisitos de restauração para uma instância diferente.

Se você precisar de uma lista de backups do projeto e não puder visualizá-los na página de visão geral da instância devido a uma interrupção, use a API backupRuns.list com um caractere curinga (-) para recuperar uma lista de todos os backups de todas as instâncias do projeto. Para mais informações, consulte Como visualizar backups durante uma interrupção.

Console

  1. Acesse a página "Instâncias" do Cloud SQL no Console do Google Cloud.

    Acesse a página "Instâncias" do Cloud SQL

  2. Se a instância de destino tiver réplicas de leitura, use o menu "Mais ações" Ícone mais ações. à direita para excluí-las.
  3. Clique na instância de origem para abrir a página Detalhes da instância e selecione a guia Backups.
  4. Encontre o backup que você quer restaurar e selecione Restaurar.
  5. Na caixa de diálogo Restaurar uma instância de um backup, selecione a instância que você quer restaurar no menu suspenso Instância.
  6. Na caixa de diálogo Restaurar uma instância de um backup, selecione a instância que você quer usar para a restauração no menu suspenso Instância. A instância de destino padrão é a mesma em que o backup foi criado.
  7. Digite o nome da instância no campo Nome da instância para confirmar a seleção.
  8. Clique em RESTAURAR para iniciar o processo de restauração.
  9. Verifique o status da operação de restauração na guia Operações da instância de destino.
  10. Após a conclusão da restauração, recrie as réplicas que você excluiu anteriormente.

    Não é possível reutilizar o nome da instância por até uma semana após a exclusão dela.

gcloud

  1. Descreva a instância de destino para ver se ela tem alguma réplica:
    gcloud sql instances describe [TARGET_INSTANCE_NAME]
    

    Anote todas as instâncias listadas em replicaNames.

  2. Exclua todas as réplicas:
    gcloud sql instances delete [REPLICA_NAME]
    

    Repita para cada réplica.

  3. Liste os backups da instância de origem:
    gcloud sql backups list --instance [SOURCE_INSTANCE_NAME]
    
  4. Encontre o backup a ser usado e registre o valor ID correspondente.
  5. Restaure o backup especificado na instância de destino:
    gcloud sql backups restore [BACKUP_ID] --restore-instance=[TARGET_INSTANCE_NAME] \
                                              --backup-instance=[SOURCE_INSTANCE_NAME]
        
  6. Após a conclusão da restauração, recrie as réplicas que você excluiu anteriormente.

API REST v1beta4

  1. Liste todas as réplicas da instância de destino.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • instance-id: o ID da instância

    Método HTTP e URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=replicaNames

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

  2. Exclua todas as réplicas.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • replica-id: o ID da réplica

    Método HTTP e URL:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/replica-id

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

    Repita para cada réplica.

  3. Liste os backups da instância de origem para ver o ID do backup que você quer usar.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • instance-id: o ID da instância

    Método HTTP e URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

  4. Restaure a instância de destino por meio do backup.

    Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

    • project-id: o ID do projeto
    • target-instance-id: o ID da instância de destino
    • source-instance-id: o ID da instância de origem
    • backup-id O ID de backup

    Método HTTP e URL:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/target-instance-id/restoreBackup

    Corpo JSON da solicitação:

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    Para enviar a solicitação, expanda uma destas opções:

    Você receberá uma resposta JSON semelhante a esta:

  5. Após a conclusão da restauração, recrie as réplicas que você excluiu anteriormente.

    Não é possível reutilizar o nome da instância por até uma semana após a exclusão dela.

Como realizar a restauração para uma instância em outro projeto

É possível usar o parâmetro project para restaurar dados para uma instância em um projeto diferente daquele em que o backup foi feito. Ao usar o parâmetro project, chame restoreBackup no projeto e na instância em que você quer restaurar os dados. Ao fazer a restauração a partir de um backup em uma instância diferente, você atualiza os dados na instância de destino para o estado em que estavam na instância de origem no momento do backup.

Permissões

O usuário que está restaurando para um projeto diferente precisa ter a permissão cloudsql.instances.restoreBackup nos dois projetos. Essa permissão está incluída no papel Cloud SQL Admin.

Para restaurar dados para uma instância em um projeto diferente, faça o seguinte:

API REST v1beta4

Para conseguir o backupId, execute o seguinte.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • project-id: o ID do projeto
  • instance-id: o ID da instância

Método HTTP e URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

Restaure o backup para uma instância em um projeto diferente:

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • source-project-id: o ID do projeto de origem
  • target-project-id: o ID do projeto de destino
  • target-instance-id: o ID da instância de destino
  • source-instance-id: o ID da instância de origem
  • backup-id O ID de backup

Método HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/target-project-id/instances/target-instance-id/restoreBackup

Corpo JSON da solicitação:

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

Para mais informações sobre a propriedade "project", consulte "restoreBackup"

Como executar uma recuperação pontual

Para executar uma recuperação pontual, consulte Recuperação pontual.

A seguir