Condividi tramite


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

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

L'estensione Azure SQL Migration per Azure Data Studio offre i vantaggi principali seguenti:

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

  • Un meccanismo di valutazione avanzato in grado di valutare SQL Server istanze. L'estensione identifica i database pronti per la migrazione alle destinazioni Azure SQL.

    Note

    È possibile usare l'estensione Migrazione Azure SQL per valutare SQL Server database 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 di SKU di dimensioni corrette in base alla destinazione Azure SQL.

  • 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 SQL Server di origine nell'ambiente locale.

  • Offre un'esperienza utente sicura e migliorata per la migrazione dei database con TDE (Transparent Data Encryption) abilitata e gli account di accesso SQL/Windows ad Azure SQL.

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

Scenario di migrazione Modalità di migrazione
da SQL Server a Istanza gestita di SQL di Azure In linea / Off-line
da SQL Server a SQL Server in una macchina virtuale di Azure In linea / Off-line
SQL Server database SQL di Azure Off-line

Importante

Se la destinazione è il database SQL di Azure, è possibile eseguire la migrazione dello schema del database e dei dati usando il Servizio Migrazione del database tramite il portale di Azure. È anche possibile usare strumenti come l'estensione SQL Server dacpac o l'estensione Progetti di 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 Azure SQL Migration per Azure Data Studio:


Architettura dell'estensione Migrazione Azure SQL per Azure Data Studio

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

Il Servizio Migrazione del database usa Azure Data Factory runtime di integrazione self-hosted 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:

