Guide de migration : Oracle vers Azure SQL Database

S’applique à Azure SQL Database

Ce guide vous apprend à migrer votre schéma Oracle vers Azure SQL Database à l’aide de l’outil Assistant Migration SQL Server pour Oracle (SSMA pour Oracle).

Pour obtenir d’autres guides de migration, consultez les Guides de migration de base de données Azure.

Important

Essayez la nouvelle extension Évaluation de la migration de base de données pour Oracle dans Azure Data Studio pour la pré-évaluation de la migration d’Oracle vers SQL et la catégorisation des charges de travail. Si vous vous trouvez en phase initiale de migration d’Oracle vers SQL et que vous devez effectuer une évaluation de haut niveau des charges de travail, que le dimensionnement de la cible Azure SQL pour la charge de travail Oracle vous intéresse ou que vous souhaitez comprendre la parité de migration des fonctionnalités, essayez la nouvelle extension. Pour obtenir une évaluation et une conversion détaillées du code, poursuivez avec SSMA pour Oracle.

Prérequis

Avant de commencer la migration de votre schéma Oracle vers SQL Database :

Prémigration

Une fois que vous avez rempli les prérequis, vous êtes prêt à découvrir la topologie de votre environnement et à évaluer la faisabilité de votre migration vers le cloud Azure. Cette partie du processus inclut de dresser l’inventaire des bases de données que vous devez migrer, d’évaluer celles-ci en lien avec des problèmes de migration ou des blocages potentiels, et de résoudre les problèmes que vous pourriez avoir découverts.

Évaluer

L’Assistant SSMA pour Oracle vous permet d’examiner les données et objets de base de données, d’évaluer les bases de données en vue de leur migration, de migrer des objets de base de données vers SQL Database et, enfin, de migrer des données vers la base de données.

Pour créer une évaluation :

  1. Ouvrez SSMA pour Oracle.

  2. Sélectionnez Fichier, puis Nouveau projet.

  3. Entrez un nom de projet et un emplacement où enregistrer votre projet. Sélectionnez ensuite Azure SQL Database en tant que cible de migration dans la liste déroulante, puis sélectionnez OK.

    Screenshot that shows Connect to Oracle.

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

  5. Sélectionnez les schémas Oracle à migrer.

    Screenshot that shows selecting Oracle schema.

  6. Dans l’explorateur de métadonnées Oracle, cliquez avec le bouton droit sur le schéma Oracle à migrer, puis sélectionnez Créer un rapport pour générer un rapport HTML. Vous pouvez également sélectionner une base de données, puis sélectionner l’onglet Créer un rapport.

    Screenshot that shows Create Report.

  7. Examinez le rapport HTML pour comprendre les statistiques de conversion et les erreurs ou avertissements. Vous pouvez également ouvrir le rapport dans Excel pour obtenir un inventaire des objets Oracle et de 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, consultez drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2020_11_12T02_47_55\.

    Screenshot that shows an Assessment report.

Valider les types de données

Validez les mappages de types de données par défaut et changez-les en fonction des exigences, si nécessaire. Pour ce faire, procédez comme suit :

  1. Dans SSMA pour Access, sélectionnez Outils, puis Paramètres du projet.

  2. Sélectionnez l’onglet Mappage de types.

    Screenshot that shows Type Mapping.

  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

  1. (Facultatif) Ajoutez des requêtes dynamiques ou ad hoc à des instructions. Cliquez avec le bouton droit sur le nœud, puis sélectionnez Ajouter des instructions.

  2. Sélectionnez l’onglet Connexion à Azure SQL Database.

    1. Dans SQL Database, entrez les détails de connexion pour connecter votre base de données.
    2. Choisissez votre instance SQL Database cible dans la liste déroulante ou entrez un nouveau nom. Dans ce cas, une base de données est créée sur le serveur cible.
    3. Entrez les détails de l’authentification, puis sélectionnez Connecter.

    Screenshot that shows Connect to Azure SQL Database.

  3. Dans l’explorateur de métadonnées Oracle, cliquez avec le bouton droit sur le schéma Oracle, puis sélectionnez Convertir le schéma. Vous pouvez également sélectionner votre schéma, puis sélectionner l’onglet Convertir le schéma.

    Screenshot that shows Convert Schema.

  4. Une fois la conversion terminée, comparez et examinez les objets convertis aux objets d’origine afin d’identifier les problèmes potentiels et de les traiter en fonction des recommandations.

    Screenshot that shows the Review recommendations schema.

  5. Comparez le texte Transact-SQL converti aux procédures stockées d’origine, puis passez en revue les recommandations.

    Screenshot that shows the Review recommendations.

  6. Dans le volet de sortie, sélectionnez Passer en revue les recommandations, puis examinez les erreurs dans le volet Liste d’erreurs.

  7. Enregistrez le projet localement pour un exercice de correction de schéma hors connexion. Dans le menu Fichier, sélectionnez 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 votre base de données SQL Database.

