Esercitazione: Eseguire la migrazione di SQL Server a database SQL di Azure (offline)

È possibile usare Servizio Migrazione del database di Azure tramite l'estensione Migrazione SQL di Azure per Azure Data Studio o il portale di Azure per eseguire la migrazione di database da un'istanza locale di SQL Server a database SQL di Azure (offline).

Questa esercitazione illustra come eseguire la migrazione del database di esempio AdventureWorks2019 da un'istanza locale di SQL Server a un'istanza di database SQL di Azure usando Servizio Migrazione del database. Questa esercitazione usa la modalità di migrazione offline, che considera un tempo di inattività accettabile durante il processo di migrazione.

In questa esercitazione apprenderai a:

  • Aprire la procedura guidata Eseguire la migrazione ad Azure SQL in Azure Data Studio
  • Eseguire una valutazione dei database SQL Server di origine
  • Raccogliere dati sulle prestazioni dall'istanza di SQL Server di origine
  • Ottenere una raccomandazione dello SKU database SQL di Azure che funzionerà meglio per il carico di lavoro
  • Creare un'istanza del Servizio Migrazione del database di Azure
  • Avviare la migrazione e monitorare lo stato di avanzamento fino al completamento

Suggerimento

In Servizio Migrazione del database di Azure è possibile eseguire la migrazione dei database offline o mentre sono online. In una migrazione offline , il tempo di inattività dell'applicazione inizia all'avvio della migrazione. Per limitare il tempo di inattività al tempo necessario per passare al nuovo ambiente dopo la migrazione, usare una migrazione online . È consigliabile testare una migrazione offline per determinare se il tempo di inattività è accettabile. Se il tempo di inattività previsto non è accettabile, eseguire una migrazione online.

Importante

Attualmente, le migrazioni online per database SQL di Azure destinazioni non sono disponibili.

Opzioni di migrazione

La sezione seguente descrive come usare Servizio Migrazione del database di Azure con l'estensione Migrazione SQL di Azure o nella portale di Azure.

Prerequisiti

Prima di iniziare l'esercitazione:

  • 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 database SQL di Azure
    • Ruolo lettore per il gruppo di risorse di Azure che contiene l'istanza di destinazione di database SQL di Azure
    • Ruolo Proprietario o Collaboratore per la sottoscrizione di Azure (obbligatorio se si crea una nuova istanza di Servizio Migrazione del database di Azure)

    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 database SQL di Azure.

  • Assicurarsi che l'account di accesso di SQL Server che si connette all'istanza di SQL Server di origine sia membro del ruolo db_datareader e che l'account di accesso per l'istanza di SQL Server di destinazione sia membro del ruolo db_owner.

  • Per eseguire la migrazione dello schema del database dall'origine al database SQL di Azure di destinazione usando il Servizio Migrazione del database, la versione MINIMA supportata richiesta è 5.37 o successiva.

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

Nota

È ora possibile eseguire la migrazione dello schema e dei dati del database usando Servizio Migrazione del database. È anche possibile usare strumenti come l'estensione dacpac di SQL Server o l'estensione progetti database SQL in Azure Data Studio per eseguire la migrazione dello schema prima di selezionare l'elenco di tabelle di cui eseguire la migrazione.

Se non esiste alcuna tabella nella destinazione database SQL di Azure o non sono selezionate tabelle prima di avviare la migrazione, il pulsante Avanti non è disponibile per selezionare per avviare l'attività di migrazione. Se non esiste alcuna tabella nella destinazione, è necessario selezionare l'opzione Migrazione dello schema per procedere.

Aprire la procedura guidata Eseguire la migrazione ad Azure SQL in Azure Data Studio

Per aprire la procedura guidata Esegui la migrazione ad Azure SQL:

  1. In Azure Data Studio passare a Connessione ions. Selezionare e connettersi all'istanza locale di SQL Server. È anche possibile connettersi a SQL Server in una macchina virtuale di Azure.

  2. Fare clic con il pulsante destro del mouse sulla connessione al server e scegliere Gestisci.

    Screenshot that shows a server connection and the Manage option in Azure Data Studio.

  3. Nel menu del server in Generale selezionare Migrazione SQL di Azure.

    Screenshot that shows the Azure Data Studio server menu.

  4. Nel dashboard di Migrazione SQL di Azure selezionare Migrate to Azure SQL (Eseguire la migrazione a SQL di Azure) per aprire la migrazione guidata.

    Screenshot that shows the Migrate to Azure SQL wizard.

  5. Nella prima pagina della procedura guidata avviare una nuova sessione o riprendere una sessione salvata in precedenza.

