Recursos do Cloud SQL para MySQL

Nesta página, você verá os principais recursos e capacidades do Cloud SQL para MySQL. O Cloud SQL também está disponível para os principais recursos e capacidades do Cloud SQL para PostgreSQL. O Cloud SQL também está disponível para MySQL e SQL Server.

Cloud SQL para MySQL

Recursos

  • Bancos de dados MySQL Community Edition totalmente gerenciados na nuvem.
  • As instâncias do Cloud SQL são compatíveis com MySQL 8.0, 5.7 (padrão) e 5.6. Elas oferecem até 624 GB de RAM e 64 TB de armazenamento de dados, com a opção de aumentar automaticamente o tamanho do armazenamento conforme necessário.
  • Crie e gerencie instâncias no Console do Google Cloud.
  • Instâncias disponíveis nas Américas, na UE, na Ásia e na Austrália. Veja todos os locais.
  • 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 proxy do Cloud SQL Auth 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 mysqldumpou arquivos CSV.
  • Suporte para MySQL Wire Protocol e conectores padrão do MySQL.
  • Backups automatizados e sob demanda, além de recuperação pontual.
  • Clonagem de instâncias.
  • Integração com a geração de registros e o monitoramento do Pacote de operações do Google Cloud.
  • Conformidade com a ISO/IEC 27001.

Idiomas compatíveis

É possível usar o Cloud SQL para MySQL com aplicativos do App Engine em execução no ambiente flexível escritos em C#, Go, Java, Node.js, PHP, Python 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 em:

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

Gerenciamento de usuários no MySQL do Cloud SQL 8.0

Devido a alterações no MySQL 8.0, não é possível usar CREATE ou DELETE no gerenciamento de usuários do MySQL. Também não é possível modificar os privilégios de usuário usando as instruções INSERT, UPDATE ou DELETE. Em vez disso, use as instruções CREATE, DROP USER, GRANT e REVOKE para modificar os privilégios do usuário. Para mais informações, consulte Observações sobre o gerenciamento de contas (em inglês).

Observação: exclua as informações das observações de gerenciamento de contas sobre a execução do mysql_upgrade a fim de fazer upgrade para a versão 8.0. Em vez disso, faça upgrade usando o procedimento em Como fazer upgrade do MySQL em uma instância.

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

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

Recursos MySQL não compatíveis

O seguinte recurso não é compatível com o MySQL do Cloud SQL 5.6 e 5.7:

  • O privilégio SUPER (em inglês)

Os recursos a seguir não são compatíveis com o MySQL do Cloud SQL 8.0:

Plug-ins não compatíveis

Instruções não compatíveis

As seguintes instruções SQL geram 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 ...

As seguintes instruções não são compatíveis porque as instâncias do MySQL usam a replicação GTID:

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

A instrução a seguir não é compatível com o MySQL para MySQL do Cloud SQL 5.6 e 5.7, mas é compatível com o MySQL do Cloud SQL 8.0.

  • Instruções CREATE TEMPORARY TABLE dentro de transações

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

Funções não compatíveis

  • LOAD_FILE()

Recursos de programa cliente incompatíveis

  • mysqlimport (em inglês) sem usar a opção --local. Isso ocorre devido à restrição LOAD DATA INFILE. Se for preciso carregar dados remotamente, use a função de importação do Cloud SQL.

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

  • Para importar bancos de dados com dados binários para a instância MySQL do Cloud SQL, use a opção --hex-blob com 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 mais informações sobre como importar dados, consulte Como 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.

  • O InnoDB é o único mecanismo de armazenamento compatível. Para ajuda com a conversão de tabelas do MyISAM para o InnoDB, consulte a documentação do MySQL (em inglês).

Opções predefinidas do MySQL no Cloud SQL

O Cloud SQL executa o MySQL com um conjunto específico de opções. Se uma opção puder afetar o funcionamento dos aplicativos, essa informação será indicada aqui.

skip-name-resolve

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

log_bin

Esta sinalização informa se o registro binário está ativo. Se --log-bin option for usado, o valor dessa variável será ON. Caso contrário, será OFF. Saiba mais

Autenticação do MySQL 8.0

O MySQL 8.0 do Cloud SQL usa mysql_native_password como o plug-in de autenticação padrão para novos usuários em vez de caching_sha2_password. O plug-in mysql_native_password é o padrão para usuários do MySQL 5.6 e 5.7.

Se você quiser que novos usuários usem o plug-in caching_sha2_password (em inglês) como autenticação padrão, configure sua sinalização de instância para que default_authentication_plugin use caching_sha2_password."

Se você quiser configurar os usuários atuais para usar caching_sha2_password, utilize o comando ALTER USER para alterar o plug-in de autenticação.

Os usuários que têm a autenticação caching_sha2_password podem precisar usar a sinalização get-server-public-key ao se conectar. Para detalhes, consulte a seção de documentos do MySQL sobre Como usar a autenticação plugável em SHA-2.

Alterações nas sinalizações do sistema MySQL no Cloud SQL

Em algumas sinalizações do sistema MySQL, o Cloud SQL usa valores diferentes do padrão. Não é possível mudar essas sinalizações do sistema. Para uma lista de sinalizações, consulte Sinalizações do sistema MySQL alteradas no Cloud SQL.

Recurso do Cloud SQL incompatível no MySQL 8.0 do Cloud SQL

O MySQL 8.0 do Cloud SQL não é compatível com a versão legada da configuração de alta disponibilidade (HA, na sigla em inglês) do MySQL que usa réplicas de failover. Ele é compatível com a nova configuração de HA regional.