Guida alla migrazione: da MySQL a SQL Server

Si applica a:SQL Server

In questa guida viene illustrato come eseguire la migrazione dei database MySQL a SQL Server.

Per altre guide alla migrazione, vedere Guide alla migrazione del database di Azure.

Prerequisiti

Prima di iniziare la migrazione del database MySQL a SQL Server:

Pre-migrazione

Una volta soddisfatti i prerequisiti, si è pronti per individuare l'ambiente MySQL di origine e valutare la fattibilità della migrazione.

Valutazione

Usando SSMA per MySQL, è possibile esaminare gli oggetti e i dati dei database e valutare i database per la migrazione.

Per creare una valutazione:

  1. Aprire SSMA per MySQL.

  2. Scegliere Nuovo progetto dal menu File.

  3. Immettere il nome del progetto e una posizione in cui salvare il progetto e la destinazione della migrazione. Selezionare quindi SQL Server nell'opzione Migrate To.

    Screenshot that shows New Project option.

  4. Nella finestra di dialogo Connect to MySQL immettere i dettagli della connessione e quindi connettersi al server MySQL.

    Screenshot that shows Connect to MySQL option.

  5. Selezionare i database MySQL di cui eseguire la migrazione.

    Screenshot that shows selecting the MySQL database you want to migrate.

  6. Fare clic con il pulsante destro del mouse sul database MySQL in MySQL Metadata Explorer e scegliere Create Report. In alternativa, è possibile selezionare la scheda Create Report nell'angolo superiore destro.

    Screenshot that shows Create Report feature.

  7. Leggere il report HTML per esaminare le statistiche di conversione e gli eventuali errori o avvisi. È anche possibile aprire il report in Excel per ottenere un inventario degli oggetti MySQL e del lavoro richiesto per eseguire le conversioni dello schema. La posizione predefinita del report è la cartella report all'interno di SSMAProjects, come mostrato qui:

    drive:\Users\<username>\Documents\SSMAProjects\MySQLMigration\report\report_2016_11_12T02_47_55\.

    Screenshot that shows a conversion report.

Convalidare i mapping dei tipi

Convalidare i mapping dei tipi di dati predefiniti e modificarli in base ai requisiti, se necessario. A questo scopo:

  1. Scegliere Project Settings dal menu Tools.

  2. Selezionare la scheda Type Mapping.

    Screenshot that shows Type Mapping feature.

  3. È possibile modificare il mapping dei tipi per ogni tabella selezionando la tabella in MySQL Metadata Explorer.

Per altre informazioni sulle impostazioni di conversione in SSMA per MySQL, vedere Impostazioni del progetto (Conversione) (MySQLToSQL).

Convertire lo schema

La conversione degli oggetti di database ottiene le definizioni degli oggetti da MySQL, le converte in oggetti di SQL Server simili e quindi carica queste informazioni nei metadati di SSMA per MySQL. Non carica le informazioni nell'istanza di SQL Server. È quindi possibile visualizzare gli oggetti e le relative proprietà usando SQL Server Metadata Explorer.

Durante la conversione, SSMA per MySQL visualizza i messaggi di output nel riquadro di output e i messaggi di errore nel riquadro Error List. Usare le informazioni sull'output e sugli errori per determinare se è necessario modificare i database MySQL o il processo di conversione per ottenere i risultati della conversione desiderati.

Per convertire lo schema:

  1. (Facoltativo) Per convertire query dinamiche o ad hoc, fare clic con il pulsante destro del mouse sul nodo e quindi scegliere Aggiungi istruzione.

  2. Selezionare la scheda Connect to SQL Server.

    1. Immettere i dettagli per l'istanza di SQL Server.
    2. Selezionare il database di destinazione dall'elenco a discesa oppure immettere un nuovo nome. In questo caso verrà creato un database nel server di destinazione.
    3. Immettere i dettagli di autenticazione e quindi selezionare Connect.

    Screenshot that shows Connect to SQL Server.

  3. Fare clic con il pulsante destro del mouse sul database MySQL in MySQL Metadata Explorer e quindi scegliere Convert Schema. In alternativa, è possibile selezionare la scheda Convert Schema nell'angolo in alto a destra.

    Screenshot that shows Convert Schema option.

  4. Al termine della conversione, confrontare ed esaminare gli oggetti convertiti con quelli originali per identificare i potenziali problemi e risolverli in base alle raccomandazioni.

    Screenshot that shows comparing and reviewing objects.

  5. Confrontare il testo Transact-SQL convertito con il codice originale ed esaminare le raccomandazioni.

    Screenshot that shows comparing and reviewing converted code.

  6. Nel riquadro di output selezionare Review results ed esaminare gli errori nel riquadro Error List.

  7. Salvare il progetto in locale per un esercizio di correzione dello schema offline. Scegliere Save Project dal menu File. Questo passaggio consente di valutare gli schemi di origine e di destinazione offline e correggerli prima di pubblicare lo schema in SQL Server.

Per altre informazioni, vedere Convertire database MySQL (MySQLToSQL).

Migrazione

Dopo aver soddisfatto i prerequisiti necessari e aver eseguito le attività associate alla fase di pre-migrazione, è possibile eseguire la migrazione dello schema e dei dati.

