Funzionalità di MySQL per le versioni di Cloud SQL
Per ulteriori informazioni sulle funzionalità delle versioni Cloud SQL Enterprise Plus e Cloud SQL Enterprise di Cloud SQL per MySQL, consulta Introduzione alle versioni di Cloud SQL.
Funzionalità generali di MySQL supportate per Cloud SQL
- Database MySQL Community Edition completamente gestiti nel cloud.
- Istanze disponibili nelle Americhe, nell'UE, in Asia e in Australia. Consulta tutte le località in cui puoi creare istanze Cloud SQL.
- Supporta la migrazione dai database di origine ai database di destinazione Cloud SQL utilizzando Database Migration Service (DMS).
- Dati dei clienti criptati sulle reti interne di Google e in tabelle, file temporanei e backup del database.
- Supporto per connessioni esterne sicure con il proxy di autenticazione Cloud SQL o con il protocollo SSL/TLS.
- Supporto per l'IP privato (accesso privato ai servizi).
- Replica dei dati tra più zone con failover automatico.
- Importa ed esporta i database utilizzando
mysqldump
o importa ed esporta i file CSV. - Supporto per il protocollo wire MySQL e per i connettori MySQL standard.
- Backup automatici, backup on demand e recupero point-in-time.
- Clonazione delle istanze.
- Integrazione con il logging e il monitoraggio di Google Cloud Observability.
- ISO/IEC 27001 conforme.
Lingue di applicazione supportate per Cloud SQL per MySQL
Puoi utilizzare Cloud SQL con le applicazioni App Engine in esecuzione in un ambiente flessibile, scritte in:
- C#
- Vai
- Java
- Node.js
- PHP
- Python
- Ruby
Puoi utilizzare Cloud SQL anche con applicazioni esterne che utilizzano il protocollo MySQL standard.
Come connettersi alle istanze Cloud SQL per MySQL
Puoi connetterti a un'istanza Cloud SQL da quanto segue:
- Un client
mysql
- Strumenti di terze parti come SQL Workbench o Toad per MySQL
- Applicazioni esterne
- Applicazioni App Engine
- Applicazioni in esecuzione su Compute Engine
- Applicazioni in esecuzione su Google Kubernetes Engine
- Funzioni Cloud Run
- Cloud Run
- Script Google Apps Script
La connessione a Cloud SQL con accesso privato Google non è supportata. L'accesso ai servizi privati è supportato. Per ulteriori informazioni, vedi Opzioni di accesso privato per i Servizi.
Gestione utenti in Cloud SQL per MySQL 8.0
A causa delle modifiche in MySQL 8.0, non puoi utilizzare le istruzioni CREATE
o DELETE
per la gestione degli utenti MySQL. Inoltre, non puoi modificare i privilegi utente utilizzando le istruzioni INSERT
,
UPDATE
o DELETE
. Usa invece i criteri CREATE USER
, DROP USER
, GRANT
,
e REVOKE
per modificare i privilegi utente. Per ulteriori informazioni, vedi
Gestione account
note.
Nota: ignora le informazioni riportate nella sezione Note sulla gestione dell'account relative all'esecuzione di mysql_upgrade
per eseguire l'upgrade alla versione 8.0. Esegui l'upgrade utilizzando la procedura in Eseguire l'upgrade di MySQL in un'istanza.
Differenze tra MySQL standard e Cloud SQL per MySQL
In generale, la funzionalità MySQL fornita da un'istanza Cloud SQL è la stessa funzionalità offerta da un'istanza MySQL ospitata localmente. Tuttavia, ci sono alcune differenze tra un'istanza MySQL standard e un'istanza Cloud SQL in esecuzione in un'istanza Compute Engine.
Funzionalità di MySQL non supportate per Cloud SQL
La seguente funzionalità non è supportata per Cloud SQL per MySQL 5.6 e 5.7.
Le seguenti funzionalità non sono supportate per Cloud SQL per MySQL 8.0:
La seguente funzionalità non è supportata per Cloud SQL per MySQL 8.4:
- GTID con tag. Per ulteriori informazioni sui GTID con tag, consulta "Replica MySQL: GTID con tag" nella sezione Funzionalità aggiunte o modificate in MySQL 8.4 delle note di rilascio di MySQL 8.4.
Inoltre, Cloud SQL per MySQL non concede i seguenti privilegi introdotti in MySQL 8.4:
Plug-in MySQL non supportati per Cloud SQL
- Plug-in memcached InnoDB
- plug-in X
- Clona il plug-in
- Crittografia dei dati at-rest InnoDB
- Componente convalida_password
Istruzioni MySQL non supportate per Cloud SQL
Le seguenti istruzioni SQL generano un errore con il messaggio Error 1290:
The MySQL server is running with the Google option so it cannot execute this
statement
:
LOAD DATA INFILE
SELECT ... INTO OUTFILE
SELECT ... INTO DUMPFILE
INSTALL PLUGIN ...
UNINSTALL PLUGIN
CREATE FUNCTION ... SONAME ...
Le seguenti istruzioni non sono supportate perché le istanze MySQL utilizzano la replica GTID:
CREATE TABLE ... SELECT
estratti conto- Transazioni o estratti conto che aggiornano sia le transazioni tabelle non transazionali
La seguente istruzione MySQL non è supportata per Cloud SQL per MySQL 5.6 e 5.7, ma è supportato per Cloud SQL per MySQL 8.0:
CREATE TEMPORARY TABLE
estratti conto nelle transazioni
Per ulteriori informazioni, consulta la documentazione MySQL.
Funzioni MySQL non supportate per Cloud SQL
LOAD_FILE()
Funzionalità del programma client MySQL non supportate per Cloud SQL
mysqldump
tramite Opzione o le opzioni--tab
utilizzate con--tab
. Questo perché FILE per gli utenti istanza. Tutte le altre opzionimysqldump
sono supportate. Per informazioni sull'utilizzo delle opzioni dimysqldump
che ottimizzano le tue per l'importazione in Cloud SQL, vedi Esportare da un database MySQL locale server utilizzando mysqldump.mysqlimport
senza utilizzare l'opzione--local
. Ciò è dovuto alla limitazioneLOAD DATA INFILE
. Per importare i dati nell'istanza Cloud SQL, consulta la sezione Importazione utilizzando un file dump o Importazione utilizzando un file CSV.Se vuoi importare database con dati binari nell'istanza Cloud SQL, devi utilizzare l'opzione
--hex-blob
conmysqldump
.Anche se
hex-blob
non è un flag obbligatorio quando utilizzi un database MySQL locale server e il clientmysql
, è necessario se vuoi importare con qualsiasi database con dati binari nell'istanza Cloud SQL. Per importare i dati nell'istanza Cloud SQL, consulta l'articolo sull'importazione con un file di dump o sull'importazione con un file CSV.Non tutte le opzioni e i parametri MySQL sono abilitati per la modifica come Flag di Cloud SQL.
Per richiedere l'aggiunta di un flag Cloud SQL configurabile, utilizza Discussione su Cloud SQL .
InnoDB è l'unico motore di archiviazione supportato. Per informazioni sulla conversione delle tabelle da MyISAM a InnoDB, consulta Conversione della tabella in InnoDB nella documentazione di MySQL.
Opzioni MySQL preimpostate per Cloud SQL
Cloud SQL esegue MySQL con un insieme specifico di opzioni. Se un'opzione influire sul funzionamento delle applicazioni, lo annotiamo qui per informazioni.
skip-name-resolve
Questo flag influisce sul modo in cui i nomi host vengono risolti per le connessioni client. Consulta:
skip-name-resolve
nella documentazione di MySQL.
log_bin
Questo flag indica se il logging binario è abilitato. Se l'opzione --log-bin
, il valore di questa variabile è ON
; altrimenti è OFF
. Consulta:
log_bin
nella documentazione di MySQL.
Autenticazione MySQL
In questa sezione vengono descritte le modifiche apportate a Autenticazione MySQL integrata.
Valore predefinito del plug-in di autenticazione MySQL 8.0
Cloud SQL per MySQL 8.0 utilizza mysql_native_password
come plug-in di autenticazione predefinito per i nuovi utenti anziché caching_sha2_password
. Il plug-inmysql_native_password
è predefinito per gli utenti di MySQL 5.6 e 5.7.
Se vuoi che i nuovi utenti utilizzino
caching_sha2_password
come autenticazione predefinita, puoi configurare il flag istanza per
default_authentication_plugin
per utilizzare caching_sha2_password
.
Per configurare gli utenti esistenti in modo che utilizzino caching_sha2_password
, usa il comando ALTER USER
per modificare il plug-in di autenticazione.
Gli utenti con autenticazione caching_sha2_password
potrebbero dover utilizzare il flag get-server-public-key
al momento della connessione. Per maggiori dettagli, consulta
Caching SHA-2 Pluggable Authentication
nella documentazione di MySQL.
Plug-in di autenticazione MySQL 8.4 predefinito
A partire da Cloud SQL per MySQL 8.4,
Il plug-in caching_sha2_password
è il plug-in di autenticazione predefinito.
Tutti gli utenti interni e i nuovi account utente che crei utilizzano
Plug-in caching_sha2_password
per l'autenticazione. Cloud SQL per MySQL
8.4 continua a supportare gli account utente Cloud SQL esistenti che
utilizzano il plug-in mysql_native_password
. Questi account esistenti possono continuare a connettersi
alle istanze Cloud SQL per MySQL
per queste istanze è stato eseguito l'upgrade di MySQL 8.4.
In Cloud SQL per MySQL 8.4, il plug-in di autenticazione mysql_native_password
è deprecato.
Qualsiasi tentativo di creare un nuovo account utente con il plug-in di autenticazione mysql_native_password
dismesso genera un errore.
Non puoi impostare
authentication_policy
di un account in Cloud SQL per MySQL 8.4 da utilizzare
mysql_native_password
.
Per cambiare gli account utente esistenti del database in modo da utilizzare caching_sha2_password
plug-in di autenticazione, utilizza il seguente comando:
ALTER USER 'username'@'%' IDENTIFIED WITH caching_sha2_password BY 'user_password';
Sostituisci username e user_password con i valori per l'account utente che stai aggiornando.
Per ulteriori informazioni sulle implicazioni di questa modifica sulla compatibilità tra server, client e connettori, consulta caching_sha2_password as the Preferred Authentication Plugin
.
Modifiche ai flag di sistema MySQL in Cloud SQL
Per alcuni flag di sistema MySQL, Cloud SQL utilizza valori diversi da i valori predefiniti. Non puoi modificare i valori di questi flag. Per un elenco di i flag, consulta Flag di sistema modificati in Cloud SQL.
Funzionalità di Cloud SQL non supportate in Cloud SQL per MySQL 8.0 e versioni successive
Cloud SQL per MySQL 8.0 e le versioni successive non supportano la versione legacy Configurazione ad alta disponibilità (HA) di Cloud SQL per MySQL che utilizza repliche di failover. Cloud SQL per MySQL 8.0 e le versioni successive supportano solo le regioni Configurazione ad alta disponibilità.