Práticas recomendadas para importação e exportação de dados

Esta página informa as práticas recomendadas para importar e exportar dados com o Cloud SQL. Para instruções passo a passo sobre como importar dados para o Cloud SQL, consulte Importar dados. Para instruções passo a passo sobre como exportar seus dados, seja no Cloud SQL ou em uma instância que você gerencia, consulte Exportar dados.

Práticas recomendadas para importação e exportação

Veja a seguir as práticas recomendadas a serem consideradas ao importar e exportar dados:

Não use os buckets dos pagamentos do requerente do Cloud Storage

Não é possível usar um bucket do Cloud Storage com pagamentos do requerente ativado para operações de exportação e importação do Cloud SQL.

Compacte dados para reduzir custos

O Cloud SQL permite a importação e exportação de arquivos compactados e não compactados. A compactação pode economizar um espaço de armazenamento significativo no Cloud Storage e reduzir os custos com armazenamento, principalmente durante a exportação de grandes instâncias.

Ao exportar um arquivo BAK, use uma extensão de arquivo .gz para compactar os dados. Quando você importa um arquivo com uma extensão de .gz, ele é descompactado automaticamente.

Dicas para processos de importação e exportação de longa duração

As importações e exportações para o Cloud SQL usando a função de importação (por meio de um bucket do Cloud Storage) podem levar muito tempo para serem concluídas, dependendo do tamanho do banco de dados. Esse processo pode ter os seguintes impactos:

  • Não é possível interromper uma operação de longa duração.
  • Apenas uma operação de importação ou exportação pode ser executada por vez para cada instância.

É possível diminuir o tempo necessário para concluir cada operação usando a função de importação ou exportação do Cloud SQL com lotes menores de dados.

Solução de problemas

Clique nos links da tabela para ver detalhes:

Para este problema... O problema pode ser... Tente o seguinte...
Não é possível ver o status da operação. A interface do usuário mostra apenas sucesso ou falha. Use estes comandos do banco de dados para saber mais.
A exportação está demorando muito. O Cloud SQL não é compatível com operações síncronas simultâneas. Use o descarregamento de exportação. Saiba mais.
A importação está demorando muito. Muitas conexões ativas podem interferir nas operações de importação. Feche as conexões não utilizadas ou reinicie a instância do Cloud SQL antes de iniciar uma operação de importação.
Falha na importação. O arquivo exportado pode conter usuários do banco de dados que ainda não existem. Crie os usuários do banco de dados antes de fazer a importação.
Conexão fechada durante a operação de exportação. A consulta precisa produzir dados nos primeiros sete minutos. Teste a consulta manualmente. Saiba mais.
Erro desconhecido durante a exportação. Possível problema de largura de banda. Verifique se a instância e o bucket do Cloud Storage estão na mesma região.
Você quer automatizar as exportações. O Cloud SQL não oferece uma maneira de automatizar exportações. Crie seu próprio pipeline para executar essa funcionalidade. Saiba mais.
ERROR_RDBMS: system error occurred. Permissões do Cloud Storage ou tabela não existente. Verifique as permissões OU verifique se a tabela existe.

Não é possível ver o status da operação

Não é possível ver o status de uma operação em andamento.

O problema pode ser

O Console do Google Cloud informa apenas o sucesso ou falha no momento da conclusão e não foi projetado para retornar avisos.

O que você deve tentar

Conecte-se ao banco de dados e execute SHOW WARNINGS.


A exportação está demorando muito

A exportação está demorando muito, bloqueando outras operações.

O problema pode ser

O Cloud SQL não é compatível com operações síncronas simultâneas.

O que você deve tentar

Tente exportar conjuntos de dados cada vez menores.


A importação está demorando muito

A importação está demorando muito, bloqueando outras operações.

O problema pode ser

Muitas conexões ativas podem interferir nas operações de importação. As conexões consomem CPU e memória, limitando os recursos disponíveis.

O que você deve tentar

Fechar operações não utilizadas. Verifique o uso de CPU e memória para garantir que há vários recursos disponíveis. A melhor maneira de garantir o máximo de recursos para a operação de importação é reiniciar a instância antes de iniciar a operação. Uma reinicialização:

  • fecha todas as conexões;
  • encerra todas as tarefas que possam consumir recursos.


Falha na importação

A importação falha quando um ou mais usuários referenciados no arquivo de despejo SQL exportado não existem.

O problema pode ser

Antes de importar um arquivo de dump SQL, todos os usuários do banco de dados que têm objetos ou receberam permissões nos objetos no banco de dados despejado precisam existir. Caso contrário, a restauração não recriará os objetos com a propriedade e/ou as permissões originais.

O que você deve tentar

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


Conexão fechada durante a operação de exportação

Conexão fechada durante a operação de exportação.

O problema pode ser

A conexão com o Cloud Storage pode expirar porque a consulta em execução na exportação não está produzindo nenhum dado nos primeiros sete minutos desde que a exportação foi iniciada.

O que você deve tentar

Teste a consulta manualmente conectando-se a partir de qualquer cliente e enviando a saída da consulta para STDOUT com o comando abaixo:

COPY (INSERT_YOUR_QUERY_HERE) TO STDOUT WITH ( FORMAT csv, DELIMITER ',', ENCODING 'UTF8', QUOTE '"', ESCAPE '"' ).

Esse é o comportamento esperado, porque quando a exportação é iniciada, o cliente deve começar a enviar dados imediatamente. Caso a conexão continue sem dados enviados, ela acaba sendo interrompida e, por fim, resultando em falha na exportação e deixando a operação em um estado incerto. Além disso, é isso que a mensagem de erro do gcloud está tentando dizer com esta mensagem:

operation is taking longer than expected.


Erro desconhecido durante a exportação

Você verá a mensagem de erro Unknown error ao tentar exportar um banco de dados para um bucket do Cloud Storage.

O problema pode ser

A transferência pode falhar devido a um problema de largura de banda.

O que você deve tentar

A instância do Cloud SQL pode estar em uma região diferente do bucket do Cloud Storage. A leitura e a gravação de dados de um continente para outro envolve o uso excessivo de rede e pode causar problemas intermitentes como esse. Verifique as regiões da instância e do bucket.


Querer automatizar exportações

Você quer automatizar as exportações.

O problema pode ser

O Cloud SQL não oferece uma maneira de automatizar exportações.

O que você deve tentar

Use seu próprio sistema de exportação automatizado usando os produtos do Google Cloud: Cloud Scheduler, Pub/Sub e Cloud Functions, conforme descrito aqui.


Houve um erro de sistema ERROR_RDBMS

Você vê a mensagem de erro [ERROR_RDBMS] system error occurred.

O problema pode ser

  • O usuário pode não ter todas as permissões necessárias do Cloud Storage.
  • A tabela de banco de dados pode não existir.

O que você deve tentar

  1. Verifique se você tem pelo menos as permissões WRITER no bucket e READER no arquivo de exportação. Para mais informações sobre como configurar o controle de acesso no Cloud Storage, consulte Criar e gerenciar listas de controle de acesso.
  2. Verifique se a tabela existe. Se a tabela existir, confirme se você tem as permissões corretas no bucket.

A seguir