Esercitazione: Eseguire la migrazione offline di SQL Server a un'istanza gestita di database SQL di Azure con Servizio Migrazione del database di AzureTutorial: Migrate SQL Server to an Azure SQL Database managed instance offline using DMS

È possibile usare Servizio Migrazione del database di Azure per eseguire la migrazione dei database da un'istanza locale di SQL Server a un'istanza gestita di database SQL di Azure.You can use the Azure Database Migration Service to migrate the databases from an on-premises SQL Server instance to an Azure SQL Database managed instance. Per altri metodi che potrebbero richiedere intervento manuale, vedere l'articolo Migrazione di un'istanza di SQL Server a un'istanza gestita di database SQL di Azure.For additional methods that may require some manual effort, see the article SQL Server instance migration to Azure SQL Database managed instance.

In questa esercitazione si esegue la migrazione del database AdventureWorks2012 da un'istanza locale di SQL Server a un'istanza gestita di database SQL di Azure usando Servizio Migrazione del database di Azure.In this tutorial, you migrate the Adventureworks2012 database from an on-premises instance of SQL Server to an Azure SQL Database managed instance by using the Azure Database Migration Service.

In questa esercitazione si apprenderà come:In this tutorial, you learn how to:

  • Creare un'istanza del Servizio Migrazione del database di Azure.Create an instance of the Azure Database Migration Service.
  • Creare un progetto di migrazione tramite il Servizio Migrazione del database di Azure.Create a migration project by using the Azure Database Migration Service.
  • Eseguire la migrazione.Run the migration.
  • Monitorare la migrazione.Monitor the migration.
  • Scaricare un report di migrazione.Download a migration report.

Suggerimento

Quando si esegue la migrazione di database in Azure con il Servizio Migrazione del database, è possibile eseguire una migrazione offline oppure online.When you migrate databases to Azure by using Azure Database Migration Service, you can do an offline or an online migration. Con una migrazione offline, i tempi di inattività dell'applicazione partono dall'inizio della migrazione.With an offline migration, application downtime starts when the migration starts. Con una migrazione online, il tempo di inattività è limitato al tempo di trasferimento al termine della migrazione.With an online migration, downtime is limited to the time to cut over at the end of migration. È consigliabile testare una migrazione offline per determinare se il tempo di inattività è accettabile. In caso contrario, eseguire una migrazione online.We suggest that you test an offline migration to determine whether the downtime is acceptable; if not, do an online migration.

Questo articolo descrive una migrazione offline da SQL Server a un'istanza gestita di database SQL di Azure.This article describes an offline migration from SQL Server to an Azure SQL Database managed instance. Per una migrazione online, vedere Eseguire la migrazione online di SQL Server a un'istanza gestita di database SQL di Azure con Servizio Migrazione del database.For an online migration, see Migrate SQL Server to an Azure SQL Database managed instance online using DMS.

PrerequisitiPrerequisites

