Recursos do Cloud SQL

Nesta página, descrevemos os principais recursos do Cloud SQL. Esse produto está disponível para MySQL e PostgreSQL.

Cloud SQL para MySQL

Recursos

  • Bancos de dados MySQL Community Edition totalmente gerenciados na nuvem.
  • As instâncias de segunda geração aceitam MySQL 5.6 ou 5.7 e fornecem até 416 GB de RAM e 10 TB de armazenamento de dados, com a opção de aumentar automaticamente o tamanho do armazenamento conforme necessário.
  • As instâncias de primeira geração aceitam MySQL 5.5 ou 5.6 e fornecem até 16 GB de RAM e 500 GB de armazenamento de dados.

  • Criar e gerenciar instâncias no Console do Google Cloud Platform.
  • Instâncias disponíveis nos EUA, na UE ou na Ásia.
  • Os dados do cliente são criptografados nas redes internas do Google e em tabelas de banco de dados, arquivos temporários e backups.
  • Suporte para conexões externas seguras com o Cloud SQL Proxy ou com o protocolo SSL/TLS.
  • Suporte para IP privado (acesso a serviços privados).
  • Replicação de dados entre várias zonas com failover automático.
  • Importação e exportação de bancos de dados com o mysqldump ou arquivos CSV.
  • Suporte para MySQL Wire Protocol e conectores do MySQL padrão.
  • Backups automatizados e sob demanda, e recuperação com horários definidos.
  • Clonagem de instâncias.
  • Integração com registro e monitoramento do Stackdriver.
  • Conformidade com a ISO/IEC 27001.

Linguagens compatíveis

Você pode usar o Cloud SQL para MySQL com aplicativos do App Engine escritos em Java, Python, PHP, Node.js, Go e Ruby. Também pode ser usado com aplicativos externos com o protocolo padrão MySQL.

Como conectar-se a instâncias do Cloud SQL para MySQL

Você pode se conectar a uma instância do Cloud SQL para o MySQL a partir de:

Não é possível conectar-se ao Cloud SQL usando o acesso privado do Google. O acesso aos serviços privados é compatível. Para saber mais informações, consulte Opções de acesso privado para serviços.

Diferenças entre as funcionalidades do Cloud SQL e do MySQL padrão

Em geral, a funcionalidade do MySQL fornecida por uma instância do Cloud SQL é a mesma fornecida por uma hospedada no local. No entanto, há algumas diferenças entre a instância do MySQL padrão e a instância do Cloud SQL para MySQL.

Recursos não compatíveis

Instruções incompatíveis

O envio dos seguintes tipos de instruções SQL gera um erro com a mensagem "Erro 1290: o servidor MySQL está sendo executado com a opção do Google e não pode executar esta instrução":

  • LOAD DATA INFILE

    Observe que LOAD DATA LOCALINFILE é compatível.

  • SELECT ... INTO OUTFILE

  • SELECT ... INTO DUMPFILE

  • INSTALL PLUGIN ...

  • UNINSTALL PLUGIN

  • CREATE FUNCTION ... SONAME ...

Instruções incompatíveis com instâncias de segunda geração

As instruções a seguir são incompatíveis, já que as instâncias da Segunda geração usam replicação GTID:

  • Instruções CREATE TABLE ... SELECT
  • Instruções CREATE TEMPORARY TABLE em transações
  • Transações ou instruções que atualizam tabelas transacionais e não transacionais

Para saber mais informações, veja a documentação do MySQL.

Funções não compatíveis

  • LOAD_FILE()

Recursos de programa cliente incompatíveis

  • mysqlimport sem usar a opção --local. Isso se deve à restrição LOAD DATA INFILE. Se for preciso carregar dados remotamente, use a função de importação do Cloud SQL.

  • mysqldump com a opção --tab ou opções que são usadas com --tab. Isso ocorre porque o privilégio FILE não é concedido a usuários da instância. Todas as outras opções do mysqldump são compatíveis.

  • Para importar bancos de dados com dados binários na instância do Cloud SQL para MySQL, é preciso usar a opção --hex-blob com o mysqldump.

    hex-blob não é uma sinalização obrigatória ao usar uma instância local do servidor MySQL e o cliente mysql, mas ela será necessária se você quiser importar um banco de dados com dados binários para a instância do Cloud SQL. Para saber mais informações sobre como importar dados, veja Importar dados.

  • Nem todas as opções e parâmetros do MySQL estão ativados para edição como sinalizações do Cloud SQL.

    Para solicitar a adição de uma sinalização do Cloud SQL configurável, use o grupo de discussão do Cloud SQL.

  • Para instâncias da segunda geração, o único mecanismo de armazenamento aceito é o InnoDB. Para ajuda com a conversão de tabelas do MyISAM para o InnoDB, consulte a documentação do MySQL.

  • Não é possível importar nem exportar acionadores, funções, procedimentos armazenados ou visualizações no Cloud SQL. No entanto, é possível criar e usar esses elementos em uma instância do Cloud SQL.

