Eseguire la migrazione dei database usando l'estensione Migrazione SQL di Azure per Azure Data Studio

Informazioni su come usare l'esperienza unificata nell'estensione Migrazione SQL di Azure per Azure Data Studio. Consente di valutare i requisiti del database, ottenere le raccomandazioni per gli SKU di dimensioni appropriate per le risorse di Azure ed eseguire la migrazione del database di SQL Server ad Azure.

L'estensione Migrazione SQL di Azure per Azure Data Studio offre questi vantaggi principali:

  • Interfaccia utente reattiva per un'esperienza di migrazione end-to-end. L'estensione inizia con una valutazione dell'idoneità per la migrazione e una raccomandazione sku (anteprima) (in base ai dati sulle prestazioni).

  • Meccanismo di valutazione avanzato che può valutare le istanze di SQL Server. L'estensione identifica i database pronti per la migrazione alle destinazioni SQL di Azure.

    Nota

    È possibile usare l'estensione Migrazione SQL di Azure per valutare i database di SQL Server in esecuzione in Windows o Linux.

  • Un motore di raccomandazione SKU che raccoglie i dati sulle prestazioni dall'istanza di SQL Server di origine locale e quindi genera raccomandazioni sullo SKU di dimensioni corrette in base alla destinazione SQL di Azure.

  • Un servizio di Azure affidabile basato su Servizio Migrazione del database di Azure che orchestra le attività di spostamento dei dati per offrire un'esperienza di migrazione senza problemi.

  • È possibile eseguire la migrazione online (per le migrazioni che richiedono tempi di inattività minimi) o offline (per le migrazioni in cui il tempo di inattività persiste durante la migrazione) a seconda dei requisiti aziendali.

  • È possibile configurare un runtime di integrazione self-hosted per usare le proprie risorse di calcolo per accedere ai file di backup dell'istanza di SQL Server di origine nell'ambiente locale.

  • Offre un'esperienza utente sicura e migliorata per la migrazione di database TDE e account di accesso SQL/Windows ad Azure SQL.

Per informazioni su scenari di migrazione specifici e destinazioni SQL di Azure, vedere l'elenco delle esercitazioni nella tabella seguente:

Scenario di migrazione Modalità di migrazione
Da SQL Server a Istanza gestita di SQL di Azure Online Offline /
DA SQL Server a SQL Server in una macchina virtuale di Azure Online Offline /
Da SQL Server a database SQL di Azure Offline

Importante

Se la destinazione è database SQL di Azure, è possibile eseguire la migrazione dello schema e dei dati del database usando Servizio Migrazione del database tramite il portale di Azure. È anche possibile usare strumenti come l'estensione dacpac di SQL Server o l'estensione progetti database SQL per Azure Data Studio per distribuire lo schema del database prima di iniziare la migrazione dei dati.

Il video seguente illustra gli aggiornamenti e le funzionalità recenti aggiunti all'estensione Migrazione SQL di Azure per Azure Data Studio:


Architettura dell'estensione Migrazione SQL di Azure per Azure Data Studio

Servizio Migrazione del database di Azure è un componente di base dell'architettura dell'estensione Migrazione SQL di Azure. Servizio Migrazione del database offre un agente di orchestrazione di migrazione affidabile per supportare le migrazioni di database a SQL di Azure. È possibile creare un'istanza di Servizio Migrazione del database o usare un'istanza esistente usando l'estensione Migrazione SQL di Azure in Azure Data Studio.

Servizio Migrazione del database usa il runtime di integrazione self-hosted di Azure Data Factory per accedere e caricare file di backup validi dalla condivisione di rete locale o dall'account di archiviazione di Azure.

Il flusso di lavoro del processo di migrazione è illustrato nel diagramma seguente:

Diagram that shows the Azure SQL Migration extension architecture.

L'elenco seguente descrive ogni passaggio del flusso di lavoro:

(1) SQL Server di origine: istanza locale di SQL Server che si trova in un cloud privato o in un'istanza di SQL Server in una macchina virtuale in un cloud pubblico. Sono supportati SQL Server 2008 e versioni successive in Windows o Linux.