Sono disponibili due opzioni per la migrazione dei dati:

  • Migrazione dei dati lato client

    • Per eseguire la migrazione dei dati lato client, selezionare l'opzione Client Side Data Migration Engine nella finestra di dialogo Project Settings.

    Nota

    Quando viene usata l'edizione SQL Express come database di destinazione, è consentita solo la migrazione dei dati lato client e la migrazione dei dati lato server non è supportata.

  • Migrazione dei dati lato server

    • Prima di eseguire la migrazione dei dati lato server, assicurarsi che:
      • Il pacchetto dell'estensione SSMA per MySQL sia installato nell'istanza di SQL Server.
      • Il servizio SQL Server Agent sia in esecuzione nell'istanza di SQL Server.
    • Per eseguire la migrazione dei dati lato server, selezionare l'opzione Server Side Data Migration Engine nella finestra di dialogo Project Settings.

Importante

Se si prevede di usare il motore di migrazione dei dati lato server, prima di eseguire la migrazione dei dati, è necessario installare il pacchetto dell'estensione SSMA per MySQL e i provider MySQL nel computer che esegue SSMA per MySQL. È anche necessario che il servizio SQL Server Agent sia in esecuzione. Per altre informazioni su come installare il pacchetto dell'estensione, vedere Installazione dei componenti SSMA su SQL Server (MySQLToSQL).

Per pubblicare lo schema ed eseguire la migrazione dei dati:

  1. Per pubblicare lo schema, fare clic con il pulsante destro del mouse sul database in SQL Server Metadata Explorer e scegliere Synchronize with Database. Questa azione pubblica il database MySQL nell'istanza di SQL Server.

    Screenshot that shows Synchronize with Database.

  2. Esaminare il mapping tra il progetto di origine e la destinazione.

    Screenshot that shows reviewing the synchronization with the database.

  3. Per eseguire la migrazione, fare clic con il pulsante destro del mouse sul database o sull'oggetto di cui eseguire la migrazione in MySQL Metadata Explorer e scegliere Migrate Data. In alternativa, è possibile selezionare la scheda Migrate Data. Per eseguire la migrazione dei dati per un intero database, selezionare la casella di controllo accanto al nome del database. Per eseguire la migrazione dei dati da singole tabelle, espandere il database, espandere Tables e quindi selezionare le caselle di controllo accanto alle tabelle. Per omettere dati da singole tabelle, deselezionare le caselle di controllo.

    Screenshot that shows Migrate Data option.

  4. Al termine della migrazione, visualizzare il report di migrazione dei dati.

    Screenshot that shows the Data Migration Report.

  5. Connettersi all'istanza di SQL Server tramite SQL Server Management Studio (SSMS) e convalidare la migrazione verificando dati e schema.

    Screenshot that shows validation in SQL Server Management Studio.

Dopo la migrazione

Dopo aver completato la fase di migrazione, è necessario completare una serie di attività post-migrazione per assicurarsi che tutto funzioni nel modo più corretto ed efficiente possibile.

Correggere le applicazioni

Dopo la migrazione dei dati nell'ambiente di destinazione, tutte le applicazioni che in precedenza utilizzavano l'origine devono iniziare a utilizzare la destinazione. Per completare questa attività, in alcuni casi sarà necessario apportare modifiche alle applicazioni.

Eseguire test

L'approccio di test per la migrazione del database prevede le attività seguenti:

  1. Sviluppare i test di convalida: per testare la migrazione del database, è necessario usare query SQL. È necessario creare le query di convalida da eseguire sia sul database di origine che su quello di destinazione. Le query di convalida devono essere estese all'ambito definito.
  2. Configurare un ambiente di test: l'ambiente di test deve contenere una copia del database di origine e del database di destinazione. Assicurarsi di isolare l'ambiente di test.
  3. Eseguire i test di convalida: eseguire i test di convalida sull'origine e sulla destinazione, quindi analizzare i risultati.
  4. Eseguire test delle prestazioni: eseguire test delle prestazioni sull'origine e sulla destinazione, quindi analizzare e confrontare i risultati.

Ottimizzazione

La fase di post-migrazione è fondamentale per riconciliare eventuali problemi di accuratezza dei dati e verificarne la completezza, nonché per risolvere possibili problemi di prestazioni con il carico di lavoro.

Nota

Per altre informazioni su questi problemi e sulle procedure per correggerli, vedere la Guida alla convalida e all'ottimizzazione post-migrazione.

Risorse per la migrazione

Per ulteriore assistenza sul completamento di questo scenario di migrazione, vedere la risorsa seguente. È stata sviluppata a supporto di un progetto di migrazione reale.

Posizione Descrizione
Strumento e modello di valutazione dei carichi di lavoro dei dati Questo strumento indica le piattaforme di destinazione "più idonee" suggerite, la preparazione per il cloud e il livello di correzione di applicazioni o database per un determinato carico di lavoro. Offre funzionalità semplici per l'esecuzione di calcoli e la generazione di report, che consentono di accelerare le valutazioni in ambienti estesi grazie a un processo decisionale automatizzato e uniforme per la piattaforma di destinazione.
Da MySQL a SQL Server - Utilità Confronto database L'utilità Confronto database è un'applicazione console di Windows che è possibile usare per verificare che i dati siano identici sia nelle piattaforme di origine che di destinazione. È possibile usare lo strumento per confrontare in modo efficiente i dati con il livello di riga o colonna in tutte le tabelle, righe e colonne selezionate.

Queste risorse sono state progettate dal team di progettazione dei dati di SQL. L'obiettivo principale di questo team consiste nello sbloccare e accelerare la modernizzazione complessa per i progetti di migrazione della piattaforma dati alla piattaforma dati di Microsoft Azure.