Guida alla migrazione: da Oracle ad Azure SQL

Si applica a:Database SQL di Azure

In questa guida viene illustrato come eseguire la migrazione di schemi Oracle al database SQL di Azure usando SQL Server Migration Assistant per Oracle (SSMA for Oracle).

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

Importante

Provare la nuova estensione Database Migration Assessment per Oracle in Azure Data Studio per la valutazione preliminare e la categorizzazione del carico di lavoro da Oracle a SQL. Se si è nella fase iniziale della migrazione da Oracle a SQL ed è necessario eseguire una valutazione generale del carico di lavoro, si è interessati a dimensionare la destinazione Azure SQL per il carico di lavoro Oracle o a capire la parità di migrazione delle funzionalità, provare la nuova estensione. Per la valutazione dettagliata e la conversione del codice, continuare con SSMA per Oracle.

Prerequisiti

Prima di iniziare la migrazione dello schema Oracle al database SQL:

Pre-migrazione

Una volta soddisfatti i prerequisiti, si è pronti per individuare la topologia dell'ambiente e valutare la fattibilità della migrazione al cloud di Azure. Questa parte del processo richiede di creare un inventario dei database di cui è necessario eseguire la migrazione, di valutare i potenziali problemi o ostacoli per la migrazione, quindi di risolvere eventuali problemi riscontrati.

Valutazione

Usando SSMA per Oracle, è possibile esaminare gli oggetti di database e i dati, valutare i database per la migrazione, eseguire la migrazione di oggetti di database al database SQL, quindi eseguire la migrazione dei dati al database.

Per creare una valutazione:

  1. Aprire SSMA per Oracle.

  2. Selezionare File, quindi Nuovo progetto.

  3. Immettere un nome di progetto e un percorso in cui salvare il progetto. Selezionare quindi Database SQL di Azure come destinazione della migrazione dall'elenco a discesa e fare clic su OK.

    Screenshot that shows Connect to Oracle.

  4. Selezionare Connetti a Oracle. Nella finestra di dialogo Connetti a Oracle immettere i valori per i dettagli della connessione a Oracle.

  5. Selezionare gli schemi Oracle di cui si vuole eseguire la migrazione.

    Screenshot that shows selecting Oracle schema.

  6. In Oracle Metadata Explorer, fare clic con il pulsante destro del mouse sullo schema Oracle per eseguire la migrazione, quindi scegliere Crea report per generare un report HTML. È invece possibile selezionare un database, quindi selezionare la scheda Crea report.

    Screenshot that shows Create Report.

  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 Oracle e del lavoro richiesto per eseguire le conversioni dello schema. La posizione predefinita del report è la cartella report all'interno di SSMAProjects.

    Ad esempio, vedere drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2020_11_12T02_47_55\.

    Screenshot that shows an Assessment report.

Convalidare i tipi di dati

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

  1. In SSMA per Oracle, selezionare Strumenti, quindi selezionare Impostazioni di progetto.

  2. Selezionare la scheda Mapping dei tipi.

    Screenshot that shows Type Mapping.

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

Convertire lo schema

Per convertire lo schema:

  1. (Facoltativo) Aggiungere query dinamiche o ad hoc alle istruzioni. Fare clic con il pulsante destro del mouse sul nodo, quindi scegliere Aggiungi istruzioni.

  2. Selezionare la scheda Connetti al database SQL Server di Azure.

    1. In Database SQL immettere i dettagli di connessione per connettere il database.
    2. Selezionare l’istanza di database SQL 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, quindi selezionare Connetti.

    Screenshot that shows Connect to Azure SQL Database.

  3. Fare clic con il pulsante destro del mouse sullo schema Oracle in Oracle Metadata Explorer, quindi scegliere Converti schema. In alternativa, è possibile selezionare lo schema, quindi selezionare la scheda Converti schema.

    Screenshot that shows Convert Schema.

  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 the Review recommendations schema.

  5. Confrontare il testo Transact-SQL convertito con le procedure archiviate originali ed esaminare le raccomandazioni.

    Screenshot that shows the Review recommendations.

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

Migrazione

Dopo aver valutato i database e corretto eventuali discrepanze, il passaggio successivo consiste nell'eseguire il processo di migrazione. La migrazione prevede due passaggi: pubblicazione dello schema e migrazione dei dati.

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 dal nodo di Database in Azure SQL Database Metadata Explorer e selezionare Sincronizza con database.

    Screenshot that shows Synchronize with Database.

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

    Screenshot that shows Synchronize with the Database review.

  3. Per eseguire la migrazione, fare clic con il pulsante destro del mouse sul database o sull'oggetto di cui eseguire la migrazione in Oracle Metadata Explorer e scegliere Migra dati. In alternativa, è possibile selezionare la scheda Migra dati. 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 Tabelle, quindi selezionare le caselle di controllo accanto alle tabelle. Per omettere dati da singole tabelle, deselezionare la casella di controllo.

    Screenshot that shows Migrate Data.

  4. Immettere i dettagli di connessione per Oracle e database SQL.

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

    Screenshot that shows the Data Migration Report.

  6. Connettersi all'istanza del database SQL tramite SQL Server Management Studio e convalidare la migrazione verificando dati e schema.

    Screenshot that shows validation in SQL Server Management Studio.