Eseguire la valutazione del database, raccogliere dati sulle prestazioni e ottenere raccomandazioni di Azure

  1. Nel passaggio 1: Database per la valutazione nella procedura guidata Eseguire la migrazione a SQL di Azure selezionare i database da valutare. Quindi seleziona Avanti.

    Screenshot that shows selecting a database for assessment.

  2. Nel passaggio 2: Risultati e raccomandazioni della valutazione completare i passaggi seguenti:

    1. In Scegliere la destinazione SQL di Azure selezionare database SQL di Azure.

      Screenshot that shows selecting the Azure SQL Database target.

    2. Selezionare Visualizza/Seleziona per visualizzare i risultati della valutazione.

      Screenshot that shows view/select assessment results.

    3. Nei risultati della valutazione selezionare il database e quindi esaminare il report di valutazione per assicurarsi che non siano stati trovati problemi.

      Screenshot that shows the assessment report.

    4. Selezionare Ottieni raccomandazione di Azure per aprire il riquadro raccomandazioni.

      Screenshot that shows Azure recommendations.

    5. Selezionare Raccogli dati sulle prestazioni. Selezionare una cartella nel computer locale per archiviare i log delle prestazioni e quindi selezionare Avvia.

      Screenshot that shows performance data collection.

      Azure Data Studio raccoglie i dati sulle prestazioni fino a quando non si arresta la raccolta dati o si chiude Azure Data Studio.

      Dopo 10 minuti, Azure Data Studio indica che è disponibile una raccomandazione per database SQL di Azure. Dopo aver generato la prima raccomandazione, è possibile selezionare Riavvia raccolta dati per continuare il processo di raccolta dati e perfezionare la raccomandazione sku. Una valutazione estesa è particolarmente utile se i modelli di utilizzo variano nel tempo.

      Screenshot that shows performance data collected.

    6. Nella destinazione selezionata database SQL di Azure selezionare Visualizza dettagli per aprire il report dettagliato sulle raccomandazioni sku:

      Screenshot that shows the View details link for the target database recommendations.

    7. In Rivedi database SQL di Azure Consigli esaminare la raccomandazione. Per salvare una copia della raccomandazione, selezionare Salva report di raccomandazione.

      Screenshot that shows SKU recommendation details.

  3. Selezionare Chiudi per chiudere il riquadro raccomandazioni.

  4. Selezionare Avanti per continuare la migrazione del database nella procedura guidata.

Configurare le impostazioni di migrazione

  1. Nel passaggio 3: Destinazione SQL di Azure nella procedura guidata Eseguire la migrazione a SQL di Azure completare questi passaggi per l'istanza di database SQL di Azure di destinazione:

    1. Selezionare l'account Azure, la sottoscrizione di Azure, l'area o la località di Azure e il gruppo di risorse che contiene la distribuzione database SQL di Azure.

      Screenshot that shows Azure account details.

    2. Per database SQL di Azure Server selezionare il server database SQL di Azure di destinazione (server logico). Immettere un nome utente e una password per la distribuzione del database di destinazione. Selezionare Connect (Connetti). Immettere le credenziali per verificare la connettività al database di destinazione.

      Screenshot that shows Azure SQL Database details.

    3. Eseguire quindi il mapping del database di origine e del database di destinazione per la migrazione. In Database di destinazione selezionare la destinazione database SQL di Azure. Selezionare quindi Avanti per passare al passaggio successivo della migrazione guidata.

      Screenshot that shows source and target mapping.

  2. In Passaggio 4: Modalità migrazione selezionare Migrazione offline e quindi selezionare Avanti.

    Screenshot that shows offline migrations selection.

  3. Nel passaggio 5: Configurazione dell'origine dati completare i passaggi seguenti:

    1. In Credenziali di origine immettere le credenziali di SQL Server di origine.

    2. In Seleziona tabelle selezionare l'icona a forma di matita Modifica .

      Screenshot that shows source SQL Server credentials.

    3. In Selezionare tabelle per <database-name> selezionare le tabelle di cui eseguire la migrazione alla destinazione. La colonna Contiene righe indica se la tabella di destinazione contiene righe nel database di destinazione. È possibile selezionare uno o più tabelle. Selezionare Aggiorna.

      È possibile aggiornare l'elenco delle tabelle selezionate in qualsiasi momento prima di avviare la migrazione.

      Nell'esempio seguente viene applicato un filtro di testo per selezionare le tabelle che contengono la parola Employee. Selezionare un elenco di tabelle in base alle esigenze di migrazione.

      Screenshot that shows the table selection.

  4. Esaminare le selezioni della tabella e quindi selezionare Avanti per passare al passaggio successivo della migrazione guidata.

    Screenshot that shows selected tables to migrate.

