Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Applica a:Azure SQL Managed Instance
Questo articolo illustra come eseguire la migrazione del database di SQL Server a Azure SQL Managed Instance usando il collegamento Managed Instance.
Per una guida dettagliata alla migrazione, vedere Migrate in Azure SQL Managed Instance. Per confrontare gli strumenti di migrazione, vedere Compare LRS con collegamento Managed Instance.
Nota
È ora possibile eseguire la migrazione dell'istanza di SQL Server abilitata da Azure Arc a Azure SQL Managed Instance direttamente tramite il portale di Azure. Per altre informazioni, vedere Migrate a Azure SQL Managed Instance.
Panoramica
Il collegamento Managed Instance consente la migrazione da SQL Server ospitata ovunque, a Azure SQL Managed Instance. Il collegamento usa la tecnologia del gruppo di disponibilità AlwaysOn per replicare le modifiche quasi in tempo reale dall'istanza primaria SQL Server all'SQL Managed Instance secondaria. Il collegamento fornisce l'unica vera opzione di migrazione online tra SQL Server e Azure SQL Managed Instance, poiché l'unico tempo di inattività si verifica durante il passaggio all'istanza gestita di SQL di destinazione.
La migrazione con il collegamento offre:
- Possibilità di testare i carichi di lavoro di sola lettura in SQL Managed Instance prima di finalizzare la migrazione a Azure.
- Possibilità di mantenere il collegamento e la migrazione in esecuzione per tutto il tempo necessario, settimane e persino mesi alla volta.
- Replica quasi in tempo reale dei dati che fornisce la replica dei dati più veloce disponibile per Azure.
- La migrazione con il minor tempo di inattività rispetto a tutte le altre soluzioni attualmente disponibili.
- Commutazione istantanea al SQL Managed Instance di destinazione.
- Possibilità di eseguire la migrazione ogni volta che si è pronti.
- Possibilità di eseguire la migrazione di database singoli o multipli da una o più istanze di SQL Server alla stessa o a più istanze gestite di SQL in Azure.
- L'unica vera migrazione online al livello di servizio Business Critical.
Nota
Sebbene sia possibile eseguire la migrazione di un solo database per collegamento, è possibile stabilire più collegamenti dalla stessa istanza di SQL Server alla stessa SQL Managed Instance.
Prerequisiti
Per usare il collegamento con Azure SQL Managed Instance per la migrazione, sono necessari i prerequisiti seguenti:
- Sottoscrizione attiva Azure. Se non se ne ha una, creare un account gratuito.
- Versione supportata di SQL Server con l'aggiornamento del servizio richiesto installato.
Valutazione e individuazione
Dopo aver verificato che l'ambiente di origine è supportato, iniziare con la fase di pre-migrazione. Individuare tutte le origini dati esistenti, valutare la fattibilità della migrazione e identificare eventuali problemi di blocco che potrebbero impedire la migrazione. Nella fase Individuazione analizzare la rete per identificare tutte le istanze e le funzionalità SQL Server usate dall'organizzazione.
È possibile usare i seguenti strumenti per individuare le origini SQL nell'ambiente:
- SQL Server abilitato da Azure Arc: SQL Server abilitato da Azure Arc genera automaticamente una valutazione per la migrazione a Azure, semplificando il processo di individuazione e la valutazione dell'idoneità per la migrazione.
- Azure Migrate per valutare l'idoneità della migrazione dei server locali, eseguire dimensioni basate sulle prestazioni e fornire stime dei costi per l'esecuzione in Azure.
- Microsoft Assessment and Planning Toolkit (il "MAP Toolkit") per valutare l'infrastruttura IT corrente. Il toolkit offre un potente strumento di inventario, valutazione e creazione di report per semplificare il processo di pianificazione della migrazione.
Dopo aver individuato le origini dati, valutare eventuali istanze di SQL Server locali di cui è possibile eseguire la migrazione a Azure SQL Managed Instance per identificare i blocchi di migrazione o i problemi di compatibilità.
È possibile usare la valutazione della preparazione alla migrazione per valutare l'istanza di SQL Server di origine.
Per una guida dettagliata, consultare la sezione pre-migrazione.
Creare un'istanza di destinazione
Dopo aver valutato l'ambiente esistente e determinato il livello di servizio e la configurazione hardware appropriati per l'istanza gestita di SQL di destinazione, distribuire l'istanza di destinazione usando il portale Azure portale, PowerShell o il Azure CLI.
Configurare il collegamento
Dopo aver creato l'istanza gestita SQL di destinazione, configurare un collegamento tra il database nell'istanza di SQL Server e l'Istanza Gestita SQL di Azure. Prima di tutto, prepare l'ambiente e quindi configurare un collegamento usando SQL Server Management Studio (SSMS) o scripts.
Controllare il ritardo della replica
È importante che la replica secondaria venga recuperata nella replica primaria prima di eseguire un failover di migrazione pianificato. Il failover pianificato può andare in timeout e fallire se la replica secondaria è molto indietro rispetto alla replica primaria.
Usare la query T-SQL seguente in SQL Server e SQL Managed Instance per monitorare il ritardo di replica tra le repliche:
-- Execute on SQL Server and SQL Managed Instance
USE master
DECLARE @link_name varchar(max) = '<DAGname>'
SELECT
ag.name [Link name],
ars1.role_desc [Link role],
ars2.connected_state_desc [Link connected state],
ars2.synchronization_health_desc [Link sync health],
drs.secondary_lag_seconds [Link replication latency (seconds)]
FROM
sys.availability_groups ag
JOIN sys.dm_hadr_availability_replica_states ars1
ON ag.group_id = ars1.group_id
JOIN sys.dm_hadr_availability_replica_states ars2
ON ag.group_id = ars2.group_id
JOIN sys.dm_hadr_database_replica_states drs
ON ars2.replica_id = drs.replica_id
WHERE
ag.is_distributed = 1 AND ag.name = @link_name AND ars1.is_local = 1 AND ars2.is_local = 0
GO
Se il ritardo di replica è elevato, attendere che la replica secondaria si sincronizzi con la replica primaria. Potrebbe essere necessario eseguire passaggi aggiuntivi per la risoluzione dei problemi se il ritardo persiste, ad esempio la sospensione dei carichi di lavoro nella replica primaria, il miglioramento della velocità effettiva di rete tra le due istanze o l'aumento della capacità delle risorse nella replica secondaria. Il modo più semplice per arrestare i carichi di lavoro in una replica primaria SQL Server consiste nel tagliare le connessioni dell'applicazione all'istanza.
Eseguire la migrazione di più database
Se si prevede di eseguire la migrazione di più database da istanze nello stesso server, per ottenere prestazioni ottimali e prevedibilità, eseguire la migrazione di 8 database per istanza alla volta. Ad esempio, se sono presenti 10 istanze con 32 database collegati, eseguire la migrazione di 8 database alla volta da ogni istanza usando failover pianificati e ripetere il processo fino a quando non viene eseguita la migrazione di tutti i database.
Sincronizzazione e transizione dei dati
Dopo aver stabilito il collegamento, quando si è pronti per eseguire la migrazione, seguire questa procedura (in genere durante una finestra di manutenzione):
- Arrestare il carico di lavoro nel database SQL Server primario in modo che il database secondario in SQL Managed Instance venga aggiornato.Stop the workload on the primary SQL Server database so the secondary database on SQL Managed Instance catch up. Il modo più semplice per arrestare i carichi di lavoro in una replica primaria SQL Server consiste nel tagliare le connessioni dell'applicazione all'istanza.
- Assicurarsi che tutti i dati siano stati trasferiti nel database secondario su SQL Managed Instance. Controllare il ritardo della replica per assicurarsi che la replica secondaria venga intercettata con la replica primaria.
- Eseguire il failover del collegamento all'istanza gestita di SQL secondaria scegliendo Failover pianificato.
- (Facoltativamente) Selezionare la casella Rimuovi collegamento dopo il failover riuscito per assicurarsi che il failover sia unidirezionale e che il collegamento venga rimosso.
- (Facoltativamente) Se usi una versione supportata di SQL Server con un criterio di aggiornamento di SQL Managed Instance appropriato, puoi mantenere il collegamento dopo il failover per invertire una migrazione, se necessario. Controllare la sezione per annullare una migrazione per informazioni dettagliate sulla versione.
- Eseguire il cutover dell'applicazione per connettersi all'endpoint dell’istanza gestita di SQL.
- (Facoltativamente) Se non si è scelto di rimuovere il collegamento durante il failover, è possibile rimuovere il collegamento dopo il cutover una volta che non è più necessario.
Convalidare la migrazione
Dopo aver effettuato il passaggio alla destinazione dell'istanza gestita di SQL, controllare l'applicazione, verificare le prestazioni e correggere eventuali problemi.
Per informazioni dettagliate, consultare la sezione dopo la migrazione.
Invertire una migrazione
La migrazione inversa a SQL Server da Azure SQL Managed Instance potrebbe essere supportata in base ai criteri di aggiornamento dell'istanza gestita di SQL. Per esempio:
- Politica di aggiornamento di SQL Server 2022: I database delle istanze configurate con la politica di aggiornamento di SQL Server 2022 possono essere ripristinati nelle istanze di SQL Server 2022.
- Politica di aggiornamento di SQL Server 2025: I database delle istanze configurate con la politica di aggiornamento di SQL Server 2025 possono essere ripristinati sulle istanze di SQL Server 2025.
- Always-up-to-date update policy: i database delle istanze configurate con la politica di aggiornamento Always-up-to-date non possono essere ripristinati su SQL Server.
Se la versione di SQL Server di origine è precedente a SQL Server 2022, la migrazione inversa non è possibile. Quando si esegue la migrazione del database a SQL Managed Instance, viene eseguito un aggiornamento interno a una versione più recente del database non compatibile con le versioni precedenti di SQL Server. La compatibilità del database di migrazione inversa è disponibile solo quando l'istanza gestita di SQL è configurata con i criteri di aggiornamento corrispondenti.
Contenuto correlato
Per usare il collegamento:
- Preparare l'ambiente per un collegamento
- Configurare il collegamento con SSMS
- Configurare il collegamento con gli script
- Collegamento di failover
- Pratiche ottimali per il collegamento di Managed Instance
Per altre informazioni sul collegamento:
- Panoramica del collegamento Managed Instance
- Ripristino di emergenza con collegamento di Managed Instance
Per altri scenari di replica e migrazione, prendere in considerazione:
- Replica transazionale con Azure SQL Managed Instance
- Panoramica del servizio di replica dei log con Azure SQL Managed Instance
- Confronta LRS con il collegamento a Managed Instance