In alternativa, è anche possibile usare SQL Server Integration Services per eseguire la migrazione. Per altre informazioni, vedere:

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 usavano l'origine devono iniziare a usare la destinazione. Per completare questa attività, in alcuni casi sarà necessario apportare modifiche alle applicazioni.

Data Access Migration Toolkit è un'estensione per Visual Studio Code con cui è possibile analizzare il codice sorgente Java e rilevare le chiamate API di accesso ai dati e le query. Il toolkit offre una visualizzazione a riquadro singolo dei problemi da risolvere per supportare il nuovo back-end del database. Per altre informazioni, vedere il post del blog Eseguire la migrazione dell'applicazione Java da Oracle.

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.

Convalidare gli oggetti migrati

Microsoft SQL Server Migration Assistant per Oracle Tester (SSMA Tester) consente di testare gli oggetti di database migrati. SSMA Tester viene usato per verificare che gli oggetti convertiti si comportino nello stesso modo.

Creare un test case

  1. Aprire SSMA per Oracle, selezionare Tester, quindi Nuovo test case. Screenshot that shows to create new test case.

  2. Immettere le seguenti informazioni per il nuovo caso:

    Nome: immettere il nome per identificare il test case.

    Data di creazione: data corrente, definita automaticamente.

    Data di ultima modifica: compilata automaticamente, non deve essere modificata.

    Descrizione: immettere eventuali informazioni aggiuntive per identificare lo scopo del test case.

    Screenshot that shows steps to initialize a test case .

  3. Selezionare gli oggetti che fanno parte del test case dall'albero di oggetti Oracle sul lato sinistro.

    Screenshot that shows step to select and configure object.

    In questo esempio viene selezionata la procedura archiviata ADD_REGION e la tabella REGION.

    Per altre informazioni, vedere Selezione e configurazione di oggetti da testare.

  4. Selezionare quindi le tabelle, le chiavi esterne e altri oggetti dipendenti dall'albero degli oggetti Oracle nella finestra sinistra.

    Screenshot that shows step to select and configure affected object.

    Per altre informazioni, vedere Selezione e configurazione degli oggetti interessati.

  5. Esaminare la sequenza di valutazione degli oggetti. Modificare l'ordine facendo clic sui pulsanti nella griglia.

    Screenshot that shows step to sequence test object execution.

  6. Finalizzare il test case esaminando le informazioni fornite nei passaggi precedenti. Configurare le opzioni di esecuzione dei test in base allo scenario di test.

    Screenshot that shows step to finalize object.

    Per altre informazioni sulle impostazioni del test case, consultare Completamento della preparazione del test case

  7. Fare clic su Fine per creare il test case.

    Screenshot that shows step to test repo.

Eseguire il test case

Quando SSMA Tester esegue un test case, il motore di test esegue gli oggetti selezionati per il test e genera un report di verifica.

  1. Selezionare il test case dal repository di test, quindi fare clic su Esegui.

    Screenshot that shows to review test repo.

  2. Esaminare il test case di avvio e fare clic su Esegui.

    Screenshot that shows step to run test case

  3. Specificare quindi le credenziali di origine Oracle. Dopo aver inserito le credenziali, fare clic su Connetti.

    Screenshot that shows step to connect to oracle source

  4. Specificare le credenziali di SQL Server di destinazione e fare clic su Connetti.

    Screenshot that shows step to connect to sql target.

    In caso di esito positivo, il test case passa alla fase di inizializzazione.

  5. Una barra di stato in tempo reale mostra lo stato di esecuzione del test.

    Screenshot that shows tester test progress.

  6. Esaminare il report al termine del test. Il report fornisce le statistiche, gli eventuali errori durante l'esecuzione del test e un report dettagliato.

    Screenshot that shows a sample tester test report

  7. Per altre informazioni, vedere i dettagli.

    Esempio di convalida dei dati riuscita. Screenshot that shows a sample tester success report.

    Esempio di convalida dei dati non riuscita.

    Screenshot that shows tester failure report.

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 le risorse seguenti. Sono state sviluppate a supporto di un progetto di migrazione reale.

Titolo/Collegamento 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 e accessibili con un solo clic 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.
Artefatti script dell'inventario Oracle L'asset include una query PL/SQL che accede alle tabelle di sistema Oracle e fornisce un conteggio degli oggetti per tipo di schema, tipo di oggetto e stato. Fornisce anche una stima approssimativa dei "dati non elaborati" in ogni schema e il dimensionamento delle tabelle in ogni schema, con i risultati archiviati in formato CSV.
Automatizzare la raccolta e il consolidamento delle valutazioni di SSMA Oracle Il set di risorse usa un file CSV come voce (sources.csv nelle cartelle del progetto) per generare i file XML necessari per eseguire la valutazione SSMA in modalità console. Il file source.csv viene fornito dal cliente in base a un inventario delle istanze di Oracle esistenti. I file di output sono AssessmentReportGeneration_source_1.xml, ServersConnectionFile.xml e VariableValueFile.xml.
Da Oracle a SQL DB - Utilità Confronto database SSMA per Oracle Tester è lo strumento consigliato per convalidare automaticamente la conversione degli oggetti di database e la migrazione dei dati ed è un superset della funzionalità Confronto database.

Se si sta cercando un'opzione di convalida dei dati alternativa, è possibile usare l'utilità Confronto database per confrontare i dati fino al livello di riga o di colonna in tutte le tabelle, le righe e le 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.

Passaggi successivi