Per completare questa esercitazione, è necessario:To complete this tutorial, you need to:

  • Creare una rete virtuale di Azure per Servizio Migrazione del database di Azure usando il modello di distribuzione Azure Resource Manager, che offre la connettività da sito a sito per i server di origine locali con ExpressRoute o VPN.Create an Azure Virtual Network (VNet) for the Azure Database Migration Service by using the Azure Resource Manager deployment model, which provides site-to-site connectivity to your on-premises source servers by using either ExpressRoute or VPN. Acquisire familiarità con le topologie di rete per le migrazioni a istanze gestite di database SQL di Azure con Servizio Migrazione del database di Azure.Learn network topologies for Azure SQL Database managed instance migrations using the Azure Database Migration Service. Per altre informazioni sulla creazione di una rete virtuale, vedere Documentazione sulla rete virtuale, in particolare gli articoli di avvio rapido con istruzioni dettagliate.For more information about creating a VNet, see the Virtual Network Documentation, and especially the quickstart articles with step-by-step details.

    Nota

    Durante la configurazione della rete virtuale, se si usa ExpressRoute con peering di rete per Microsoft, aggiungere gli endpoint di servizio seguenti alla subnet in cui verrà effettuato il provisioning del servizio:During VNet setup, if you use ExpressRoute with network peering to Microsoft, add the following service endpoints to the subnet in which the service will be provisioned:

    • Endpoint del database di destinazione (ad esempio endpoint SQL, endpoint Cosmos DB e così via)Target database endpoint (for example, SQL endpoint, Cosmos DB endpoint, and so on)
    • Endpoint di archiviazioneStorage endpoint
    • Endpoint bus di servizioService bus endpoint

    Questa configurazione è necessaria perché Servizio Migrazione del database di Azure non dispone di connettività Internet.This configuration is necessary because the Azure Database Migration Service lacks internet connectivity.

  • Verificare che le regole del gruppo di sicurezza di rete per la rete virtuale non blocchino le porte di comunicazione in ingresso nel Servizio Migrazione del database di Azure: 443, 53, 9354, 445, 12000.Ensure that your VNet Network Security Group rules don't block the following inbound communication ports to Azure Database Migration Service: 443, 53, 9354, 445, 12000. Per informazioni dettagliate sui filtri del traffico dei gruppi di sicurezza di rete relativi alla rete virtuale di Azure, vedere l'articolo Filtrare il traffico di rete con gruppi di sicurezza di rete.For more detail on Azure VNet NSG traffic filtering, see the article Filter network traffic with network security groups.

  • Configurare Windows Firewall per l'accesso al motore del database di origine.Configure your Windows Firewall for source database engine access.

  • Aprire Windows Firewall per consentire al Servizio Migrazione del database di Azure di accedere a SQL Server di origine, che per impostazione predefinita è la porta TCP 1433.Open your Windows Firewall to allow the Azure Database Migration Service to access the source SQL Server, which by default is TCP port 1433.

  • Se si eseguono più istanze di SQL Server denominate usando le porte dinamiche, è consigliabile abilitare il Servizio browser SQL e consentire l'accesso alla porta UDP 1434 attraverso i firewall, in modo che il Servizio Migrazione del database di Azure possa connettersi a un'istanza denominata nel server di origine.If you're running multiple named SQL Server instances using dynamic ports, you may wish to enable the SQL Browser Service and allow access to UDP port 1434 through your firewalls so that the Azure Database Migration Service can connect to a named instance on your source server.

  • Se si usa un'appliance firewall all'ingresso dei database di origine, può essere necessario aggiungere regole del firewall per consentire al servizio Migrazione del database di Azure di accedere ai database di origine per la migrazione e ai file attraverso la porta SMB 445.If you're using a firewall appliance in front of your source databases, you may need to add firewall rules to allow the Azure Database Migration Service to access the source database(s) for migration, as well as files via SMB port 445.

  • Creare un'istanza gestita di database SQL di Azure seguendo le istruzioni dettagliate riportate nell'articolo Creare un'istanza gestita di database SQL di Azure nel portale di Azure.Create an Azure SQL Database managed instance by following the detail in the article Create an Azure SQL Database managed instance in the Azure portal.

  • Verificare che gli account di accesso usati per la connessione all'istanza di SQL Server di origine e all'istanza gestita di destinazione siano membri del ruolo del server sysadmin.Ensure that the logins used to connect the source SQL Server and target managed instance are members of the sysadmin server role.

  • Creare una condivisione di rete che può essere usata dal servizio Migrazione del database di Azure per il backup del database di origine.Create a network share that the Azure Database Migration Service can use to back up the source database.

  • Verificare che l'account del servizio che esegue l'istanza di SQL Server abbia privilegi di scrittura sulla condivisione di rete creata e che l'account computer del server di origine abbia accesso in lettura/scrittura alla stessa condivisione.Ensure that the service account running the source SQL Server instance has write privileges on the network share that you created and that the computer account for the source server has read/write access to the same share.

  • Prendere nota di un utente (e una password) di Windows con privilegi di controllo completo sulla condivisione di rete creata in precedenza.Make a note of a Windows user (and password) that has full control privilege on the network share that you previously created. Il Servizio Migrazione del database di Azure rappresenta le credenziali dell'utente necessarie per caricare i file di backup nel contenitore di archiviazione di Azure per l'operazione di ripristino.The Azure Database Migration Service impersonates the user credential to upload the backup files to Azure storage container for restore operation.

  • Creare un contenitore BLOB e recuperare il relativo URI di firma di accesso condiviso seguendo i passaggi descritti nell'articolo Gestire le risorse dell'archivio BLOB di Azure con Storage Explorer. Assicurarsi di selezionare tutte le autorizzazioni (lettura, scrittura, eliminazione, elenco) nella finestra dei criteri durante la creazione dell'URI di firma di accesso condiviso.Create a blob container and retrieve its SAS URI by using the steps in the article Manage Azure Blob Storage resources with Storage Explorer, be sure to select all permissions (Read, Write, Delete, List) on the policy window while creating the SAS URI. Questo dettaglio consente a Servizio Migrazione del database di Azure di accedere al contenitore dell'account di archiviazione per caricare i file di backup usati per la migrazione dei database all'istanza gestita di database SQL di Azure.This detail provides the Azure Database Migration Service with access to your storage account container for uploading the backup files used for migrating databases to Azure SQL Database managed instance.