Diagramma che mostra l'architettura dell'estensione Azure SQL Migration.

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

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

  2. Azure SQL di destinazione: le destinazioni Azure SQL supportate sono Istanza gestita di SQL di Azure, SQL Server in Macchine virtuali di Azure (registrate 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 Server Message Block (SMB) 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 Azure SQL 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. Il Servizio Migrazione del database è associato al runtime di integrazione self-hosted 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. Il Servizio Migrazione del database fornisce le chiavi di autenticazione e registra il runtime di integrazione self-hosted.

  7. File di backup caricati nell'account di archiviazione di Azure: il 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: Il Servizio Migrazione del database ripristina i file di backup dall'account di archiviazione di Azure all'istanza di Azure SQL di destinazione supportata.

Note

Se la destinazione della migrazione è database SQL di Azure, non sono necessari backup per questa migrazione. La migrazione del database al database SQL di Azure è considerata una migrazione logica che comporta la creazione preliminare e lo spostamento dei dati del database (eseguito dal Servizio Migrazione del database).

L'estensione Migrazione Azure SQL 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, Il Servizio Migrazione del database carica continuamente i file di origine di backup nell'account di archiviazione di Azure e li ripristina nella destinazione fino a quando non si completa il passaggio finale di taglio alla destinazione.

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

Prerequisiti

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

  • Scaricare e installare Azure Data Studio.

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

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

    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.

    • Collaboratore per l'istanza di destinazione di Azure SQL Managed Instance 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 target di Istanza Gestita di Azure SQL o il tuo account di Archiviazione di Azure.

    • Ruolo Proprietario o Collaboratore per la sottoscrizione di Azure (obbligatorio se si crea una nuova istanza del Servizio Migrazione del database).

    • Uso dell'identità gestita: Servizio Migrazione del database di Azure supporta l'identità gestita solo per le migrazioni Istanza gestita di SQL di Azure tramite il portale di Azure. Servizio Migrazione del database di Azure usa questa identità gestita per leggere i file di backup dal contenitore BLOB di archiviazione. Per assegnare le autorizzazioni o il ruolo all'identità gestita, seguire questa procedura:

      1. Identificare l'istanza di destinazione dell'identità gestita associata di Istanza gestita di SQL di Azure.

        Dopo aver avviato la migrazione all'istanza gestita di SQL di Azure usando il servizio Migrazione del database di Azure, quando si seleziona l'istanza di destinazione di Istanza gestita di SQL di Azure, viene visualizzata l'identità gestita associata. In caso contrario, è possibile passare al riquadro Istanza gestita di SQL di Azure e selezionare Identità di sicurezza>.

        • Se viene aggiunta l'identità gestita assegnata dall'utente, l'identità gestita associata usata corrisponde all'identità primaria selezionata.

        • Se è abilitata solo l'identità gestita assegnata dal sistema, l'identità gestita associata usata corrisponde a Istanza gestita di SQL di Azure.

      2. Nella portale di Azure passare all'account di archiviazione (usato per la migrazione per mantenere i file di backup), passare ai ruoli di IAM>Assegnare il ruolo e assegnare il lettore di dati del BLOB di archiviazione all'identità gestita associata.

      Per ulteriori informazioni, vedere DMS - Supporto per l'identità gestita per la migrazione dell'Istanza gestita di Azure SQL.

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

    Note

    Quando si esegue la migrazione a Azure SQL Managed Instance o Azure SQL Virtual Machine dal portale di Azure, assicurarsi che l'utente connesso disponga dell'accesso Storage Blob Data Reader al contenitore di BLOB che contiene i file di backup. Questa autorizzazione è necessaria per elencare solo cartelle e file nel contenitore BLOB durante la configurazione della migrazione tramite il portale di Azure.

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

  • Assicurarsi che gli account di accesso utilizzati per connettere l'istanza di SQL Server di origine siano membri del ruolo del server SYSADMIN o dispongano dell'autorizzazione CONTROL SERVER.

  • 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 contenente i file di backup completi del database e i file di backup del log delle transazioni successivi. Il Servizio Migrazione del database usa il percorso di backup durante la migrazione del database.

    Importante

    • Usare sempre un account di archiviazione dedicato per la migrazione. La condivisione con altri carichi di lavoro può causare conflitti e rischi per la sicurezza.
    • Al termine della migrazione, ruotare la chiave dell'account di archiviazione per proteggere i backup oppure eliminare l'account di archiviazione se non è più necessario.
    • L'estensione Migrazione Azure SQL 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 il 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 del 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 log completi e log delle transazioni in un singolo supporto di backup, non è supportata.
    • È possibile fornire backup compressi per ridurre la probabilità che si verifichino 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, fornire 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 fornisce il collegamento di download e le chiavi di autenticazione per scaricare e installare il runtime di integrazione self-hosted.

    In preparazione della migrazione, assicurarsi 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
    oppure *.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 al Servizio Migrazione del database.

    Per un data factory appena creato 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 un data factory esistente, se il nome di dominio completo non è visualizzato 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à forniti 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 Raccomandazioni per l'uso di un runtime di integrazione self-hosted.

  • Se si usa il 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.

Raccomandazioni 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 di 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 del 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 devono essere vicini. La presenza del runtime di integrazione self-hosted vicino all'origine dati riduce il tempo necessario affinché il runtime di integrazione self-hosted si connetta all'origine dati.

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

  • È consigliabile eseguire fino a 10 migrazioni simultanee del database 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 l'applicazione automatica di nuove funzionalità, correzioni di bug e miglioramenti rilasciati. Per altre informazioni, vedere l'aggiornamento automatico del runtime di integrazione self-hosted.

Monitorare lo stato di avanzamento della migrazione del database nel portale di Azure

L'estensione Azure SQL Migration 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 del database nel portale di Azure:

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

    Screenshot che mostra come cercare un nome di risorsa nel portale di Azure.

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

    Screenshot che mostra come monitorare le migrazioni nel portale di Azure.

Problemi noti e limitazioni

  • Il 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 Macchine virtuali di Azure.

  • Il 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 dei metadati e degli oggetti server che è necessario spostare, vedere le informazioni dettagliate disponibili in Gestisci metadati quando si rende disponibile un database in un altro server.

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

  • 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é usando l'opzione di 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 il Servizio Migrazione del database. Creare inizialmente il runtime di integrazione self-hosted usando l'estensione Azure SQL Migration per Azure Data Studio. È possibile riutilizzare tale runtime di integrazione self-hosted nelle future migrazioni di database.

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

Prezzi

  • Il Servizio Migrazione del database di Azure è gratuito da usare. È possibile eseguire gratuitamente la migrazione di più database SQL Server usando il Servizio Migrazione del database.

  • Quando si esegue la migrazione dei database da un ambiente locale ad Azure, non vengono valutati i costi di spostamento dei dati o di ingresso dei dati. Se il database di origine viene spostato da un'altra area o da una macchina virtuale di Azure, è possibile che vengano applicati addebiti per la 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.

  • Per accedere ai backup del database dalla condivisione di rete locale, è necessario un runtime di integrazione self-hosted.

Aree di disponibilità

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