Guida alla migrazione: da Oracle a SQL Server in VM Azure

Si applica a:database SQL di Azure

Questa guida illustra come eseguire la migrazione degli schemi Oracle a Microsoft SQL Server usando SQL Server Migration Assistant (SSMA) per Oracle.

Per altre guide alla migrazione, vedere Migrazione dei database.

Prerequisiti

Per eseguire la migrazione dello schema Oracle a SQL Server in VM Azure, è necessario:

Pre-migrazione

Durante la preparazione per la migrazione al cloud, verificare che l'ambiente di origine sia supportato e che siano stati soddisfatti tutti gli altri prerequisiti. In questo modo sarà possibile assicurarsi che la migrazione sia efficiente e corretta.

Questa parte del processo prevede:

  • Inventario dei database di cui è necessario eseguire la migrazione.
  • Valutazione di tali database per potenziali problemi di migrazione o blocchi.
  • Risoluzione di eventuali problemi rilevati.

Rilevazione

Usare MAP Toolkit per identificare le origini dati esistenti e i dettagli sulle funzionalità usate dall'azienda. In questo modo sarà possibile comprendere meglio la migrazione e pianificarla. Questo processo prevede l'analisi della rete per identificare tutte le istanze, le versioni e le funzionalità di Oracle dell'organizzazione.

Per usare MAP Toolkit per eseguire un'analisi dell'inventario, seguire questa procedura:

  1. Aprire MAP Toolkit.

  2. Scegliere Crea/Seleziona database:

    Screenshot che mostra l'opzione Crea/Seleziona database.

  3. Selezionare Crea un database di inventario. Immettere il nome per il nuovo database di inventario e una breve descrizione, quindi selezionare OK

    Screenshot che mostra l'interfaccia per la creazione di un database di inventario.

  4. Selezionare Raccogli dati inventario per aprire la Procedura guidata di inventario e valutazione.

    Screenshot che mostra il collegamento Raccolta dati inventario.

  5. In Procedura guidata di inventario e valutazione, selezionare Oracle, quindi Avanti:

    Screenshot che mostra la pagina Scenari di inventario della Creazione guidata inventario e valutazione.

  6. Selezionare l'opzione di ricerca computer più adatta alle esigenze e all'ambiente dell'organizzazione, quindi selezionare Avanti:

    Screenshot che mostra la pagina Metodi di individuazione della Creazione guidata inventario e valutazione.

  7. Immettere le credenziali o creare nuove credenziali per i sistemi da analizzare, quindi selezionare Avanti:

    Screenshot che mostra la pagina Tutte le credenziali computer della Creazione guidata inventario e valutazione.

  8. Impostare l'ordine delle credenziali, quindi selezionare Avanti:

    Screenshot che mostra la pagina Ordine credenziali della Creazione guidata inventario e valutazione.

  9. Specificare le credenziali per ogni computer che si vuole individuare. È possibile usare credenziali univoche per ciascun computer oppure scegliere di usare l'elenco di credenziali Tutti i computer.

    Screenshot che mostra la pagina Specifica computer e credenziali della Creazione guidata inventario e valutazione.

  10. Verificare il riepilogo della selezione, quindi selezionare Fine:

    Screenshot che mostra la pagina Riepilogo della Creazione guidata inventario e valutazione.

  11. Al termine dell'analisi, visualizzare il report di riepilogo Raccolta dati. L'analisi potrebbe richiedere alcuni minuti, a seconda del numero di database. Al termine, selezionare Chiudi:

    Screenshot che mostra il riepilogo della raccolta dei dati.

  12. Selezionare Opzioni per generare un report sulla valutazione e sui dettagli dei database Oracle. Selezionare entrambe le opzioni (una per volta) per generare il report.

Valutazione

Dopo aver identificato le origini dati, usare SQL Server Migration Assistant per Oracle per valutare le istanze Oracle di cui viene eseguita la migrazione alla macchina virtuale di SQL Server. L'assistente consente di comprendere le lacune tra i database di origine e di destinazione. È possibile esaminare gli oggetti di database e i dati, valutare i database per la migrazione, eseguire la migrazione di oggetti di database a SQL Server, quindi eseguire la migrazione dei dati a SQL Server.

