Guide de migration d’Oracle vers SQL Server sur les machines virtuelles Azure

S’applique à Azure SQL Database

Ce guide explique comment migrer des schémas Oracle vers SQL Server sur les machines virtuelles Azure à l’aide de l’Assistant Migration SQL Server pour Oracle.

Pour obtenir d’autres guides de migration, consultez Migration de base de données.

Prérequis

Pour migrer votre schéma Oracle vers SQL Server sur les machines virtuelles Azure, vous avez besoin des ressources suivantes :

Prémigration

Quand vous préparez votre migration vers le cloud, vérifiez que votre environnement source est pris en charge et que les conditions préalables sont réunies. Cela contribuera à une migration efficace et réussie.

Cette partie du processus implique les opérations suivantes :

  • Réalisation d’un inventaire des bases de données à migrer.
  • Évaluation de ces bases de données pour détecter les problèmes ou les obstacles potentiels à la migration.
  • Résolution des problèmes que vous dévoilez.

Découvrez

Utilisez MAP Toolkit pour identifier les sources de données existantes et les détails sur les fonctionnalités que votre entreprise utilise. Cela vous permettra de mieux comprendre la migration et vous aidera à la planifier. Ce processus implique une analyse du réseau pour identifier les instances Oracle de votre organisation, ainsi que les versions et les fonctionnalités que vous utilisez.

Pour utiliser MAP Toolkit afin d’effectuer une analyse d’inventaire, procédez comme suit :

  1. Ouvrez MAP Toolkit.

  2. Sélectionnez Créer/sélectionner une base de données :

    Screenshot that shows the Create/Select database option.

  3. Sélectionnez Créer une base de données d’inventaire. Entrez le nom de la nouvelle base de données d’inventaire ainsi qu’une brève description, puis sélectionnez OK.

    Screenshot that shows the interface for creating an inventory database.

  4. Sélectionnez Collecter les données d’inventaire pour ouvrir l’Assistant Inventaire et évaluation :

    Screenshot that shows the Collect inventory data link.

  5. Dans l’Assistant Inventaire et évaluation, sélectionnez Oracle, puis Suivant :

    Screenshot that shows the Inventory Scenarios page of the Inventory and Assessment Wizard.

  6. Sélectionnez l’option de recherche d’ordinateur correspondant le mieux à vos besoins et à votre environnement, puis sélectionnez Suivant :

    Screenshot that shows the Discovery Methods page of the Inventory and Assessment Wizard.

  7. Entrez les informations d’identification ou créez-en pour les systèmes que vous souhaitez explorer, puis sélectionnez Suivant :

    Screenshot that shows the All Computers Credentials page of the Inventory and Assessment Wizard.

  8. Définissez l’ordre des informations d’identification, puis sélectionnez Suivant :

    Screenshot that shows the Credentials Order page of the Inventory and Assessment Wizard.

  9. Entrez les informations d’identification pour chaque ordinateur à découvrir. Vous pouvez utiliser des informations d’identification uniques pour chaque ordinateur/machine, ou vous pouvez utiliser la liste d’informations d’identification Tous les ordinateurs.

    Screenshot that shows the Specify Computers and Credentials page of the Inventory and Assessment Wizard.

  10. Vérifiez vos sélections, puis sélectionnez Terminer :

    Screenshot that shows the Summary page of the Inventory and Assessment Wizard.

  11. Une fois l’analyse terminée, affichez le résumé Collecte de données. L’analyse peut prendre quelques minutes en fonction du nombre de bases de données. Sélectionnez Fermer lorsque vous avez terminé :

    Screenshot that shows the Data Collection summary.

  12. Sélectionnez Options pour générer un rapport sur l’évaluation Oracle et les détails de la base de données. Sélectionnez les deux options, une à la fois, pour générer le rapport.

Évaluer