Registrare il provider di risorse Microsoft.DataMigrationRegister the Microsoft.DataMigration resource provider

  1. Accedere al portale di Azure, selezionare Tutti i servizi, quindi selezionare Sottoscrizioni.Sign in to the Azure portal, select All services, and then select Subscriptions.

    Mostra le sottoscrizioni del portale

  2. Selezionare la sottoscrizione in cui si desidera creare l'istanza del Servizio Migrazione del database di Azure e quindi selezionare Provider di risorse.Select the subscription in which you want to create the instance of the Azure Database Migration Service, and then select Resource providers.

    Visualizzare i provider di risorse

  3. Ricercare la migrazione e quindi a destra del Microsoft.DataMigration selezionare Registro.Search for migration, and then to the right of Microsoft.DataMigration, select Register.

    Registrare il provider di risorse

Creare un'istanza del Servizio Migrazione del database di AzureCreate an Azure Database Migration Service instance

  1. Nel portale di Azure selezionare + Crea una risorsa, cercare Servizio Migrazione del database di Azure e quindi selezionare Servizio Migrazione del database di Azure dall'elenco a discesa.In the Azure portal, select + Create a resource, search for Azure Database Migration Service, and then select Azure Database Migration Service from the drop-down list.

    Azure Marketplace

  2. Nella schermata Servizio Migrazione del database di Azure selezionare Crea.On the Azure Database Migration Service screen, select Create.

    Creare l'istanza del Servizio Migrazione del database di Azure

  3. Nella schermata Crea servizio Migrazione specificare un nome per il servizio, la sottoscrizione e un gruppo di risorse nuovo o esistente.On the Create Migration Service screen, specify a name for the service, the subscription, and a new or existing resource group.

  4. Selezionare la posizione in cui creare l'istanza del Servizio Migrazione del database di Azure.Select the location in which you want to create the instance of DMS.

  5. Selezionare una rete virtuale esistente o crearne una.Select an existing VNet or create one.

    La rete virtuale consente a Servizio Migrazione del database di Azure di accedere all'istanza di SQL Server di origine e all'istanza gestita di database SQL di Azure di destinazione.The VNet provides the Azure Database Migration Service with access to the source SQL Server and target Azure SQL Database managed instance.

    Per altre informazioni su come creare una VNet nel portale di Azure, vedere l'articolo Creare una rete virtuale usando il portale di Azure.For more information on how to create a VNet in Azure portal, see the article Create a virtual network using the Azure portal.

    Per altri dettagli, vedere l'articolo relativo alle topologie di rete per le migrazioni a istanze gestite di database SQL di Azure con Servizio Migrazione del database di Azure.For additional detail, see the article Network topologies for Azure SQL DB managed instance migrations using the Azure Database Migration Service.

  6. Selezione di un piano tariffario.Select a pricing tier.

    Per altre informazioni sui costi e i piani tariffari, vedere la pagina relativa ai prezzi.For more information on costs and pricing tiers, see the pricing page.

    Creare il Servizio Migrazione del database di Azure

  7. Selezionare Crea per creare il servizio.Select Create to create the service.