Nota

Se non sono selezionate tabelle o se non viene immesso un nome utente e una password, il pulsante Avanti non è disponibile per la selezione.

È ora possibile eseguire la migrazione dello schema e dei dati del database usando Servizio Migrazione del database. È anche possibile usare strumenti come l'estensione dacpac di SQL Server o l'estensione progetti database SQL in Azure Data Studio per eseguire la migrazione dello schema prima di selezionare l'elenco di tabelle di cui eseguire la migrazione.

Creare un'istanza di Servizio Migrazione del database

Nel passaggio 6: Servizio Migrazione del database di Azure nella procedura guidata Eseguire la migrazione a SQL di Azure, creare una nuova istanza di Servizio Migrazione del database o riutilizzare un'istanza esistente creata in precedenza.

Nota

Se in precedenza è stata creata un'istanza di Servizio Migrazione del database usando il portale di Azure, non è possibile riutilizzare l'istanza nella migrazione guidata in Azure Data Studio. È possibile riutilizzare un'istanza solo se è stata creata l'istanza usando Azure Data Studio.

Usare un'istanza esistente di Servizio Migrazione del database

Per usare un'istanza esistente di Servizio Migrazione del database:

  1. In Gruppo di risorse selezionare il gruppo di risorse che contiene un'istanza esistente di Servizio Migrazione del database.

  2. In Servizio Migrazione del database di Azure selezionare un'istanza esistente di Servizio Migrazione del database nel gruppo di risorse selezionato.

  3. Seleziona Avanti.

    Screenshot that shows Database Migration Service selection.

Creare una nuova istanza di Servizio Migrazione del database

Per creare una nuova istanza di Servizio Migrazione del database:

  1. In Gruppo di risorse creare un nuovo gruppo di risorse per contenere una nuova istanza di Servizio Migrazione del database.

  2. In Servizio Migrazione del database di Azure selezionare Crea nuovo.

  3. In Crea Servizio Migrazione del database di Azure immettere un nome per l'istanza di Servizio Migrazione del database e quindi selezionare Crea.

  4. In Configura runtime di integrazione completare la procedura seguente:

    1. Selezionare il collegamento Download and install integration runtime (Scarica e installa runtime di integrazione) per aprire il collegamento di download in un Web browser. Scaricare il runtime di integrazione e quindi installarlo in un computer che soddisfi i prerequisiti per la connessione all'istanza di SQL Server di origine.

      Screenshot that shows the Download and install integration runtime link.

      Al termine dell'installazione, Viene aperto automaticamente Microsoft Integration Runtime Configuration Manager per avviare il processo di registrazione.

    2. Nella tabella Chiave di autenticazione copiare una delle chiavi di autenticazione fornite nella procedura guidata e incollarla in Azure Data Studio.

      Screenshot that highlights the authentication key table in the wizard.

      Se la chiave di autenticazione è valida, viene visualizzata un'icona di spunta verde in Integration Runtime Configuration Manager. Un segno di spunta verde indica che è possibile continuare a Registrare.

      Dopo aver registrato il runtime di integrazione self-hosted, chiudere Microsoft Integration Runtime Configuration Manager.

      Nota

      Per altre informazioni sul runtime di integrazione self-hosted, vedere Creare e configurare un runtime di integrazione self-hosted.

  5. In Crea Servizio Migrazione del database di Azure in Azure Data Studio selezionare Test connessione per verificare che l'istanza di Servizio Migrazione del database appena creata sia connessa al runtime di integrazione self-hosted appena registrato.

    Screenshot that shows IR connectivity test.

  6. Tornare alla migrazione guidata in Azure Data Studio.

Avviare la migrazione del database

Nel passaggio 7: Riepilogo della procedura guidata Esegui migrazione a SQL di Azure esaminare la configurazione creata e quindi selezionare Avvia migrazione per avviare la migrazione del database.

Screenshot that shows how to start migration.