Opções MySQL notáveis

O Cloud SQL executa o MySQL com um conjunto específico de opções. Se uma opção puder afetar o funcionamento dos aplicativos, observaremos isso aqui para sua informação.

skip-name-resolve

Essa sinalização afeta o modo como os nomes de host são resolvidos para conexões de cliente. Saiba mais

Cloud SQL para PostgreSQL

Recursos

  • Bancos de dados PostgreSQL totalmente gerenciados na nuvem, com base na plataforma Cloud SQL de segunda geração.
  • Tipos de máquinas personalizados com até 416 GB de RAM e 64 CPUs.
  • Até 10 TB de armazenamento disponível, com a capacidade de aumentar automaticamente o tamanho de armazenamento conforme necessário.
  • Criar e gerenciar instâncias no Console do Google Cloud Platform.
  • Instâncias disponíveis nos EUA, na UE ou na Ásia.
  • Os dados do cliente são criptografados nas redes internas do Google e em tabelas de banco de dados, arquivos temporários e backups.
  • Suporte para conexões externas seguras com o Cloud SQL Proxy ou com o protocolo SSL/TLS.
  • Replicação de dados entre várias zonas com failover automático.
  • Importar e exportar bancos de dados usando arquivos de despejo SQL.
  • Suporte para o protocolo cliente-servidor do PostgreSQL e conectores padrão do PostgreSQL.
  • Backups automatizados e sob demanda.
  • Clonagem de instâncias.
  • Integração com registro e monitoramento do Stackdriver.

Recursos ainda não disponíveis

Alguns recursos ainda não estão disponíveis para o Cloud SQL para PostgreSQL:

  • recuperação com horários definidos (PITR, na sigla em inglês)
  • importar/exportar no formato CSV usando o Console do GCP ou a ferramenta de linha de comando gcloud.

Extensões compatíveis

O Cloud SQL para PostgreSQL aceita muitas extensões do PostgreSQL. Para uma lista completa, consulte Extensões do PostgreSQL.

Linguagens procedurais compatíveis

O Cloud SQL para PostgreSQL é compatível com a linguagem de procedimentos SQL PL/pgSQL (em inglês).

Linguagens compatíveis

Você pode usar o Cloud SQL para PostgreSQL com aplicativos do App Engine escritos em Java, Python, PHP, Node.js, Go e Ruby. Você também pode usar o Cloud SQL para PostgreSQL com aplicativos externos que usem o protocolo padrão cliente-servidor do PostgreSQL.

Como se conectar a instâncias do Cloud SQL para PostgreSQL

Você pode se conectar a uma instância do Cloud SQL para PostgreSQL a partir de:

  • um cliente psql; Saiba mais
  • ferramentas de terceiros que usam o protocolo cliente-servidor padrão do PostgreSQL;
  • aplicativos externos; Saiba mais.
  • aplicativos do App Engine; Saiba mais.
  • aplicativos em execução no Compute Engine; Saiba mais.
  • aplicativos em execução no Google Kubernetes Engine; Saiba mais.
  • Cloud Functions; Saiba mais

Não é possível conectar-se ao Cloud SQL usando o acesso privado do Google.

Diferenças entre as funcionalidades do Cloud SQL e do PostgreSQL padrão

Em geral, a funcionalidade do PostgreSQL fornecida por uma instância do Cloud SQL é a mesma fornecida por uma instância do PostgreSQL localmente hospedada. No entanto, há algumas diferenças entre uma instância padrão do PostgreSQL e uma instância do Cloud SQL para PostgreSQL.

Recursos não compatíveis

  • Recursos que exigem privilégios de SUPERUSER.

    Há uma exceção a essa regra para a instrução CREATE EXTENSION, mas somente para extensões compatíveis.

  • Trabalhos de segundo plano personalizados.

  • O cliente psql no Cloud Shell não é compatível com operações que exigem uma reconexão, como a conexão com um banco de dados diferente usando o comando \c.

Diferenças significativas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Cloud SQL