(2) Azure SQL di destinazione: le destinazioni SQL di Azure supportate sono Istanza gestita di SQL di Azure, SQL Server in Azure Macchine virtuali (registrato con l'infrastruttura SQL come estensione del servizio in modalità di gestione completa) e database SQL di Azure.

(3) Condivisione file di rete: una condivisione file di rete SMB (Server Message Block) in cui vengono archiviati i file di backup per i database di cui eseguire la migrazione. Sono supportati anche i contenitori BLOB di archiviazione di Azure e la condivisione file di archiviazione di Azure.

(4) Azure Data Studio: scaricare e installare l'estensione Migrazione SQL di Azure per Azure Data Studio.

(5) Servizio Migrazione del database di Azure: servizio di Azure che orchestra le pipeline di migrazione per eseguire attività di spostamento dei dati da un ambiente locale ad Azure. Servizio Migrazione del database è associato al runtime di integrazione self-hosted di Azure Data Factory e offre la possibilità di registrare e monitorare il runtime di integrazione self-hosted.

(6) Runtime di integrazione self-hosted: installare un runtime di integrazione self-hosted in un computer in grado di connettersi all'istanza di SQL Server di origine e al percorso del file di backup. Servizio Migrazione del database fornisce le chiavi di autenticazione e registra il runtime di integrazione self-hosted.

(7) I file di backup vengono caricati nell'account di archiviazione di Azure: Servizio Migrazione del database usa un runtime di integrazione self-hosted per caricare file di backup validi dal percorso di backup locale all'account di archiviazione di Azure. Le attività e le pipeline di spostamento dei dati vengono create automaticamente nel flusso di lavoro di migrazione per caricare i file di backup.

(8) Ripristinare i backup in Azure SQL di destinazione: Servizio Migrazione del database ripristina i file di backup dall'account di archiviazione di Azure all'istanza sql di Azure di destinazione supportata.

Nota

Se la destinazione di migrazione è database SQL di Azure, non sono necessari backup per questa migrazione. La migrazione del database a database SQL di Azure viene considerata una migrazione logica che comporta la pre-creazione e lo spostamento dei dati del database (eseguito da Servizio Migrazione del database).

Importante

L'estensione Migrazione SQL di Azure per Azure Data Studio non esegue backup del database o non avvia alcun backup del database per conto dell'utente. Il servizio usa invece i file di backup del database esistenti per la migrazione.

In modalità di migrazione online, Servizio Migrazione del database carica continuamente i file di origine del backup nell'account di archiviazione di Azure e li ripristina nella destinazione fino a quando non si completa il passaggio finale del taglio alla destinazione.

In modalità di migrazione offline Servizio Migrazione del database carica i file di origine del backup in Archiviazione di Azure e li ripristina nella destinazione senza richiedere un cutover.

Prerequisiti

Le sezioni seguenti illustrano i prerequisiti per ogni destinazione SQL di Azure supportata.

  • Scaricare e installare Azure Data Studio.

  • Installare l'estensione Migrazione SQL di Azure da Azure Data Studio Marketplace.

  • Avere un account Azure assegnato a uno dei ruoli predefiniti seguenti:

    • Collaboratore per l'istanza di destinazione di Istanza gestita di SQL di Azure e per l'account di archiviazione in cui si caricano i file di backup del database da una condivisione di rete SMB (Server Message Block)
    • Ruolo lettore per i gruppi di risorse di Azure che contengono l'istanza di destinazione di Istanza gestita di SQL di Azure o l'account Archiviazione di Azure
    • Ruolo Proprietario o Collaboratore per la sottoscrizione di Azure (obbligatorio se si crea una nuova istanza di Servizio Migrazione del database)

    In alternativa all'uso di uno di questi ruoli predefiniti, è possibile assegnare un ruolo personalizzato.

    Importante

    Un account Azure è necessario solo quando si configurano i passaggi di migrazione. Non è necessario un account Azure per la valutazione o per visualizzare le raccomandazioni di Azure nella migrazione guidata in Azure Data Studio.

  • Creare un'istanza di destinazione di Istanza gestita di SQL di Azure.

  • Verificare che gli account di accesso usati per connettere l'istanza di SQL Server di origine siano membri del ruolo del server SYSADMIN o disporre dell'autorizzazione CONTROL edizione Standard RVER.

  • Fornire una condivisione di rete SMB, una condivisione file dell'account di archiviazione di Azure o un contenitore BLOB dell'account di archiviazione di Azure che contiene i file di backup completi del database e i file di backup del log delle transazioni successivi. Servizio Migrazione del database usa il percorso di backup durante la migrazione del database.

    Importante

    • L'estensione Migrazione SQL di Azure per Azure Data Studio non esegue backup del database o non avvia alcun backup del database per conto dell'utente. Il servizio usa invece i file di backup del database esistenti per la migrazione.
    • Se i file di backup del database si trovano in una condivisione di rete SMB, creare un account di archiviazione di Azure che Servizio Migrazione del database può usare per caricare i file di backup del database in e per eseguire la migrazione dei database. Assicurarsi di creare l'account di archiviazione di Azure nella stessa area in cui si crea l'istanza di Servizio Migrazione del database.
    • È possibile scrivere ogni backup in un file di backup separato o in più file di backup. L'aggiunta di più backup, ad esempio i log completi e delle transazioni in un singolo supporto di backup, non è supportata.
    • È possibile fornire backup compressi per ridurre la probabilità di riscontrare potenziali problemi associati alla migrazione di backup di grandi dimensioni.
  • Assicurarsi che l'account del servizio che esegue l'istanza di SQL Server di origine disponga delle autorizzazioni di lettura e scrittura per la condivisione di rete SMB che contiene i file di backup del database.

  • Se si esegue la migrazione di un database protetto da Transparent Data Encryption (TDE), è necessario eseguire la migrazione del certificato dall'istanza di SQL Server di origine all'istanza gestita di destinazione prima di ripristinare il database. Per altre informazioni sulla migrazione di database abilitati per TDE, vedere Esercitazione: Eseguire la migrazione di database abilitati per TDE (anteprima) ad Azure SQL in Azure Data Studio.

    Suggerimento

    Se il database contiene dati sensibili protetti da Always Encrypted, il processo di migrazione esegue automaticamente la migrazione delle chiavi Always Encrypted all'istanza gestita di destinazione.

  • Se i backup del database si trovano in una condivisione file di rete, specificare un computer in cui è possibile installare un runtime di integrazione self-hosted per accedere ed eseguire la migrazione dei backup del database. La migrazione guidata offre il collegamento di download e le chiavi di autenticazione per scaricare e installare il runtime di integrazione self-hosted.

    In preparazione per la migrazione, verificare che nel computer in cui si installa il runtime di integrazione self-hosted siano abilitate le regole del firewall in uscita e i nomi di dominio seguenti:

    Nomi di dominio Porta in uscita Descrizione
    Cloud pubblico: {datafactory}.{region}.datafactory.azure.net
    o *.frontend.clouddatahub.net

    Azure per enti pubblici:{datafactory}.{region}.datafactory.azure.us

    Microsoft Azure gestito da 21Vianet: {datafactory}.{region}.datafactory.azure.cn
    443 Richiesto dal runtime di integrazione self-hosted per connettersi a Servizio Migrazione del database.

    Per una data factory appena creata in un cloud pubblico, individuare il nome di dominio completo (FQDN) dalla chiave di runtime di integrazione self-hosted nel formato {datafactory}.{region}.datafactory.azure.net.

    Per una data factory esistente, se non viene visualizzato il nome di dominio completo nella chiave di integrazione self-hosted, usare *.frontend.clouddatahub.net invece .
    download.microsoft.com 443 Richiesta dal runtime di integrazione self-hosted per il download degli aggiornamenti. Se l'aggiornamento automatico è stato disabilitato, è possibile evitare di configurare questo dominio.
    *.core.windows.net 443 Usato dal runtime di integrazione self-hosted che si connette all'account di archiviazione di Azure per caricare i backup del database dalla condivisione di rete

    Suggerimento

    Se i file di backup del database sono già disponibili in un account di archiviazione di Azure, non è necessario un runtime di integrazione self-hosted durante il processo di migrazione.

  • Se si usa un runtime di integrazione self-hosted, assicurarsi che il computer in cui è installato il runtime possa connettersi all'istanza di SQL Server di origine e alla condivisione file di rete in cui si trovano i file di backup.

  • Abilitare la porta in uscita 445 per consentire l'accesso alla condivisione file di rete. Per altre informazioni, vedere consigli per l'uso di un runtime di integrazione self-hosted.

  • Se si usa Servizio Migrazione del database per la prima volta, assicurarsi che il provider di risorse Microsoft.DataMigration sia registrato nella sottoscrizione. È possibile completare i passaggi per registrare il provider di risorse.

Consigli per l'uso di un runtime di integrazione self-hosted per le migrazioni di database

  • Usare un singolo runtime di integrazione self-hosted per più database SQL Server di origine.

  • Installare una sola istanza di un runtime di integrazione self-hosted in un singolo computer.

  • Associare un solo runtime di integrazione self-hosted a un'istanza di Servizio Migrazione del database.

  • Il runtime di integrazione self-hosted usa risorse (memoria e CPU) nel computer in cui è installato. Installare il runtime di integrazione self-hosted in un computer separato dall'istanza di SQL Server di origine. Ma i due computer dovrebbero trovarsi in prossimità. La presenza del runtime di integrazione self-hosted vicino all'origine dati riduce il tempo necessario per consentire al runtime di integrazione self-hosted di connettersi all'origine dati.

  • Usare il runtime di integrazione self-hosted solo quando si dispone dei backup del database in una condivisione di rete SMB locale. Un runtime di integrazione self-hosted non è necessario per le migrazioni di database se i backup del database di origine sono già presenti nel contenitore BLOB di archiviazione.

  • È consigliabile eseguire fino a 10 migrazioni di database simultanee per ogni runtime di integrazione self-hosted in un singolo computer. Per aumentare il numero di migrazioni di database simultanee, aumentare il numero di istanze del runtime self-hosted fino a quattro nodi o creare istanze separate del runtime di integrazione self-hosted in computer diversi.

  • Configurare il runtime di integrazione self-hosted per l'aggiornamento automatico e applicare automaticamente eventuali nuove funzionalità, correzioni di bug e miglioramenti rilasciati. Per altre informazioni, vedere Aggiornamento automatico del runtime di integrazione self-hosted.

Monitorare lo stato della migrazione del database nel portale di Azure

L'estensione Migrazione SQL di Azure per Azure Data Studio orchestra tutte le attività di migrazione tramite il Servizio Migrazione del database selezionato nella migrazione guidata durante la migrazione dei database.

Per monitorare le migrazioni di database nel portale di Azure:

  1. Nella portale di Azure cercare l'istanza di Servizio Migrazione del database usando il nome della risorsa.

    Screenshot that shows how to search for a resource name in the Azure portal.

  2. Nella panoramica dell'istanza di Servizio Migrazione del database selezionare Monitoraggio delle migrazioni per visualizzare i dettagli delle migrazioni del database.

    Screenshot that shows how to monitor migrations in the Azure portal.

Problemi noti e limitazioni

  • Servizio Migrazione del database non supporta la sovrascrittura dei database esistenti nell'istanza di destinazione di Istanza gestita di SQL di Azure, database SQL di Azure o SQL Server in Azure Macchine virtuali.

  • Servizio Migrazione del database non supporta la configurazione della disponibilità elevata e del ripristino di emergenza nella destinazione in modo che corrisponda alla topologia di origine.

  • Gli oggetti server seguenti non sono supportati:

    • SQL Server Agent - processi
    • Credenziali
    • pacchetti di SQL Server Integration Services
    • Controllo server

    Per un elenco completo di metadati e oggetti server che è necessario spostare, vedere le informazioni dettagliate disponibili in Gestire i metadati quando si rende disponibile un database in un altro server.

  • SQL Server 2008 e versioni precedenti, perché le versioni di destinazione non sono supportate per le migrazioni a SQL Server in Azure Macchine virtuali.

  • Se si usa SQL Server 2014 o SQL Server 2012, è necessario archiviare i file di backup del database di origine in un contenitore BLOB di archiviazione di Azure anziché usare l'opzione condivisione di rete. Archiviare i file di backup come BLOB di pagine. I BLOB in blocchi sono supportati solo in SQL Server 2016 e versioni successive.

  • Non è possibile usare un runtime di integrazione self-hosted esistente creato in Azure Data Factory per le migrazioni di database con Servizio Migrazione del database. Inizialmente, creare il runtime di integrazione self-hosted usando l'estensione Migrazione SQL di Azure per Azure Data Studio. È possibile riutilizzare il runtime di integrazione self-hosted nelle future migrazioni di database.

  • Azure Data Studio supporta attualmente sia microsoft Entra ID/autenticazione di Windows che account di accesso SQL per la connessione all'istanza di SQL Server di origine. Per le destinazioni SQL di Azure, sono supportati solo gli account di accesso SQL.

Prezzo

  • Servizio Migrazione del database di Azure è possibile usare gratuitamente con l'estensione Migrazione SQL di Azure per Azure Data Studio. È possibile eseguire la migrazione di più database di SQL Server usando Servizio Migrazione del database senza costi aggiuntivi.

  • Quando si esegue la migrazione dei database da un ambiente locale ad Azure, non vengono valutati costi di spostamento o ingresso dei dati. Se il database di origine viene spostato da un'altra area o da una macchina virtuale di Azure, è possibile che vengano addebitati costi di larghezza di banda a seconda del provider di larghezza di banda e dello scenario di routing.

  • Usare una macchina virtuale o un server locale per installare Azure Data Studio.

  • È necessario un runtime di integrazione self-hosted per accedere ai backup del database dalla condivisione di rete locale.

Disponibilità a livello di area

Per l'elenco delle aree di Azure che supportano le migrazioni di database usando l'estensione Migrazione SQL di Azure per Azure Data Studio (con tecnologia Servizio Migrazione del database di Azure), vedere Prodotti Azure disponibili in base all'area.

Passaggi successivi