Monitorare la migrazione del database

  1. In Azure Data Studio, nel menu del server in Generale, selezionare Migrazione SQL di Azure per passare al dashboard per le migrazioni database SQL di Azure.

    In Stato migrazione del database è possibile tenere traccia delle migrazioni in corso, completate e non riuscite (se presenti) oppure visualizzare tutte le migrazioni di database.

    Screenshot that shows monitor migration dashboard.

  2. Selezionare Migrazioni di database in corso per visualizzare le migrazioni attive.

    Per ottenere altre informazioni su una migrazione specifica, selezionare il nome del database.

    Screenshot that shows database migration details.

    Servizio Migrazione del database restituisce lo stato di migrazione noto più recente ogni volta che lo stato della migrazione viene aggiornato. La tabella seguente descrive i possibili stati:

    Stato Descrizione
    Preparazione per la copia Il servizio disabilita gli stati automatici, i trigger e gli indici nella tabella di destinazione.
    Copia I dati verranno copiati dal database di origine al database di destinazione.
    Copia completata La copia dei dati è stata completata. Il servizio è in attesa di altre tabelle per completare la copia per iniziare i passaggi finali per restituire le tabelle allo schema originale.
    Ricostruzione degli indici Il servizio sta ricompilando gli indici nelle tabelle di destinazione.
    Riuscito Tutti i dati vengono copiati e gli indici vengono ricompilati.
  3. Controllare la pagina dei dettagli della migrazione per visualizzare lo stato corrente per ogni database.

    Di seguito è riportato un esempio della migrazione del AdventureWorks2019 database con lo stato Creazione:

    Screenshot that shows a creating migration status.

  4. Nella barra dei menu selezionare Aggiorna per aggiornare lo stato della migrazione.

    Dopo l'aggiornamento dello stato della migrazione, lo stato aggiornato per la migrazione del database di esempio AdventureWorks2019 è In corso:

    Screenshot that shows a migration in progress status.

  5. Selezionare un nome di database per aprire la vista tabella. In questa vista viene visualizzato lo stato corrente della migrazione, il numero di tabelle attualmente in tale stato e lo stato dettagliato di ogni tabella.

    Screenshot that shows monitoring table migration.

    Quando viene eseguita la migrazione di tutti i dati della tabella alla destinazione database SQL di Azure, Servizio Migrazione del database aggiorna lo stato della migrazione da In corso a Operazione completata.

    Screenshot that shows succeeded migration.

Nota

Servizio Migrazione del database ottimizza la migrazione ignorando le tabelle senza dati (0 righe). Le tabelle che non contengono dati non vengono visualizzate nell'elenco, anche se si selezionano le tabelle quando si crea la migrazione.

La migrazione a database SQL di Azure è stata completata. È consigliabile eseguire una serie di attività post-migrazione per garantire che tutto funzioni in modo uniforme ed efficiente.

Importante

Assicurarsi di sfruttare le funzionalità avanzate basate sul cloud di database SQL di Azure. Le funzionalità includono disponibilità elevata predefinita, rilevamento delle minacce e monitoraggio e ottimizzazione del carico di lavoro.

Limiti

database SQL di Azure migrazione offline usa pipeline di Azure Data Factory (ADF) per lo spostamento dei dati e pertanto rispetta le limitazioni di Azure Data Factory. Quando viene creato anche un servizio di migrazione del database, viene creato un ADF corrispondente. Di conseguenza, i limiti di factory si applicano per servizio.

  • Il computer in cui è installato shir funge da calcolo per la migrazione. Assicurarsi che questo computer possa gestire il carico di cpu e memoria della copia dei dati. Per altre informazioni, vedere Consigli di SHIR.
  • 100.000 tabelle per limite di database.
  • 10.000 migrazioni simultanee di database per servizio.
  • La velocità di migrazione dipende in larga parte dall'SKU del database SQL di Azure di destinazione e dall'host del runtime di integrazione self-hosted.
  • database SQL di Azure la migrazione si ridimensiona in modo non appropriato con i numeri di tabella a causa del sovraccarico di Azure Data Factory nelle attività iniziali. Se un database ha migliaia di tabelle, il processo di avvio di ogni tabella potrebbe richiedere un paio di secondi, anche se sono composti da una riga con 1 bit di dati.
  • database SQL di Azure nomi di tabella con caratteri a byte doppio non sono attualmente supportati per la migrazione. La mitigazione consiste nel rinominare le tabelle prima della migrazione; possono essere nuovamente modificati con i nomi originali dopo la corretta migrazione.
  • Le tabelle con colonne BLOB di grandi dimensioni potrebbero non riuscire nella migrazione a causa del timeout.
  • I nomi di database con riserva di SQL Server non sono attualmente supportati.
  • I nomi di database che includono punti e virgola non sono attualmente supportati.
  • Le colonne calcolate non vengono migrate.

Passaggi successivi