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 Cloud SQL MySQL. Puoi anche utilizzarlo per eseguire l'upgrade della versione di MySQL.
- Opzione 2. Sposta i dati da una versione di MySQL a un'altra esportandoli dall'istanza attuale e importandoli in una nuova istanza che esegue la versione successiva di MySQL. Questo processo comporta tempi di inattività; devi impostare l'istanza corrente in modalità di sola lettura prima di avviare l'esportazione.
Questa pagina descrive la seconda opzione.
Pianificare un upgrade della versione principale
Scegli una versione principale di destinazione.
Consulta l'elenco delle versioni supportate da Cloud SQL.
Considera 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 degli utenti 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 garantire che gli utenti del database abbiano accesso agli schemi di database corretti, modifica i privilegi degli utenti del database prima di eseguire l'upgrade a MySQL 8.0. Aggiorna i privilegi dell'utente per utilizzare il nome completo degli schemi di database richiesti anziché utilizzare caratteri jolly.Per ulteriori informazioni sul funzionamento di questo flag in MySQL 8.0, consulta partial_revokes in MySQL 8.0.
Testa l'upgrade con un test dry run.
Esegui una prova del processo 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 qualsiasi impatto sul rendimento dell'esportazione sul carico di lavoro di produzione.
Oltre a verificare che l'upgrade venga completato correttamente, esegui test per assicurarti che l'applicazione si comporti come previsto nel database aggiornato. Se non hai attivato gli aumenti automatici dello spazio di archiviazione, prendi nota dello spazio di archiviazione su disco utilizzato dall'istanza di prova aggiornata 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 più recente del database, 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 attuale.
- Le stesse reti autorizzate dell'istanza corrente. Scopri di più.
- Gli stessi account utente, con gli stessi privilegi e le stesse password MySQL.
Per saperne di più, vedi Creazione di 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 flag del database
read_only
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 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 apportate 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 Replica da un server esterno.
Aggiorna le applicazioni per connetterti alla nuova istanza.
Quando avrai la certezza che la nuova istanza funziona correttamente, elimina quella precedente.
Passaggi successivi
- Scopri di più sulle modifiche che interessano gli upgrade a MySQL 8.4.
- Scopri di più sulle modifiche che interessano gli upgrade a MySQL 8.0.
- Scopri di più sulle 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 di più sulle opzioni per connettersi a un'istanza.
- Scopri di più sull'impostazione dei flag MySQL.