Questa pagina descrive come eseguire la migrazione dei dati a un'istanza che esegue una versione successiva di MySQL. Prima di procedere con questo metodo, valuta la possibilità di eseguire l'upgrade della versione principale del database sul posto.
Esistono due modi per eseguire l'upgrade della versione principale del database dell'istanza Cloud SQL per MySQL eseguendo la migrazione dei dati.
- Opzione 1. Utilizza Database Migration Service (DMS). DMS supporta la migrazione da un'istanza MySQL Cloud SQL. Puoi anche utilizzarlo per eseguire l'upgrade della versione di MySQL.
- Opzione 2. Sposta i dati da una versione di MySQL a un'altra esportando i dati dall'istanza corrente e importando i dati in una nuova istanza che esegue la versione successiva di MySQL. Questa procedura comporta un tempo di riposo. Devi impostare l'istanza corrente in modalità di sola lettura prima di avviare l'esportazione.
Questa pagina illustra la seconda opzione.
Pianificare un upgrade della versione principale
Scegli una versione principale di destinazione.
Consulta l'elenco delle versioni supportate da Cloud SQL.
Valuta le funzionalità offerte in ogni versione di MySQL e risolvi le incompatibilità.
Le nuove versioni principali introducono modifiche incompatibili che potrebbero richiedere di modificare il codice dell'applicazione, lo schema o le impostazioni del database prima di poter eseguire l'upgrade dell'istanza del database. Esamina le note di rilascio della versione principale di destinazione per determinare le incompatibilità da risolvere. Se salti le versioni principali, risolvi le incompatibilità elencate per ogni versione che salti.
Se esegui l'upgrade da MySQL 5.7 a 8.0, controlla le modifiche alle concessioni utente in MySQL 8.0.
Cloud SQL per MySQL versione 8.0 utilizza un nuovo flag di sistema chiamato
partial_revokes
, che è impostato suON
per impostazione predefinita. A differenza di MySQL 5.7, questo flag rimuove la possibilità di utilizzare caratteri jolly nei comandiGRANT
del database. Per assicurarti che gli utenti del database abbiano accesso agli schemi del database corretti, modifica i privilegi degli utenti del database prima di eseguire l'upgrade a MySQL 8.0. Aggiorna i privilegi dell'utente in modo da utilizzare il nome completo degli schemi di database richiesti anziché i caratteri jolly.Per ulteriori informazioni sul funzionamento di questo flag in MySQL 8.0, consulta partial_revokes in MySQL 8.0.
Prova l'upgrade con una simulazione.
Esegui una simulazione della procedura di upgrade end-to-end con un'istanza di test prima di eseguire l'upgrade del database di produzione. Ti consigliamo di testare l'upgrade utilizzando un clone anziché il database di produzione per evitare che l'esportazione influisca sulle prestazioni del tuo carico di lavoro di produzione.
Oltre a verificare che l'upgrade venga completato correttamente, esegui dei test per assicurarti che l'applicazione si comporti come previsto nel database di cui è stato eseguito l'upgrade. Se non hai attivato gli aumenti automatici dello spazio di archiviazione, prendi nota dello spazio di archiviazione del disco utilizzato dall'istanza di prova secca di cui è stato eseguito l'upgrade per determinare se devi aumentare la capacità di archiviazione per l'istanza di produzione prima dell'upgrade.
Decidi quando eseguire l'upgrade.
Migrazione dei dati
Per eseguire la migrazione dei dati a un'istanza Cloud SQL che esegue una versione del database più recente, segui questi passaggi:
Crea l'istanza con la versione principale del database di destinazione.
Assicurati che l'istanza di destinazione abbia:
- Spazio di archiviazione sufficiente per contenere tutti i dati dell'istanza corrente.
- Le stesse emittenti autorizzate dell'istanza corrente. Scopri di più.
- Gli stessi account utente, con gli stessi privilegi e le stesse password MySQL.
Per ulteriori informazioni, vedi Creare un'istanza.
Verifica di poter connetterti alla nuova istanza con i tuoi strumenti MySQL locali e aggiornali se necessario.
Metti l'istanza Cloud SQL corrente in modalità di sola lettura impostando il
read_only
flag del database suOn
.Per informazioni, vedi Configurare i flag di database.
Esporta i dati dell'istanza corrente in un file di dump SQL seguendo le istruzioni riportate in Esportazione dei dati da importare in Cloud SQL.
Non esportare il database di sistema
mysql
.Crea un bucket Cloud Storage se necessario e carica il file di dump SQL nel bucket.
Importa i dati nell'istanza di destinazione seguendo le istruzioni riportate in Importare i database MySQL da Cloud Storage.
Facoltativo. Dopo aver completato la procedura di upgrade, configura la replica tra le istanze di origine e di destinazione utilizzando un server esterno per aggiornare la destinazione con tutte le modifiche che si sono verificate dall'avvio del dump iniziale. Una volta sincronizzate le due istanze, puoi promuovere l'istanza di destinazione.
Per informazioni sull'utilizzo di un server esterno per implementare la replica continua, consulta Eseguire la replica da un server esterno.
Aggiorna le applicazioni per connetterti alla nuova istanza.
Quando hai la certezza che la nuova istanza funzioni correttamente, elimina quella precedente.
Passaggi successivi
- Scopri le modifiche che interessano gli upgrade a MySQL 8.4.
- Scopri di più sulle modifiche che interessano gli upgrade a MySQL 8.0.
- Scopri le modifiche che interessano gli upgrade a MySQL 5.7.
- Scopri di più su Database Migration Service.
- Scopri di più sull'importazione e sull'esportazione dei dati.
- Scopri le opzioni per connetterti a un'istanza.
- Scopri come impostare i flag MySQL.