Après avoir identifié les sources de données, utilisez Assistant Migration SQL Server pour Oracle pour évaluer les instances Oracle qui migrent vers la machine virtuelle SQL Server. L’assistant vous aidera à comprendre les écarts entre les bases de données source et celles de destination. Vous pouvez examiner les objets et les données de base de données, évaluer les bases de données pour la migration, migrer les objets de base de données vers SQL Server, puis migrer les données vers SQL Server.

Pour créer une évaluation, effectuez les étapes suivantes :

  1. Ouvrez Assistant Migration SQL Server pour Oracle.

  2. Dans le menu Fichier, sélectionnez Nouveau projet.

  3. Fournissez un nom de projet et un emplacement pour votre projet, puis sélectionnez une cible de migration SQL Server dans la liste. Sélectionnez OK.

    Screenshot that shows the New Project dialog box.

  4. Sélectionnez Se connecter à Oracle. Dans la boîte de dialogue Se connecter à Oracle, entrez des valeurs pour la connexion à Oracle :

    Screenshot that shows the Connect to Oracle dialog box.

    Sélectionnez les schémas Oracle que vous voulez migrer :

    Screenshot that shows the list of Oracle schemas that can be migrated.

  5. Dans Oracle Metadata Explorer (Explorateur de métadonnées Oracle), cliquez avec le bouton droit sur le schéma Oracle à migrer, puis sélectionnez Create report (Créer un rapport). Cette opération génère un rapport HTML. Vous pouvez également sélectionner la base de données, puis Créer un rapport dans le menu supérieur.

    Screenshot that shows how to create a report.

  6. Examinez le rapport HTML pour y trouver les statistiques de conversion, les erreurs et les avertissements. Analysez-le pour comprendre les problèmes de conversion et les solutions.

    Vous pouvez également ouvrir le rapport dans Excel pour obtenir un inventaire des objets Oracle et l’effort nécessaire pour effectuer des conversions de schémas. Le dossier de rapport situé dans SSMAProjects est l’emplacement par défaut du rapport.

    Par exemple : drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2016_11_12T02_47_55\

    Screenshot that shows a conversion report.

Valider les types de données

Validez les mappages de types de données par défaut et modifiez-les en fonction des besoins, le cas échéant. Pour ce faire, procédez comme suit :

  1. Dans le menu Tools (Outils), sélectionnez Project Settings (Paramètres du projet).

  2. Sélectionnez l’onglet Type Mappings (Mappage de types).

    Screenshot that shows the Type Mappings tab.

  3. Vous pouvez modifier le mappage des types pour chaque table en sélectionnant celle-ci dans Oracle Metadata Explorer (Explorateur de métadonnées Oracle).

Convertir le schéma

Pour convertir le schéma, effectuez les étapes suivantes :

  1. (Facultatif) Pour convertir des requêtes dynamiques ou ad hoc, cliquez avec le bouton droit sur le nœud, puis sélectionnez Ajouter une instruction.

  2. Sélectionnez Connect to SQL Server (Se connecter à SQL Server) dans le menu supérieur.

    1. Entrez les informations de connexion pour votre instance de SQL Server sur les machines virtuelles Azure.
    2. Sélectionnez votre base de données cible dans la liste ou indiquez un nouveau nom. Si vous fournissez un nouveau nom, une base de données sera créée sur le serveur cible.
    3. Fournissez des informations d’authentification.
    4. Sélectionnez Se connecter.

    Screenshot that shows how to connect to SQL Server.

  3. Dans Oracle Metadata Explorer (Explorateur de métadonnées Oracle), cliquez avec le bouton droit sur le schéma Oracle, puis sélectionnez Convert Schema (Convertir le schéma). Vous pouvez également sélectionner Convertir le schéma dans le menu supérieur :

    Screenshot that shows how to convert the schema.

  4. Une fois la conversion de schéma terminée, examinez les objets convertis et comparez-les aux objets d’origine pour identifier les problèmes potentiels. Utilisez les recommandations pour résoudre les problèmes :

    Screenshot that shows a comparison of two schemas.

    Comparez le texte Transact-SQL converti aux procédures stockées d’origine et passez en revue les recommandations :

    Screenshot that shows Transact-SQL, stored procedures, and a warning.

    Vous pouvez enregistrer le projet localement pour un exercice de correction de schéma hors connexion. Pour ce faire, sélectionnez Save Project (Enregistrer le projet) dans le menu File (Fichier). L’enregistrement du projet en local vous permet d’évaluer les schémas source et cible hors connexion et d’apporter une correction avant de publier le schéma sur SQL Server.

  5. Sélectionnez Review results (Examiner les résultats) dans le volet Output (Sortie), puis examinez les erreurs dans le volet Error list (Liste d’erreurs).

  6. Enregistrez le projet localement pour un exercice de correction de schéma hors connexion. Dans le menu File (Fichier), sélectionnez Save Project (Enregistrer le projet). Cela vous permet d’évaluer les schémas source et cible hors connexion et d’apporter une correction avant de publier le schéma sur SQL Server sur les machines virtuelles Azure.