Migrer

Une fois que vous avez évalué vos bases de données et résolu les incohérences, l’étape suivante consiste à exécuter le processus de migration. 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 :

  1. Publiez le schéma en cliquant avec le bouton droit sur la base de données dans le nœud Bases de données de l’Explorateur de métadonnées Azure SQL Database, puis en sélectionnant Synchroniser avec la base de données.

    Screenshot that shows Synchronize with Database.

  2. Révisez le mappage entre votre projet source et votre cible.

    Screenshot that shows Synchronize with the Database review.

  3. Migrez les données en cliquant avec le bouton droit sur la base de données ou l’objet que vous souhaitez migrer dans l’explorateur de métadonnées Oracle, puis en sélectionnant Migrer les données. Vous pouvez également sélectionner l’onglet Migrer les données. Pour migrer des données pour une base de données entière, activez la case à cocher en regard 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 Migrate Data.

  4. Entrez les informations de connexion pour Oracle et SQL Database.

  5. Une fois la migration terminée, affichez le Rapport de migration des données.

    Screenshot that shows the Data Migration Report.

  6. Connectez-vous à votre instance SQL Database à l’aide de SQL Server Management Studio, puis validez la migration en révisant les données et le schéma.

    Screenshot that shows validation in SQL Server Management Studio.

Vous pouvez également utiliser SQL Server Integration Services pour effectuer la migration. 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 la source doivent commencer à consommer la cible. Dans certains cas, l’exécution de cette tâche requiert d’apporter des modifications aux applications.

Data Access Migration Toolkit est une extension pour Visual Studio Code qui 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 serveur principal de la base de données. Pour en savoir plus, consultez le billet de blog sur la migration de vos applications Java à partir d’Oracle.

Effectuer des tests

L’approche de test pour la migration de base de données comprend les activités suivantes :

  1. Développer des tests de validation : pour tester la migration d’une base de données, vous devez utiliser des requêtes SQL. Vous devez créer les 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 des tests 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 to create new test case.

  2. Saisissez les informations suivantes pour le nouveau cas de test :

    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 steps 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. Modifiez l’ordre en cliquant sur 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, consultez Terminer la préparation du cas de test.

  7. Cliquez sur 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 cliquez sur Exécuter.

    Screenshot that shows to review test repo.

  2. Passez en revue le cas de test de lancement, puis cliquez sur Exécuter.

    Screenshot that shows step to run test case

  3. Ensuite, indiquez les informations d’identification de la source Oracle. Cliquez sur 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 cliquez sur 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. Cliquez sur 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 postmigration est cruciale pour résoudre les problèmes de justesse et d’exhaustivité des données ainsi que pour gérer les problèmes de performances liés à la charge de travail.

Notes

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

Ressources de migration

Pour plus d’informations sur l’exécution de ce scénario de migration, consultez les ressources suivantes. Elles ont été développées pour soutenir un engagement de 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 les évaluations d’un vaste domaine en fournissant un processus de décision de plateforme cible automatisé et uniforme.
Artefacts de script d’inventaire Oracle Cette ressource inclut une requête PL/SQL qui interroge les tables 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 en tant qu’entrée (sources.csv dans les dossiers de projet) pour produire les fichiers xml nécessaires à l’exécution d’une évaluation SSMA en mode console. Le fichier source.csv est fourni par le client sur la base d’un inventaire des instances Oracle existantes. Les fichiers de sortie sont AssessmentReportGeneration_source_1.xml, ServersConnectionFile.xml et VariableValueFile.xml.
Oracle vers SQL DB - 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 Azure Data de Microsoft.

Étapes suivantes