Funcionalidades do MySQL por edições do Cloud SQL
Para mais informações sobre as funcionalidades da edição Cloud SQL Enterprise Plus e da edição Cloud SQL Enterprise do Cloud SQL para MySQL, consulte o artigo Introdução às edições do Cloud SQL.
Funcionalidades gerais do MySQL suportadas para o Cloud SQL
- Bases de dados do MySQL Community Edition totalmente geridas na nuvem.
- Instâncias disponíveis na América, UE, Ásia e Austrália. Consulte todas as localizações onde pode criar instâncias do Cloud SQL.
- Suporta a migração de bases de dados de origem para bases de dados de destino do Cloud SQL através do Database Migration Service (DMS).
- Dados dos clientes encriptados nas redes internas da Google e em tabelas de bases de dados, ficheiros temporários e cópias de segurança.
- Suporte para ligações externas seguras com o proxy Auth do Cloud SQL ou com o protocolo SSL/TLS.
- Suporte para IP privado (acesso a serviços privados).
- Replicação de dados entre várias zonas com ativação pós-falha automática.
- Importe e exporte bases de dados através do
mysqldumpou importe e exporte ficheiros CSV. - Suporte para o protocolo de ligação do MySQL e conetores MySQL padrão.
- Cópias de segurança automáticas, cópias de segurança a pedido e recuperação num ponto específico no tempo.
- Clonagem de instâncias.
- Integração com a monitorização e o registo do Google Cloud Observability.
- Em conformidade com a norma ISO/IEC 27001.
Idiomas das aplicações suportados para o Cloud SQL para MySQL
Pode usar o Cloud SQL com aplicações do App Engine executadas no ambiente flexível escritas em:
- C#
- Ir
- Java
- Node.js
- PHP
- Python
- Ruby
Também pode usar o Cloud SQL com aplicações externas que usam o protocolo MySQL padrão.
Como se pode ligar a instâncias do Cloud SQL para MySQL
Pode estabelecer ligação a uma instância do Cloud SQL a partir do seguinte:
- Um cliente
mysql - Ferramentas de terceiros, como o SQL Workbench ou o Toad for MySQL
- Aplicações externas
- Aplicações do App Engine
- Aplicações em execução no Compute Engine
- Aplicações em execução no Google Kubernetes Engine
- Funções do Cloud Run
- Cloud Run
- Scripts do Google Apps Script
A ligação ao Cloud SQL com o acesso privado Google não é suportada. O acesso aos serviços privados é suportado. Para mais informações, consulte o artigo Opções de acesso privado para serviços.
Gestão de utilizadores no Cloud SQL para MySQL 8.0
Devido a alterações no MySQL 8.0, não pode usar declarações CREATE ou DELETE para a gestão de utilizadores do MySQL. Também não pode modificar privilégios do utilizador com as declarações INSERT,
UPDATE ou DELETE. Em alternativa, use as declarações CREATE USER, DROP USER, GRANT e REVOKE para modificar os privilégios do utilizador. Para mais informações, consulte as
notas de gestão de contas.
Nota: ignore as informações nas notas de gestão da conta sobre a execução de
mysql_upgrade para atualizar para a versão 8.0. Em alternativa, faça a atualização através do procedimento
descrito no artigo Atualizar o MySQL numa
instância.
Diferenças entre o MySQL padrão e o Cloud SQL para MySQL
Em geral, a funcionalidade do MySQL fornecida por uma instância do Cloud SQL é igual à funcionalidade fornecida por uma instância do MySQL alojada localmente. No entanto, existem algumas diferenças entre uma instância padrão do MySQL e uma instância do Cloud SQL.
Funcionalidades do MySQL não suportadas para o Cloud SQL
A seguinte funcionalidade não é suportada para o Cloud SQL para MySQL 5.6 e 5.7:
As seguintes funcionalidades não são suportadas para o Cloud SQL para MySQL 8.0:
A seguinte funcionalidade não é suportada no Cloud SQL para MySQL 8.4:
- GTIDs etiquetados. Para mais informações sobre GTIDs etiquetados, consulte a secção "Replicação do MySQL: GTIDs etiquetados" no artigo Funcionalidades adicionadas ou alteradas no MySQL 8.4 das notas de lançamento do MySQL 8.4.
Além disso, o Cloud SQL para MySQL não concede os seguintes privilégios introduzidos no MySQL 8.4:
Plug-ins do MySQL não suportados para o Cloud SQL
- Plug-in memcached do InnoDB
- Plug-in X
- Clonar plug-in
- Encriptação de dados em repouso do InnoDB
- validate_password component
Declarações MySQL não suportadas para o Cloud SQL
As seguintes declarações SQL geram um erro com a mensagem Error 1290:
The MySQL server is running with the Google option so it cannot execute this
statement:
LOAD DATA INFILESELECT ... INTO OUTFILESELECT ... INTO DUMPFILEINSTALL PLUGIN ...UNINSTALL PLUGINCREATE FUNCTION ... SONAME ...
As seguintes declarações não são suportadas porque as instâncias do MySQL usam a replicação GTID:
CREATE TABLE ... SELECTextratos- Transações ou extratos que atualizam tabelas transacionais e não transacionais
A seguinte declaração MySQL não é suportada para o Cloud SQL para MySQL 5.6 e 5.7, mas é suportada para o Cloud SQL para MySQL 8.0:
CREATE TEMPORARY TABLEextratos nas transações
Para mais informações, consulte a documentação do MySQL.
Funções do MySQL não suportadas para o Cloud SQL
LOAD_FILE()
Funcionalidades do programa cliente MySQL não suportadas para o Cloud SQL
mysqldumpatravés da opção--tabou de opções usadas com--tab. Isto deve-se ao facto de o privilégio FILE não ser concedido aos utilizadores de instâncias. Todas as outras opções demysqldumpsão suportadas. Para obter informações sobre a utilização de opçõesmysqldumpque otimizam o seu ficheiro para importação para o Cloud SQL, consulte o artigo Exporte a partir do seu servidor MySQL local através do mysqldump.mysqlimportsem usar a opção--local. Isto deve-se à restriçãoLOAD DATA INFILE. Para importar dados para a sua instância do Cloud SQL, consulte o artigo sobre a importação através de um ficheiro de despejo ou a importação através de um ficheiro CSV.Se quiser importar bases de dados com dados binários para a sua instância do Cloud SQL, tem de usar a opção
--hex-blobcommysqldump.Embora
hex-blobnão seja uma flag obrigatória quando usa uma instância do servidor MySQL local e o clientemysql, é obrigatória se quiser importar bases de dados com dados binários para a sua instância do Cloud SQL. Para importar dados para a sua instância do Cloud SQL, consulte o artigo sobre a importação através de um ficheiro de despejo ou a importação através de um ficheiro CSV.Nem todas as opções e parâmetros do MySQL estão ativados para edição como flags do Cloud SQL.
Para pedir a adição de uma flag do Cloud SQL configurável, use o grupo de discussão do Cloud SQL.
O InnoDB é o único motor de armazenamento suportado. Para obter ajuda com a conversão de tabelas do MyISAM para o InnoDB, consulte o artigo Converter tabela para InnoDB na documentação do MySQL.
Opções do MySQL predefinidas para o Cloud SQL
O Cloud SQL executa o MySQL com um conjunto específico de opções. Se uma opção puder afetar o funcionamento das suas aplicações, indicamos aqui essa informação.
skip-name-resolve
Esta flag afeta a forma como os nomes de anfitrião são resolvidos para as ligações de cliente. Consulte
skip-name-resolve
na documentação do MySQL.
log_bin
Esta sinalização indica se o registo binário está ativado. Se a opção --log-bin for usada, o valor desta variável é ON. Caso contrário, é OFF. Consulte
log_bin
na documentação do MySQL.
Autenticação do MySQL
Esta secção descreve as alterações feitas à autenticação incorporada do MySQL.
Predefinição do plug-in de autenticação do MySQL 8.0
O Cloud SQL para MySQL 8.0 usa mysql_native_password como o plug-in de autenticação predefinido para novos utilizadores, em vez de caching_sha2_password. O plug-in mysql_native_password é a predefinição para os utilizadores do MySQL 5.6 e 5.7.
Se quiser que os novos utilizadores usem o plug-in
caching_sha2_password
como a autenticação predefinida, pode configurar a flag da instância para que o
default_authentication_plugin use o caching_sha2_password.
Para configurar os utilizadores existentes para usarem o gesto caching_sha2_password, use o comando ALTER USER
para alterar o plug-in de autenticação.
Os utilizadores que têm autenticação caching_sha2_password podem ter de usar a flag get-server-public-key quando estabelecem ligação. Para ver detalhes, consulte o artigo
Caching SHA-2 Pluggable Authentication
na documentação do MySQL.
Predefinição do plug-in de autenticação do MySQL 8.4
A partir do Cloud SQL para MySQL 8.4, o plug-in caching_sha2_password é o plug-in de autenticação predefinido.
Todos os utilizadores internos e as novas contas de utilizador que criar usam o plug-in caching_sha2_password para autenticação. O Cloud SQL para MySQL 8.4 continua a suportar contas de utilizador do Cloud SQL existentes que usam o plug-in mysql_native_password. Estas contas existentes podem continuar a ligar-se
a instâncias do Cloud SQL para MySQL depois
de essas instâncias terem sido atualizadas para o MySQL 8.4.
No Cloud SQL para MySQL 8.4, o plug-in de autenticação mysql_native_password foi descontinuado.
Qualquer tentativa de criar uma nova conta de utilizador com o plug-in de autenticação mysql_native_password
obsoleto resulta num erro.
Não pode definir o
authentication_policy de uma conta no Cloud SQL para MySQL 8.4 para usar
mysql_native_password.
Para alterar as contas de utilizador da base de dados existentes para usar o plug-in de autenticação caching_sha2_password
use o seguinte comando:
ALTER USER 'username'@'%' IDENTIFIED WITH caching_sha2_password BY 'user_password';
Substitua username e user_password pelos valores da conta de utilizador que está a atualizar.
Para mais informações sobre as implicações desta alteração na compatibilidade entre servidores, clientes e conetores, consulte caching_sha2_password as the Preferred Authentication Plugin.
Alterações às flags do sistema MySQL no Cloud SQL
Para algumas flags do sistema MySQL, o Cloud SQL usa valores diferentes dos valores predefinidos. Não pode alterar os valores destas flags. Para ver uma lista das flags, consulte o artigo Flags do sistema alteradas no Cloud SQL.
Funcionalidades do Cloud SQL não suportadas no Cloud SQL para MySQL 8.0 e versões posteriores
O Cloud SQL para MySQL 8.0 e versões posteriores não suporta a configuração de alta disponibilidade (HA) do Cloud SQL para MySQL antiga que usa réplicas de comutação por falha. O Cloud SQL para MySQL 8.0 e versões posteriores só suporta a configuração de alta disponibilidade regional.