Creare un progetto di migrazioneCreate a migration project

Dopo aver creato un'istanza del servizio, individuarlo nel portale di Azure, aprirlo e creare un nuovo progetto di migrazione.After an instance of the service is created, locate it within the Azure portal, open it, and then create a new migration project.

  1. Nel portale di Azure selezionare Tutti i servizi, eseguire la ricerca di Servizio Migrazione del database di Azure e quindi selezionare Servizio Migrazione del database di Azure.In the Azure portal, select All services, search for Azure Database Migration Service, and then select Azure Database Migration Services.

    Individuare tutte le istanze del Servizio Migrazione del database di Azure

  2. Nella schermata Servizio Migrazione del database di Azure cercare il nome dell'istanza creata e quindi selezionarla.On the Azure Database Migration Service screen, search for the name of the instance that you created, and then select the instance.

  3. Selezionare + Nuovo progetto di migrazione.Select + New Migration Project.

  4. Nella schermata Nuovo progetto di migrazione specificare un nome per il progetto e quindi selezionare SQL Server nella casella di testo Tipo del server di origine, Istanza gestita di database SQL di Azure nella casella di testo Tipo del server di destinazione e Migrazione dei dati offline per Scegli il tipo di attività.On the New migration project screen, specify a name for the project, in the Source server type text box, select SQL Server, in the Target server type text box, select Azure SQL Database Managed Instance, and then for Choose type of activity, select Offline data migration.

    Creare il progetto del Servizio Migrazione del database di Azure

  5. Selezionare Crea per creare il progetto.Select Create to create the project.

Specificare le informazioni di origineSpecify source details

  1. Nella schermata Dettagli origine della migrazione specificare i dettagli di connessione per l'istanza di SQL Server di origine.On the Migration source detail screen, specify the connection details for the source SQL Server.

  2. Se nel server non è installato un certificato attendibile, selezionare la casella di controllo Considera attendibile certificato server.If you haven't installed a trusted certificate on your server, select the Trust server certificate check box.

    Quando non è installato un certificato attendibile, SQL Server genera un certificato autofirmato all'avvio dell'istanza.When a trusted certificate isn't installed, SQL Server generates a self-signed certificate when the instance is started. Questo certificato viene usato per crittografare le credenziali per le connessioni client.This certificate is used to encrypt the credentials for client connections.

    Attenzione

    Le connessioni SSL crittografate con un certificato autofirmato non forniscono una sicurezza avanzata.SSL connections that are encrypted using a self-signed certificate does not provide strong security. Sono infatti suscettibili ad attacchi man-in-the-middle.They are susceptible to man-in-the-middle attacks. È consigliabile non usare SSL con i certificati autofirmati in un ambiente di produzione o in server connessi a Internet.You should not rely on SSL using self-signed certificates in a production environment or on servers that are connected to the internet.

    Dettagli origine

  3. Selezionare Salva.Select Save.

  4. Nella schermata Seleziona database di origine selezionare il database AdventureWorks2012 per la migrazione.On the Select source databases screen, select the Adventureworks2012 database for migration.

    Selezionare i database di origine

    Importante

    Se si usa SQL Server Integration Services (SSIS), Servizio Migrazione del database non supporta attualmente la migrazione del database di catalogo per i progetti/pacchetti SSIS (SSISDB) da SQL Server a un'istanza gestita di database SQL di Azure.If you use SQL Server Integration Services (SSIS), DMS does not currently support migrating the catalog database for your SSIS projects/packages (SSISDB) from SQL Server to Azure SQL Database managed instance. È tuttavia possibile effettuare il provisioning di SSIS in Azure Data Factory (ADF) e ridistribuire i progetti/pacchetti SSIS nel database SSISDB di destinazione ospitato dall'istanza gestita di database SQL di Azure.However, you can provision SSIS in Azure Data Factory (ADF) and redeploy your SSIS projects/packages to the destination SSISDB hosted by Azure SQL Database managed instance. Per altre informazioni sulla migrazione dei pacchetti SSIS, vedere l'articolo Eseguire la migrazione di pacchetti SQL Server Integration Services in Azure.For more information about migrating SSIS packages, see the article Migrate SQL Server Integration Services packages to Azure.

  5. Selezionare Salva.Select Save.

