Questa pagina descrive come eseguire la migrazione dei database SQL Server all'istanza Cloud SQL per SQL Server con Database Migration Service.
La procedura di migrazione prevede le seguenti attività:
Esportazione del backup completo del database e dei file dei log delle transazioni dall'istanza SQL Server di origine.
Puoi anche utilizzare il backup differenziale facoltativo del database nel processo di migrazione.
Carica i file di backup in un bucket Cloud Storage.
Creazione dell'istanza Cloud SQL per SQL Server di destinazione.
Crea ed esegui il job di migrazione in Database Migration Service.
Monitoraggio dell'avanzamento del job di migrazione con le funzionalità di osservabilità di Database Migration Service.
Promuovi il job di migrazione dopo che i dati sono stati trasferiti del tutto.
Costi
Per le migrazioni omogenee a Cloud SQL, Database Migration Service viene offerto senza costi aggiuntivi. Tuttavia, i prezzi di Cloud SQL e Cloud Storage si applicano ai costi di rete, nonché alle entità Cloud SQL e Cloud Storage create a scopo di migrazione.
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
- Cloud Storage
- Cloud SQL
Per generare una stima dei costi in base all'utilizzo previsto, utilizza il Calcolatore prezzi.
Prima di iniziare
- Verifica se questo percorso di migrazione può supportare completamente il tuo scenario. Consulta Limitazioni note di SQL Server.
- Valuta in quale regione vuoi creare il database di destinazione. Database Migration Service è un prodotto completamente regionale, il che significa che tutte le entità legate alla migrazione (profili di connessione di origine e di destinazione, job di migrazione, database di destinazione, bucket di archiviazione) devono essere salvate in una singola regione.
- Nella console Google Cloud , nella pagina del selettore dei progetti, seleziona o crea un progetto Google Cloud .
- Abilita le API Database Migration Service, Compute Engine, Cloud Storage e Cloud SQL Admin.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per eseguire migrazioni omogenee di SQL Server con Database Migration Service, chiedi all'amministratore di concedere i ruoli IAM richiesti nel progetto per i seguenti account coinvolti nel processo di migrazione
- Account utente che esegue la migrazione:
-
Database Migration Admin (
roles/datamigration.admin
) -
Amministratore archiviazione (
roles/storage.admin
) -
Cloud SQL Editor (
roles/cloudsql.editor
)
-
Database Migration Admin (
- Account di servizio di Database Migration Service:
-
Database Migration Admin (
roles/datamigration.admin
) -
Amministratore archiviazione (
roles/storage.admin
) -
Cloud SQL Editor (
roles/cloudsql.editor
) -
Cloud SQL Studio User (
roles/cloudsql.studioUser
)
-
Database Migration Admin (
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per eseguire migrazioni omogenee di SQL Server con Database Migration Service. Per visualizzare le autorizzazioni esatta che sono richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per eseguire migrazioni omogenee di SQL Server con Database Migration Service sono necessarie le seguenti autorizzazioni:
- Account utente che esegue la migrazione:
datamigration.*
resourcemanager.projects.get
resourcemanager.projects.list
cloudsql.operations.get
cloudsql.instances.create
cloudsql.instances.get
cloudsql.instances.list
cloudsql.instances.import
cloudsql.databases.get
cloudsql.databases.list
cloudsql.databases.delete
compute.machineTypes.list
compute.machineTypes.get
compute.projects.get
storage.buckets.create
storage.buckets.list
- Account di servizio di Database Migration Service:
datamigration.*
resourcemanager.projects.get
resourcemanager.projects.list
cloudsql.instances.create
cloudsql.instances.get
cloudsql.instances.list
cloudsql.instances.executeSql
storage.objects.create
storage.objects.list
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Prepara i dati di origine
Per preparare i dati di origine per la migrazione:
Valuta la tua strategia di backup per il processo di migrazione. Database Migration Service supporta l'utilizzo di un backup differenziale e dei file dei log delle transazioni per la migrazione dei dati visualizzati nel database dopo il backup completo.
Esegui un backup completo del database SQL Server di origine. Assicurati di utilizzare il pattern di denominazione corretto.
Prepara un bucket Cloud Storage e carica i file di backup. Assicurati di configurare la struttura di directory necessaria per ogni tipo di file di backup che vuoi utilizzare.
Crea un profilo di connessione di origine per il bucket Cloud Storage.
Prepara l'istanza di destinazione Cloud SQL per SQL Server
Per configurare l'istanza Cloud SQL di destinazione, svolgi i seguenti passaggi:
Crea e configura l'istanza di destinazione Cloud SQL per SQL Server. Assicurati di utilizzare risorse di calcolo e memoria sufficienti per soddisfare le tue esigenze di migrazione e assegna il ruolo Amministratore archiviazione (
roles/storage.admin
) all'account di servizio dell'istanza.Crea un profilo di connessione di destinazione per l'istanza Cloud SQL.
Crea ed esegui il job di migrazione
Per configurare ed eseguire la migrazione, svolgi i seguenti passaggi:
Crea ed esegui il job di migrazione.
Quando avvii il job di migrazione, i database Cloud SQL per SQL Server di destinazione vengono messi in modalità di recupero, dove sono completamente gestiti da Database Migration Service. Puoi promuovere l'istanza di destinazione quando la migrazione dei dati è stata completata. Dopo la promozione dell'istanza di destinazione, tutti i database al suo interno diventano pienamente operativi. Inoltre, ottieni accesso in scrittura completo a questi database.
Puoi monitorare l'avanzamento della migrazione, nonché lo stato dell'istanza di destinazione, con le funzionalità di osservabilità di Database Migration Service. Consulta Metriche job di migrazione.
Continua a caricare nuovi file di backup dei log delle transazioni nel bucket Cloud Storage.
Per coprire i dati visualizzati nel database di origine dopo l'esportazione del backup completo, esporta i file di backup dei log delle transazioni e caricali nel bucket di archiviazione. Database Migration Service rileva automaticamente i nuovi file, legge i relativi contenuti e invia i dati all'istanza di destinazione. Consulta Automatizzare le esportazioni dei log delle transazioni.
Finalizzare la migrazione
Quando decidi di passare la tua applicazione alla nuova istanza Cloud SQL per SQL Server, completa la migrazione seguendo questi passaggi:
- Interrompi tutte le operazioni di scrittura sui database di origine. Puoi impostarle in modalità di sola lettura per mantenere la funzionalità operativa.
- Esegui l'ultimo backup del log delle transazioni, carica il file nel bucket di archiviazione e interrompi la fase di caricamento incrementale in Database Migration Service.
Per ottenere questo risultato, puoi eseguire una delle seguenti azioni:
- Interrompi i caricamenti automatici dei file di backup o carica l'ultimo file del log delle transazioni. Monitora le dimensioni dei backup dei log delle transazioni non elaborati per determinare quando Database Migration Service termina l'elaborazione del file.
- Facoltativamente, puoi caricare un file di log delle transazioni il cui nome termina con il suffisso
.trn.final
. Database Migration Service interrompe i caricamenti continui quando rileva un file di backup il cui nome corrisponde alla convenzione di suffisso.trn.final
.Quando Database Migration Service termina l'elaborazione del file, lo stato del job di migrazione diventa Pronto per la promozione.
- Promuovi il job di migrazione.
- (Facoltativo) Verifica la completezza dei dati di migrazione.