Panoramica
Prima di scegliere di eseguire la migrazione dei database a Cloud SQL, assicurati di prendere in considerazione le limitazioni note per questo scenario di migrazione.
Le limitazioni note per l'utilizzo di un database MySQL come origine includono:
La migrazione a MySQL 5.6 o MySQL 8.4 con un file di backup fisico Percona XtraBackup non è supportata.
Quando esegui la migrazione tra versioni principali di MySQL (ad esempio da MySQL 8.0 a MySQL 8.4), devi risolvere le possibili incompatibilità per garantire una migrazione senza problemi e senza problemi di coerenza dei dati.
Quando ti prepari per una migrazione tra versioni, esamina le funzionalità supportate da Cloud SQL per MySQL e le note di rilascio della versione principale di destinazione per determinare le incompatibilità da risolvere.
Non apportare modifiche al Data Definition Language (DDL), ad esempio modificare le definizioni delle tabelle, durante la fase di dump completo dei dati. Le modifiche DDL eseguite prima che il job di migrazione passi alla fase CDC possono causare l'esito negativo del job di migrazione. Per saperne di più, vedi Diagnosticare i problemi: errore
Table definition has changed
.Se l'origine è Amazon RDS MySQL, Amazon Aurora MySQL o un'origine che non concede privilegi SUPERUSER, sono necessari passaggi aggiuntivi per la migrazione, tra cui un breve periodo di inattività della scrittura nell'origine. Per saperne di più, consulta le sezioni specifiche di Amazon RDS e Amazon Aurora.
Database Migration Service non può eseguire la migrazione dei dati da un'istanza di replica di lettura Amazon Aurora di un cluster di database MySQL perché non è possibile recuperare i file di log binari dall'istanza. Per saperne di più, consulta la sezione specifica di Amazon Aurora.
Il database di sistema MySQL non viene sottoposto a migrazione nell'ambito della migrazione del server, il che significa che le informazioni sui ruoli utente non sono incluse.
Non puoi selezionare oggetti di database specifici (come database, tabelle o schemi) quando esegui la migrazione utilizzando Database Migration Service. Viene eseguita la migrazione di tutte le tabelle di tutti i database e gli schemi, ad eccezione dei seguenti schemi di sistema:
mysql
,performance_schema
,information_schema
esys
. Prima di iniziare la migrazione, assicurati che il database di origine non contenga oggetti che fanno riferimento a tabelle in questi schemi. In caso contrario, la migrazione potrebbe non riuscire e visualizzare il messaggioERROR 1109 (42S02): Unknown table in <schema name here>
. Consulta Configurazione del database di origine e Diagnosi dei problemi.Se i database criptati richiedono chiavi di crittografia gestite dal cliente per decriptare le informazioni nei database e se Database Migration Service non ha accesso alle chiavi, i database non possono essere migrati.
Database Migration Service supporta la migrazione dei dati da database Amazon Aurora o Amazon RDS criptati perché questi database gestiscono la decriptografia in modo trasparente nei loro servizi. Per ulteriori informazioni, vedi Crittografia delle risorse Amazon Aurora e Crittografia delle risorse Amazon RDS.
Durante la migrazione, il database Cloud SQL di destinazione è in modalità di sola lettura, per impedire la modifica del database che potrebbe interrompere la procedura di migrazione o l'integrità dei dati. Una volta promossa, la destinazione diventa scrivibile.
Al momento, Database Migration Service non è compatibile con MariaDB.
Devi impostare il formato del log binario su
ROW
. La configurazione del log binario in qualsiasi altro formato, ad esempioSTATEMENT
oMIXED
, potrebbe causare l'errore della replica. Ad esempio, utilizzando l'istruzioneLOAD DATA IN FILE
.Scopri di più su questa limitazione per i formati
STATEMENT
oMIXED
.Se crei un job di migrazione continua utilizzando il tuo file di dump, non utilizzare l'utilità
mysqldump
della versione 5.7.36 di MySQL. Per ulteriori informazioni, consulta il bug n. 105761 nella documentazione di MySQL.InnoDB è l'unico motore di archiviazione supportato per Cloud SQL. La migrazione con MyISAM potrebbe causare incoerenze nei dati e richiede la convalida dei dati. Per informazioni su come convertire le tabelle da MyISAM a InnoDB, consulta la documentazione di MySQL.
Considerazioni sul parallelismo del dump dei dati
Il parallelismo del dump dei dati consente di eseguire la migrazione dai database MySQL utilizzando un meccanismo di dump ad alte prestazioni, migliorando significativamente la velocità di migrazione. Quando utilizzi il parallelismo del dump dei dati, tieni presente quanto segue:
Il parallelismo del dump dei dati è attualmente disponibile solo durante la migrazione a MySQL versioni 5.7 o 8.
All'inizio del dump dei dati, Database Migration Service blocca brevemente il database di origine rendendolo temporaneamente non disponibile per le scritture. La durata del blocco dipende dal numero di tabelle nel database di origine:
Numero di tabelle Tempo di blocco approssimativo 100 1 secondo 10.000 9 secondi 50.000 49 secondi
Limitazioni per le migrazioni a istanze di destinazione esistenti
- L'istanza di destinazione esistente deve essere vuota o contenere solo
dati di configurazione del sistema. La migrazione a istanze di destinazione esistenti
che contengono dati utente (ad esempio tabelle) non è supportata.
Se riscontri problemi a causa di dati aggiuntivi nell'istanza di destinazione esistente, cancella i database nell'istanza di destinazione e riprova il job di migrazione. Consulta Cancella dati aggiuntivi dall'istanza di destinazione esistente.
- Puoi configurare un solo job di migrazione per istanza di destinazione.
- Puoi eseguire la migrazione solo a istanze Cloud SQL autonome. La migrazione alle repliche del server esterno non è supportata.
- La migrazione dei dati a un'istanza Cloud SQL con Private Service Connect abilitato non è supportata.
- La migrazione a un'istanza Cloud SQL con una replica di lettura richiede che nella tua istanza di origine sia attivato il logging dell'ID transazione globale (GTID).
- Per gli utenti di Terraform: Database Migration Service modifica le impostazioni di backup e ripristino dell'istanza di destinazione. Ciò potrebbe comportare che le impostazioni dell'istanza di destinazione siano diverse dalla configurazione Terraform utilizzata per il provisioning. Se riscontri questo problema, segui le indicazioni riportate in Diagnostica dei problemi.
Quote
- In qualsiasi momento, possono esistere fino a 2000 profili di connessione e 1000 job di migrazione. Per creare spazio, è possibile eliminare i job di migrazione (compresi quelli completati) e i profili di connessione.