Per creare una valutazione, seguire questa procedura:

  1. Aprire SQL Server Migration Assistant per Oracle.

  2. Scegliere Nuovo progetto dal menu File.

  3. Specificare un nome di progetto, una posizione in cui salvare il progetto, quindi selezionare la destinazione della migrazione SQL Server nell'elenco a discesa. Selezionare OK:

    Screenshot che mostra la finestra di dialogo Nuovo progetto.

  4. Selezionare Connetti a Oracle. Nella finestra di dialogo Connetti a Oracle immettere i valori per la connessione a Oracle:

    Screenshot che nostra la finestra di dialogo Connetti a Oracle.

    Selezionare gli schemi Oracle di cui si vuole eseguire la migrazione:

    Screenshot che mostra l'elenco degli schemi Oracle di cui è possibile eseguire la migrazione.

  5. Nel riquadro Oracle Metadata Explorer fare clic con il pulsante destro del mouse sullo schema o sull'oggetto di cui si vuole eseguire la migrazione, quindi selezionare Crea report. Verrà generato un report HTML. In alternativa, è possibile selezionare il database, quindi selezionare Crea report nel menu in alto.

    Screenshot che mostra come creare un report.

  6. Leggere il report HTML per esaminare le statistiche di conversione e gli eventuali errori o avvisi. Analizzarlo per comprendere i problemi di conversione e le soluzioni.

    È anche possibile aprire il report in Excel per ottenere un inventario degli oggetti Oracle e del lavoro richiesto per completare le conversioni dello schema. La posizione predefinita del report è la cartella report all'interno di SSMAProjects.

    Ad esempio: drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2016_11_12T02_47_55\

    Screenshot che mostra un report di conversione.

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. Scegliere Impostazioni progetto dal menu Strumenti.

  2. Selezionare la scheda Mapping dei tipi.

    Screenshot che mostra la scheda Mappature dei tipi.

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

Convertire lo schema

Per convertire lo schema, seguire questa procedura:

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

  2. Selezionare Connetti a SQL Server nel menu superiore.

    1. Immettere i dettagli di connessione per SQL Server su VM Azure.
    2. Selezionare il database di destinazione dall'elenco o specificare un nuovo nome. Se si specifica un nuovo nome, verrà creato un database nel server di destinazione.
    3. Specificare i dettagli di autenticazione.
    4. Selezionare Connetti.

    Screenshot che mostra come connettersi a SQL Server.

  3. Fare clic con il pulsante destro del mouse in Oracle Metadata Explorer e scegliere Converti schema. In alternativa, è possibile selezionare Converti schema nel menu in alto:

    Screenshot che mostra come convertire lo schema.

  4. Al termine della conversione, controllare e confrontare gli oggetti convertiti con quelli originali per identificare i potenziali problemi. Usare le raccomandazioni per risolvere eventuali problemi:

    Screenshot che mostra un confronto di due schemi.

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

    Screenshot che mostra Transact-SQL, stored procedure e un avviso.

    Salvare il progetto in locale per un esercizio di correzione dello schema offline. Scegliere pertanto Salva progetto 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.

  5. Nel riquadro di Output selezionare Rivedi risultati ed esaminare gli errori nel riquadro Elenco degli errori.

  6. Salvare il progetto in locale per un esercizio di correzione dello schema offline. Scegliere Salva progetto dal menu File. Ciò consente di valutare gli schemi di origine e di destinazione offline e correggerli prima di pubblicare lo schema in SQL Server su VM Azure.

Migrazione

Dopo aver soddisfatto i prerequisiti necessari e aver eseguito le attività associate alla fase di pre-migrazione, è possibile iniziare la migrazione dello schema e dei dati. La migrazione prevede due passaggi: pubblicazione dello schema e migrazione dei dati.

