Como clonar instâncias

Nesta página, você verá uma descrição de como clonar uma instância do Cloud SQL.

Uma instância clonada do Cloud SQL é uma cópia da instância de origem, mas completamente independente. Após a conclusão da operação de clonagem, as alterações na instância de origem não são refletidas no clone e vice-versa.

A configuração da instância de origem (política de ativação, sinalizações de banco de dados, conectividade etc.) é copiada para o clone. Réplicas e endereços IP da instância não são copiados. Você precisa configurar esses itens explicitamente no clone. Clonar uma instância não clona nenhum backup atual.

Não é possível clonar uma réplica. Você pode clonar uma instância que foi clonada de outra instância.

Você também pode clonar uma instância de um momento mais antigo, o que facilita a recuperação do banco de dados depois um evento destrutivo. Para saber mais, consulte Como executar uma recuperação de horário definido.

Como clonar uma instância de segunda geração

Console

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

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

  2. Encontre a instância que você quer clonar e abra o menu de mais ações na extremidade direita da listagem.

    Imagem do menu de três pontos

  3. Clique em Criar clone.
  4. Na página Criar clone, atualize o código da instância, se necessário, e clique em Criar clone, deixando a opção Clonar o último estado da instância selecionada.

    Você retorna à página de listagem de instâncias e o clone é inicializado.

gcloud

Clone a instância:

gcloud sql instances clone [SOURCE_INSTANCE_NAME] [TARGET_INSTANCE_NAME]

cURL

Clone a instância:

ACCESS_TOKEN="$(gcloud auth application-default print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
     --data '{"cloneContext": {"destinationInstanceName": "[TARGET_INSTANCE_NAME]" }}' \
     -X POST \
     https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[SOURCE_INSTANCE_NAME]/clone

Como clonar uma instância de Primeira geração

Console

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

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

  2. Localize a instância de Primeira geração que você quer clonar e abra o respectivo menu de mais ações, localizado na extremidade direita da listagem.

    Imagem do menu de três pontos

  3. Selecione Criar clone.
  4. Se você não tiver backups e geração de registros binários ativados para a instância, ative-os agora e clique em Continuar e em Esperar backup. Após a janela de backup, reinicie essa tarefa desde o início para criar o clone.

    Imagem de backups ativados no stepper do clone

  5. Quando você vê a página Criar clone com a possibilidade de atualizar o código da instância, faça isso, se necessário, e clique e Criar clone.

    Imagem da página de criação do clone final

    Você retorna à página de listagem de instâncias e o clone é inicializado.

gcloud

  1. Receba os detalhes da instância:
    gcloud sql instances describe [INSTANCE_NAME]
    
  2. Encontre os valores para binaryLogEnabled e enabled em backupConfiguration.
  3. Se algum dos valores não estiver Ativado, ative-o agora:
    1. Ative os backups:
      gcloud sql instances patch [INSTANCE_NAME] --backup-start-time [HH:MM]
      
    2. Ative a geração de registros binários:
      gcloud sql instances patch [INSTANCE_NAME] --enable-bin-log
      
  4. Se os backups ou a geração de registros binários não estiverem ativados, aguarde a realização de um backup.

    Isso pode levar até um dia, dependendo da janela de backup.

  5. Clone a instância:
    gcloud sql instances clone [SOURCE_INSTANCE_NAME] [TARGET_INSTANCE_NAME]
    

cURL

  1. Consiga os valores da configuração de backup atual.
    ACCESS_TOKEN="$(gcloud auth application-default print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         -X GET \
         https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[SOURCE_INSTANCE_NAME]?fields=settings
    

    A saída conterá backupConfiguration:

    "backupConfiguration": [
     {
        "kind": "sql#backupConfiguration",
        "startTime": "12:00",
        "enabled": false,
        "binaryLogEnabled": false
     }
    
  2. Caso enabled ou binaryLogEnabled seja false, use o método patch do recurso de instâncias para ativá-los. Especifique as propriedades da configuração de backup que você quer manter como está e as que quer alterar.

    Para ativar backups, defina enabled como true e startTime como um valor que seja o início da janela de backup. Para ativar a geração de relatórios binária, defina binaryLogEnabled como true.

    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data '{"settings" : {"backupConfiguration" : {"startTime": "[HH:MM]", "enabled": true, "binaryLogEnabled": true}}}' \
         -X PATCH \
         https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[SOURCE_INSTANCE_NAME]
    
  3. Se os backups ou a geração de registros binários não estiverem ativados, aguarde a realização de um backup.

    Isso pode levar até um dia, dependendo da janela de backup.

  4. Clone a instância:
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data '{"cloneContext": {"kind": "sql#cloneContext",
                  "destinationInstanceName": "[TARGET_INSTANCE_NAME]" }}' \
         -X POST \
         https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[SOURCE_INSTANCE_NAME]/clone
    
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Cloud SQL para MySQL