Migrate

Une fois que les prérequis sont réunis et que vous avez effectué les tâches associées à l’étape de prémigration, vous êtes prêt à commencer la migration du schéma et des données. La migration comprend deux étapes : la publication du schéma et la migration des données.

Pour publier votre schéma et migrer vos données, effectuez les étapes suivante :

  1. Publiez le schéma : cliquez avec le bouton droit sur la base de données dans SQL Server Metadata Explorer (Explorateur de métadonnées SQL Server), puis sélectionnez Synchronize with Database (Synchroniser avec la base de données). Cela permet de publier le schéma Oracle sur SQL Server sur les machines virtuelles Azure.

    Screenshot that shows the Synchronize with Database command.

    Passez en revue le mappage entre votre projet source et votre cible :

    Screenshot that shows the synchronization status.

  2. Migrez les données : cliquez avec le bouton droit sur la base de données ou l’objet que vous souhaitez migrer dans Oracle Metadata Explorer (Explorateur de métadonnées Oracle), puis sélectionnez Migrate Data (Migrer les données). Vous pouvez également sélectionner l’onglet Migrer les données. Pour migrer les données d’une base de données entière, activez la case à cocher à côté du nom de la base de données. Pour migrer des données à partir de tables individuelles, développez la base de données, développez Tables, puis cochez les cases à côté des tables. Pour omettre certaines données de tables individuelles, décochez les cases.

    Screenshot that shows the Migrate Data command.

  3. Entrez les informations de connexion pour Oracle et SQL Server sur les machines virtuelles Azure dans la boîte de dialogue.

  4. Une fois la migration terminée, affichez le rapport de migration des données :

    Screenshot that shows the Data Migration Report.

  5. Connectez-vous à votre instance de SQL Server sur les machines virtuelles Azure à l’aide de SQL Server Management Studio. Validez la migration en examinant les données et le schéma :

    Screenshot that shows a SQL Server instance in SSMA.

Au lieu d’utiliser SSMA, vous pouvez utiliser la fonctionnalité SQL Server Integration Services (SSIS) pour migrer les données. Pour plus d'informations, consultez les rubriques suivantes :

Post-migration

Une fois la phase de migration terminée, vous devez effectuer une série de tâches post-migration pour vous assurer que tout fonctionne de la manière la plus fluide et efficace possible.

Corriger les applications

Une fois les données migrées vers l’environnement cible, toutes les applications qui consommaient auparavant la source doivent commencer à consommer la cible. Pour effectuer ces changements, il peut être nécessaire de modifier les applications.

Data Access Migration Toolkit est une extension de Visual Studio Code. Elle vous permet d’analyser votre code source Java et de détecter les appels et les requêtes d’API d’accès aux données. Elle fournit une vue à volet unique des éléments à corriger pour prendre en charge le nouveau back end de la base de données. Pour en savoir plus, consultez Migrer votre application Java à partir d’Oracle.