Per pubblicare lo schema ed eseguire la migrazione dei dati, seguire questa procedura:

  1. Per pubblicare lo schema, fare clic con il pulsante destro del mouse sul database in SQL Server Metadata Explorer e scegliere Sincronizza con database. In questo modo lo schema Oracle viene pubblicato in SQL Server in VM Azure.

    Screenshot che mostra il comando Sincronizza con il database.

    Esaminare il mapping tra il progetto di origine e la destinazione:

    Screenshot che mostra lo stato di sincronizzazione.

  2. 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 che mostra il comando Migrazione dei dati.

  3. Specificare i dettagli di connessione per Oracle e SQL Server in VM Azure nella finestra di dialogo.

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

    Screenshot che mostra il report di migrazione dei dati.

  5. Connettersi a SQL Server su VM Azure usando SQL Server Management Studio. Convalidare la migrazione esaminando i dati e lo schema:

    Screenshot che mostra un'istanza di SQL Server in SSMA.

Oltre a usare SSMA, è possibile usare SQL Server Integration Services (SSIS) per eseguire la migrazione dei dati. 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. I cambiamenti potrebbero richiedere modifiche alle applicazioni.

Data Access Migration Toolkit è un'estensione per Visual Studio Code. Consente di analizzare il codice sorgente Java e rilevare le chiamate e le query dell'API di accesso ai dati. 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 blog Eseguire la migrazione dell'applicazione Java da Oracle.

Eseguire test

Per testare la migrazione del database, completare queste attività:

  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 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 che mostra il nuovo test case.

  2. Nella procedura guidata Test Case specificare le informazioni seguenti:

    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 che mostra il passaggio per inizializzare un test case.

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

    Screenshot che mostra il passaggio per selezionare e configurare l'oggetto.

    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 che mostra il passaggio per selezionare e configurare l'oggetto interessato.

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

  5. Esaminare la sequenza di valutazione degli oggetti. Modificare l'ordine selezionando i pulsanti nella griglia.

    Screenshot che mostra il passaggio per sequenziare l'esecuzione dell'oggetto di test.

  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 che mostra il passaggio per finalizzare l'oggetto.

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

  7. Selezionare Fine per creare il progetto.

    Screenshot che mostra il passaggio per il repository di test.

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 selezionare Esegui.

    Screenshot che mostra il passaggio per rivedere il repository di test.

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

    Screenshot che mostra il passaggio per avviare il test case.

  3. Specificare quindi le credenziali di origine Oracle. Dopo aver inserito le credenziali, selezionare Connetti.

    Screenshot che mostra il passaggio per connettersi all'origine oracle.

  4. Specificare le credenziali di SQL Server di destinazione e selezionare Connetti.

    Screenshot che mostra il passaggio per connettersi alla destinazione sql.

    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 che mostra lo stato di avanzamento del test del tester.

  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 che mostra un esempio di report di prova del tester

  7. Per altre informazioni, selezionare i dettagli.

    Esempio di convalida dei dati riuscita.

    Screenshot che mostra un esempio di report di riuscita del tester.

    Esempio di convalida dei dati non riuscita.

    Screenshot che mostra il report degli errori del tester.

Optimize (Ottimizza)

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 specifiche per correggerli, vedere la Guida alla convalida e all'ottimizzazione post-migrazione.

Risorse per la migrazione

Per altre informazioni sul completamento di questo scenario di migrazione, vedere le risorse seguenti, sviluppate per supportare 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/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.
SSMA issues and possible remedies when migrating Oracle databases (Problemi di SSMA e possibili rimedi durante la migrazione dei database Oracle) Con Oracle è possibile assegnare una condizione non scalare in una clausola WHERE. SQL Server non supporta tuttavia questo tipo di condizione. SSMA per Oracle non converte quindi le query con una condizione non scalare nella clausola WHERE. Genera invece un errore: O2SS0001. Questo white paper contiene maggiori dettagli sul problema e sui modi per risolverlo.
Manuale per la migrazione da Oracle a SQL Server Illustra le attività associate alla migrazione di uno schema Oracle alla versione più recente del database SQL Server. Se la migrazione richiede modifiche alle caratteristiche e alle funzionalità, è necessario considerare attentamente l'impatto potenziale di ogni modifica sulle applicazioni che usano il database.
Da Oracle a SQL Server - 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