Specificare i dettagli della destinazioneSpecify target details

  1. Nella schermata Dettagli destinazione della migrazione specificare i dettagli di connessione per la destinazione, che è l'istanza gestita di database SQL di Azure di cui è già stato effettuato il provisioning e verso cui si esegue la migrazione del database AdventureWorks2012.On the Migration target details screen, specify the connection details for the target, which is the pre-provisioned Azure SQL Database managed instance to which you're migrating the AdventureWorks2012 database.

    Se non si è ancora effettuato il provisioning dell'istanza gestita di database SQL di Azure, selezionare il collegamento a tale scopo.If you haven't already provisioned the Azure SQL Database managed instance, select the link to help you provision the instance. È comunque possibile procedere con la creazione del progetto e quindi, quando l'istanza gestita di database SQL di Azure è pronta, tornare a questo progetto specifico per eseguire la migrazione.You can still continue with project creation and then, when the Azure SQL Database managed instance is ready, return to this specific project to execute the migration.

    Selezionare la destinazione

  2. Selezionare Salva.Select Save.

Selezionare i database di origineSelect source databases

  1. Nella schermata Seleziona database di origine selezionare il database di origine di cui eseguire la migrazione.On the Select source databases screen, select the source database that you want to migrate.

    Selezionare i database di origine

  2. Selezionare Salva.Select Save.

Seleziona account di accessoSelect logins

  1. Nella schermata Seleziona account di accesso selezionare gli account di accesso di cui eseguire la migrazione.On the Select logins screen, select the logins that you want to migrate.

    Nota

    Questa versione supporta solo la migrazione degli account di accesso SQL.This release only supports migrating the SQL logins.

    Seleziona account di accesso

  2. Selezionare Salva.Select Save.

