Como exportar dados

Nesta página, você verá como exportar dados de instâncias do Cloud SQL.

Para exportar dados para o Cloud Storage, a conta de serviço da instância precisa ter o papel de IAM storage.objectAdmin definido no projeto. Para mais informações, consulte Cloud Identity and Access Management para Cloud Storage.

As exportações usam recursos do banco de dados, mas não interferem nas operações normais do banco de dados, a menos que a instância tenha um provisionamento menor do que deveria ser.

Para ver as práticas recomendadas para exportação de dados, consulte Práticas recomendadas para importação e exportação de dados.

Para ver as práticas recomendadas para exportação de dados, consulte Práticas recomendadas para importação e exportação de dados.

Como exportar dados do Cloud SQL para um arquivo BAK

Antes de começar

Neste procedimento, é necessário exportar um arquivo para o Cloud Storage. Para exportar dados para o Cloud Storage, a conta de serviço da instância precisa ter os papéis storage.objectAdmin do IAM definidos no projeto. Para receber ajuda com os papéis do IAM, consulte Cloud Identity and Access Management para Cloud Storage.

É possível encontrar o nome da conta de serviço da instância na página Visão geral da instância no Console do Google Cloud. É possível verificar os papéis do bucket do Cloud Storage usando a ferramenta gsutil para inspecionar o bucket:

gsutil iam get gs://[BUCKET_NAME]

Saiba mais sobre como usar o IAM com buckets.

Como exportar dados para um arquivo BAK no Cloud Storage

Para exportar dados de um banco de dados em uma instância do Cloud SQL para um arquivo BAK em um bucket do Cloud Storage, siga estas instruções:

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. Clique na instância com os dados que você quer exportar para abrir a página Visão geral correspondente.
  3. Clique em EXPORTAR na barra de botões.
  4. Em Formato do arquivo, clique em BAK.
  5. Em Dados a serem exportados, use o menu suspenso para selecionar o banco de dados do qual você quer exportar.
  6. Em Destino, selecione Procurar para pesquisar um bucket ou uma pasta do Cloud Storage para a exportação.
  7. Clique em Exportar para iniciar a exportação.

gcloud

  1. Crie um bucket do Cloud Storage, caso ainda não tenha feito isso.

    Se precisar de ajuda para criar um bucket, consulte Como criar buckets do Storage.

  2. Faça upload do arquivo no seu bucket.

    Para ajuda sobre o upload de arquivos para buckets, consulte Como fazer o upload de um objeto.

  3. Descreva a instância usada para exportar:
      gcloud sql instances describe [INSTANCE_NAME]
      
  4. Copie o campo serviceAccountEmailAddress.
  5. Use gsutil iam para conceder o papel storage.objectAdmin do IAM à conta de serviço do bucket. Para ajuda com a configuração de permissões do IAM, consulte Como usar as permissões do Cloud IAM.
  6. Exporte o banco de dados:
      gcloud beta sql export bak [INSTANCE_NAME] gs://[BUCKET_NAME]/sqldumpfile.sql.gz \
                                  --database=[DATABASE_NAME]
      

    Para informações sobre como usar o comando gcloud beta sql export bak, consulte a página de referência do comando.

  7. Se você não precisar manter o papel do IAM definido anteriormente, revogue-o agora.

REST v1beta4

  1. Crie um bucket para a exportação:
    gsutil mb -p [PROJECT_NAME] -l [LOCATION_NAME] gs://[BUCKET_NAME]
    

    Essa etapa não é obrigatória, mas altamente recomendada para que você não abra acesso a outros dados.

  2. Forneça à instância o papel storage.objectAdmin do IAM no seu bucket. Para ajuda com a configuração de permissões do IAM, consulte Como usar as permissões do Cloud IAM.
  3. Exporte o banco de dados:

    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
    • bucket_name: o nome do bucket do Cloud Storage
    • path_to_dump_file: o caminho para o arquivo dump SQL
    • database_name_1: o nome de um banco de dados dentro da instância do Cloud SQL
    • database_name_2: o nome de um banco de dados dentro da instância do Cloud SQL
    • offload: ativa a exportação sem servidor. Defina como true para usar a exportação sem servidor.

    Método HTTP e URL:

    POST https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/export

    Corpo JSON da solicitação:

    {
     "exportContext":
       {
          "fileType": "BAK",
          "uri": "gs://bucket_name/path_to_dump_file",
          "databases": ["database_name"]
          "offload": true | false
        }
    }
    

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

    Você receberá uma resposta JSON semelhante a esta:

  4. Se você não precisar manter o papel do IAM definido anteriormente, revogue-o agora.
Para ver a lista completa de parâmetros dessa solicitação, consulte a página instances:export.

A seguir