Effectuer des tests

Pour tester la migration de votre base de données, effectuez ces activités :

  1. Développer des tests de validation. pour tester la migration d’une base de données, vous devez utiliser des requêtes SQL. Créez des requêtes de validation à exécuter sur les bases de données source et cible. Vos requêtes de validation doivent couvrir l’étendue que vous avez définie.

  2. Configurer un environnement de test. l’environnement de test doit contenir une copie de la base de données source et de la base de données cible. Veillez à isoler l’environnement de test.

  3. Exécuter des tests de validation. exécutez les tests de validation sur la source et sur la cible, puis analysez les résultats.

  4. Exécuter des tests de performances. exécutez un test de performances sur la source et sur la cible, puis analysez et comparez les résultats.

Valider les objets migrés

Le testeur SSMA (Assistant Migration SQL Server) pour Oracle vous permet de tester les objets de base de données migrés et de vérifier que les objets convertis se comportent de la même façon.

Créer un cas de test

  1. Ouvrez SSMA pour Oracle. Sélectionnez Testeur, puis Nouveau cas de test.

    Screenshot that shows new test case.

  2. Dans l’Assistant de cas de test, indiquez les informations suivantes :

    Nom : entrez un nom pour identifier le cas de test.

    Date de création : date du jour, définie automatiquement.

    Date de la dernière modification : renseignée automatiquement, ne doit pas être modifiée.

    Description : entrez des informations supplémentaires pour identifier l’objectif du cas de test.

    Screenshot that shows step to initialize a test case.

  3. Sélectionnez les objets qui font partie du cas de test dans l’arborescence d’objets Oracle située sur la gauche.

    Screenshot that shows step to select and configure object.

    Dans cet exemple, la procédure stockée ADD_REGION et la table REGION sont sélectionnées.

    Pour plus d’informations, consultez Sélection et configuration des objets à tester.

  4. Ensuite, sélectionnez les tables, les clés étrangères et les autres objets dépendants dans l’arborescence d’objets Oracle dans la fenêtre de gauche.

    Screenshot that shows step to select and configure affected object.

    Pour plus d’informations, consultez Sélection et configuration des objets affectés.

  5. Passez en revue la séquence d’évaluation des objets. Changez l’ordre en sélectionnant les boutons dans la grille.

    Screenshot that shows step to sequence test object execution.

  6. Finalisez le cas de test en examinant les informations fournies dans les étapes précédentes. Configurez les options d’exécution de test en fonction du scénario de test.

    Screenshot that shows step to finalize object.

    Pour plus d’informations sur les paramètres de cas de test, Terminer la préparation du cas de test

  7. Sélectionnez Terminer pour créer le cas de test.

    Screenshot that shows step to test repo.

Exécuter le cas de test

Quand le testeur SSMA exécute un cas de test, le moteur de test exécute les objets sélectionnés pour le test et génère un rapport de vérification.

  1. Sélectionnez le cas de test dans le référentiel de tests, puis sélectionnez Exécuter.

    Screenshot that shows to review test repo.

  2. Passez en revue le cas de test de lancement, puis sélectionnez Exécuter.

    Screenshot that shows step to launch test case.

  3. Ensuite, indiquez les informations d’identification de la source Oracle. Sélectionnez Connecter après avoir entré les informations d’identification.

    Screenshot that shows step to connect to oracle source.

  4. Indiquez les informations d’identification de la base de données SQL Server cible, puis sélectionnez Connecter.

    Screenshot that shows step to connect to sql target.

    Si l’opération réussit, le cas de test passe à l’étape d’initialisation.

  5. Une barre de progression en temps réel montre l’état d’exécution du test.

    Screenshot that shows tester test progress.

  6. Passez en revue le rapport une fois le test terminé. Le rapport fournit les statistiques, indique les erreurs éventuelles survenues pendant l’exécution du test et inclut des informations détaillées.

    Screenshot that shows a sample tester test report

  7. Sélectionnez Détails pour obtenir plus d’informations.

    Exemple de validation de données positive.

    Screenshot that shows a sample tester success report.

    Exemple d’échec de validation de données.

    Screenshot that shows tester failure report.