Configurare le impostazioni di migrazioneConfigure migration settings

  1. Nella schermata Configura le impostazioni di migrazione specificare i dettagli seguenti:On the Configure migration settings screen, provide the following detail:

    Scegliere l'opzione di backup di origineChoose source backup option Scegliere l'opzione Verranno forniti i file di backup più recenti quando sono già disponibili file di backup completo che possono essere usati da Servizio Migrazione del database per la migrazione del database.Choose the option I will provide latest backup files when you already have full backup files available for DMS to use for database migration. Scegliere l'opzione Consentire al Servizio Migrazione del database di Azure di creare i file di backup per fare in modo che il Servizio Migrazione del database salvi prima il backup completo del database di origine e lo usi per la migrazione.Choose the option I will let Azure Database Migration Service create backup files when you want DMS to take the source database full backup at first and use it for migration.
    Condivisione del percorso di reteNetwork location share Condivisione di rete SMB locale dove il Servizio Migrazione del database di Azure può salvare i backup del database di origine.The local SMB network share that the Azure Database Migration Service can take the source database backups to. L'account del servizio che esegue l'istanza di SQL Server di origine deve disporre dei privilegi di scrittura in questa condivisione di rete.The service account running source SQL Server instance must have write privileges on this network share. Specificare l'FQDN o l'indirizzo IP del server nella condivisione di rete, ad esempio '\\nomeserver.nomedominio.com\cartellabackup' o '\\indirizzoIP\cartellabackup'.Provide an FQDN or IP addresses of the server in the network share, for example, '\\servername.domainname.com\backupfolder' or '\\IP address\backupfolder'.
    Nome utenteUser name Verificare che l'utente di Windows abbia i privilegi di controllo completo sulla condivisione di rete fornita in precedenza.Make sure that the Windows user has full control privilege on the network share that you provided above. Il Servizio Migrazione del database di Azure rappresenterà le credenziali utente necessarie per caricare i file di backup nel contenitore di archiviazione di Azure per l'operazione di ripristino.The Azure Database Migration Service will impersonate the user credential to upload the backup files to Azure storage container for restore operation. Se vengono selezionati per la migrazione database abilitati per TDE, l'utente di Windows precedente deve essere l'account predefinito Administrator e Controllo dell'account utente deve essere disabilitato per consentire al Servizio Migrazione del database di Azure di caricare ed eliminare i file dei certificati.If TDE-enabled databases are selected for migration, the above windows user must be the built-in administrator account and User Account Control must be disabled for Azure Database Migration Service to upload and delete the certificates files.)
    PasswordPassword Password per l'utente.Password for the user.
    Impostazioni account di archiviazioneStorage account settings URI di firma di accesso condiviso che consente a Servizio Migrazione del database di Azure di accedere al contenitore dell'account di archiviazione in cui il servizio carica i file di backup e che viene usato per la migrazione dei database all'istanza gestita di database SQL di Azure.The SAS URI that provides the Azure Database Migration Service with access to your storage account container to which the service uploads the back-up files and that is used for migrating databases to Azure SQL Database managed instance. Informazioni su come ottenere l'URI di firma di accesso condiviso per un contenitore BLOB.Learn how to get the SAS URI for blob container.
    Impostazioni TDETDE Settings Se si esegue la migrazione dei database di origine con la funzionalità Transparent Data Encryption (TDE) abilitata, è necessario avere privilegi di scrittura per l'istanza gestita di database SQL di Azure di destinazione.If you're migrating the source databases with Transparent Data Encryption (TDE) enabled, you need to have write privileges on the target Azure SQL Database managed instance. Selezionare dal menu a discesa la sottoscrizione in cui è stato effettuato il provisioning dell'istanza gestita di database SQL di Azure.Select the subscription in which the Azure SQL Database managed instance provisioned from the drop-down menu. Selezionare l'istanza gestita di database SQL di Azure di destinazione nel menu a discesa.Select the target Azure SQL Database Managed Instance in the drop-down menu.

    Configurare le impostazioni di migrazione

  2. Selezionare Salva.Select Save.

Esaminare il riepilogo della migrazioneReview the migration summary

  1. Nella schermata Riepilogo migrazione specificare un nome per l'attività di migrazione nella casella di testo Nome attività.On the Migration summary screen, in the Activity name text box, specify a name for the migration activity.

  2. Espandere la sezione Opzione di convalida per visualizzare la schermata Scegli l'opzione di convalida, specificare se si vuole convalidare la correttezza delle query nel database di cui è stata eseguita la migrazione e quindi scegliere Salva.Expand the Validation option section to display the Choose validation option screen, specify whether to validate the migrated database for query correctness, and then select Save.

  3. Esaminare e verificare i dettagli associati al progetto di migrazione.Review and verify the details associated with the migration project.

    Riepilogo del progetto di migrazione

  4. Selezionare Salva.Select Save.

Eseguire la migrazioneRun the migration

  • Selezionare Esegui migrazione.Select Run migration.

    Viene visualizzata la finestra dell'attività di migrazione con il campo Stato dell'attività impostato su In sospeso.The migration activity window appears, and the status of the activity is Pending.

Monitorare la migrazioneMonitor the migration

  1. Nella schermata dell'attività di migrazione selezionare Aggiorna per aggiornare la visualizzazione.In the migration activity screen, select Refresh to update the display.

    Attività di migrazione in corso

    È possibile espandere ulteriormente le categorie di database e account di accesso per monitorare lo stato di migrazione dei rispettivi oggetti server.You can further expand the databases and logins categories to monitor the migration status of the respective server objects.

    Attività di migrazione in corso

  2. Al termine della migrazione, selezionare Scarica report per ottenere un report con i dettagli associati al processo di migrazione.After the migration completes, select Download report to get a report listing the details associated with the migration process.

  3. Verificare il database di destinazione nell'ambiente dell'istanza gestita di database SQL di Azure di destinazione.Verify that the target database on the target Azure SQL Database managed instance environment.

Passaggi successiviNext steps