Optimiser

La phase de post-migration est cruciale pour résoudre les problèmes d’exactitude des données et vérifier leur exhaustivité. Elle est également essentielle pour résoudre les problèmes de performance de la charge de travail.

Notes

Pour plus d’informations sur ces problèmes et les étapes spécifiques permettant de les atténuer, consultez le guide de validation et d’optimisation post-migration.

Ressources de migration

Pour plus d’aide dans la réalisation de ce scénario de migration, consultez les ressources suivantes, qui ont été développées dans le cadre d’un projet de migration réel.

Titre/lien Description
Outil et modèle d’évaluation de charge de travail de données Cet outil fournit des suggestions pour les plateformes cibles, la préparation du cloud et le niveau de correction des applications/bases de données qui sont les mieux adaptés pour une charge de travail donnée. Il propose des fonctionnalités de génération de rapports et de calculs simples en un clic qui permettent d’accélérer l’évaluation des grands patrimoines en fournissant un processus automatisé et uniforme de prise de décision concernant la plateforme cible.
Artefacts de script d’inventaire Oracle Cette ressource inclut une requête PL/SQL qui interroge les tables du système Oracle et fournit un nombre d’objets par type de schéma, type d’objet et état. Elle fournit également une estimation approximative des données brutes, ainsi que du dimensionnement des tables dans chaque schéma, avec les résultats enregistrés dans un fichier au format CSV.
Automatiser la collecte et la consolidation d’évaluation Oracle pour l’outil SSMA Cet ensemble de ressources utilise un fichier .csv comme entrée (sources.csv dans les dossiers de projet) pour produire les fichiers XML dont vous avez besoin pour exécuter une évaluation SSMA en mode console. Vous fournissez le fichier source.csv en faisant l’inventaire des instances Oracle existantes. Les fichiers de sortie sont AssessmentReportGeneration_source_1.xml, ServersConnectionFile.xml et VariableValueFile.xml.
Problèmes avec SSMA et solutions possibles lors de la migration de bases de données Oracle Oracle vous permet d’attribuer une condition non scalaire dans une clause WHERE. SQL Server ne prend pas en charge ce type de condition. Par conséquent, SSMA pour Oracle ne convertit pas les requêtes qui ont une condition non scalaire dans la clause WHERE. Au lieu de cela, il génère une erreur : O2SS0001. Ce livre blanc fournit des informations sur le problème et les manières de le résoudre.
Guide de migration d’Oracle vers SQL Server Ce document se concentre sur les tâches associées à la migration d’un schéma Oracle vers la dernière version de SQL Server. Si la migration nécessite des modifications de caractéristiques ou de fonctionnalités, vous devez examiner attentivement l’effet possible de chacune d’elles sur les applications qui utilisent la base de données.
Oracle vers SQL Server - Utilitaire Comparaison de bases de données SSMA pour Oracle Tester est l’outil recommandé pour valider automatiquement la conversion des objets de base de données et la migration des données, et il s’agit d’un sur-ensemble de fonctionnalités de l’utilitaire Comparaison de bases de données.

Si vous recherchez une autre option de validation des données, vous pouvez utiliser l’utilitaire Comparaison de bases de données pour comparer des données au niveau des lignes ou des colonnes dans l’ensemble des tables, des lignes et des colonnes sélectionnées.

L’équipe d’ingénierie SQL des données a développé ces ressources. La charte fondamentale de cette équipe a pour objet d’initier et d’accélérer une modernisation complexe et de faire face aux projets de migration de plateforme de données vers la plateforme de données Microsoft Azure.

Étapes suivantes