Migrez une PeopleSoft base de données Oracle vers AWS en utilisant AWS DMS - Recommandations AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Migrez une PeopleSoft base de données Oracle vers AWS en utilisant AWS DMS

Créée par sampath kathirvel () AWS

Environnement : Production

Source : Oracle PeopleSoft

Cible : Amazon RDS pour Oracle

Type R : Replateforme

Charge de travail : Oracle

Technologies : migration ; bases de données

AWSservices : AWS DMS ; Amazon RDS

Récapitulatif

Oracle PeopleSoft est une solution de planification des ressources d'entreprise (ERP) pour les processus à l'échelle de l'entreprise. PeopleSoft possède une architecture à trois niveaux : client, application et base de données. PeopleSoft peut être exécuté sur Amazon Relational Database Service (RDSAmazon).

Si vous migrez votre base de données Oracle vers AmazonRDS, Amazon Web Services (AWS) peut prendre en charge les tâches de sauvegarde et la haute disponibilité, vous laissant ainsi libre de vous concentrer sur la maintenance de votre PeopleSoft application et de ses fonctionnalités. Pour une liste complète des facteurs clés à prendre en compte lors du processus de migration, consultez les stratégies de migration des bases de données Oracle dans les directives AWS prescriptives.

Ce modèle fournit une solution pour migrer vos bases de données Oracle sur site vers Amazon RDS for Oracle à l'aide d'Oracle Data Pump avec AWSDatabase Migration Service (AWSDMS) et de sa fonction de capture des données de modification (CDC).

Lors de la migration d'ERPapplications critiques telles qu'Oracle PeopleSoft, il est essentiel de minimiser les temps d'arrêt. AWSDMSminimise les temps d'arrêt en prenant en charge à la fois le chargement complet et la réplication continue de la base de données source vers la base de données cible. AWSDMSfournit également une surveillance et un enregistrement en temps réel de la migration, ce qui peut vous aider à identifier et à résoudre les problèmes susceptibles de provoquer des interruptions de service.

Lorsque vous répliquez des modifications avec AWSDMS, vous devez spécifier une heure ou un numéro de modification du système (SCN) comme point de départ AWS DMS pour lire les modifications dans les journaux de base de données. Il est essentiel de garder ces journaux accessibles sur le serveur pendant un certain temps afin de garantir que celui-ci AWS DMS a accès à ces modifications.

Conditions préalables et limitations

Prérequis

  • Vous avez provisionné la base de données Amazon RDS pour Oracle dans votre environnement AWS cloud en tant que base de données cible.

  • Une PeopleSoft base de données Oracle exécutée sur site ou sur Amazon Elastic Compute Cloud (AmazonEC2) dans le AWS cloud.

    Remarque : Ce modèle est conçu pour la migration depuis un environnement local versAWS, mais il a été testé à l'aide d'Oracle Database sur une EC2 instance Amazon. Pour effectuer une migration depuis un environnement local, vous devez configurer la connectivité réseau appropriée.

  • Détails du schéma. Lors de la migration d'une PeopleSoft application Oracle vers Amazon RDS pour Oracle, il est nécessaire d'identifier le schéma de base de données Oracle (par exempleSYSADM) à migrer. Avant de démarrer le processus de migration, collectez les informations suivantes sur le schéma :

    • Size

    • Le nombre d'objets par type d'objet

    • Le nombre d'objets non valides.

    Ces informations faciliteront le processus de migration.

Limites

  • Ce scénario a été testé uniquement avec la PeopleSoft DEMO base de données. Il n'a pas été testé avec un grand ensemble de données.

Architecture

Le schéma suivant montre une instance exécutant une base de données Oracle en tant que base de données source et une base de données Amazon RDS for Oracle en tant que base de données cible. Les données sont exportées et importées de la base de données Oracle source vers la base de données Amazon RDS pour Oracle cible à l'aide d'Oracle Data Pump et répliquées pour les CDC modifications à l'aide AWS DMS de.

Processus en cinq étapes, de l'instance de base de données sur site à Amazon. RDS
  1. La première étape consiste à extraire les données de la base de données source à l'aide d'Oracle Data Pump, puis à les envoyer à la base de données cible Amazon RDS pour Oracle.

  2. Les données sont envoyées de la base de données source à un point de terminaison source dans AWSDMS.

  3. À partir du point de terminaison source, les données sont envoyées à l'instance de AWS DMS réplication, où la tâche de réplication est exécutée.

  4. Une fois la tâche de réplication terminée, les données sont envoyées au point de terminaison cible dans AWSDMS.

  5. À partir du point de terminaison cible, les données sont envoyées à l'instance de base de données Amazon RDS pour Oracle.

Outils

AWSservices

Autres services

  • Oracle Data Pump vous aide à déplacer des données et des métadonnées d'une base de données à une autre à grande vitesse.

Bonnes pratiques

Migration LOBs

Si votre base de données source contient de gros objets binaires (LOBs) qui doivent être migrés vers la base de données cible, AWS DMS propose les options suivantes :

  • LOBMode complet : AWS DMS migre tous les éléments LOBs de la base de données source vers la base de données cible, quelle que soit leur taille. Bien que la migration soit plus lente, l'avantage est que les données ne sont pas tronquées. Pour de meilleures performances, vous pouvez créer une tâche distincte sur la nouvelle instance de réplication afin de migrer les tables dont la taille est LOBs supérieure à quelques mégaoctets.

  • LOBMode limité : vous spécifiez la taille maximale des données de LOB colonne, ce qui permet AWS DMS de préallouer des ressources et de les appliquer LOBs en bloc. Si la taille des LOB colonnes dépasse la taille spécifiée dans la tâche, les données sont AWS DMS tronquées et des avertissements sont envoyés au fichier AWS DMS journal. Vous pouvez améliorer les performances en utilisant le LOB mode Limité si la taille de vos LOB données se situe dans les limites de la LOB taille limitée.

  • LOBMode en ligne : vous pouvez migrer LOBs sans tronquer les données ni ralentir les performances de votre tâche en répliquant à la fois les petites et les grandes tâches. LOBs Spécifiez d'abord une valeur pour le InlineLobMaxSize paramètre, qui n'est disponible que lorsque le LOB mode complet est défini sur true. La AWS DMS tâche transfère le petit LOBs en ligne, ce qui est plus efficace. Fait ensuite AWS DMS migrer le fichier volumineux LOBs en effectuant une recherche dans la table source. Cependant, le LOB mode Inline ne fonctionne que pendant la phase de chargement complet.

Génération de valeurs de séquence

N'oubliez pas que pendant le processus de capture des données de modification avec AWSDMS, les numéros de séquence incrémentiels ne sont pas répliqués à partir de la base de données source. Pour éviter les différences dans les valeurs de séquence, vous devez générer la valeur de séquence la plus récente à partir de la source pour toutes les séquences et l'appliquer à la base de données Amazon RDS pour Oracle cible.

Gestion des accréditations

Pour sécuriser vos AWS ressources, nous vous recommandons de suivre les meilleures pratiques en matière AWS d'Identity and Access Management (IAM).

Épopées

TâcheDescriptionCompétences requises

Téléchargez le modèle .

Téléchargez le AWS CloudFormation modèle DMS_instance.yaml pour provisionner l'instance de AWS DMS réplication et ses points de terminaison source et cible.

Administrateur du cloud, DBA

Commencez la création de la pile.

  1. Sur la console AWS de gestion, choisissez CloudFormation.

  2. Sélectionnez Créer la pile.

  3. Dans Spécifier le modèle, sélectionnez Charger un modèle de fichier.

  4. Choisissez Choisir un fichier.

  5. Choisissez le DMS_instance.yaml fichier.

  6. Choisissez Suivant.

Administrateur du cloud, DBA

Spécifiez les paramètres.

  1. Dans le champ Nom de la pile, entrez le nom de la pile.

  2. Sous Paramètres de l'AWSDMSinstance, entrez les paramètres suivants :

    • DMSInstanceType— Choisissez l'instance requise pour l'instance de AWS DMS réplication, en fonction des besoins de votre entreprise.

    • DMSStorageSize— Entrez la taille de stockage de l'AWSDMSinstance, en fonction de la taille de votre migration.

  3. Dans Configuration de la base de données Oracle source, entrez les paramètres suivants :

    • SourceOracleEndpointID : nom du serveur de base de données Oracle source

    • SourceOracleDatabaseName— Le nom du service de base de données source ou l'ID de session (SID), le cas échéant

    • SourceOracleUserName— Le nom d'utilisateur de la base de données source (le nom par défaut est system)

    • SourceOracleDBPassword— Le mot de passe du nom d'utilisateur de la base de données source

    • SourceOracleDBPort— Le port de la base de données source

  4. Sous Configuration de la base de données Target RDS for Oracle, entrez les paramètres suivants :

    • T argetRDSOracle EndpointId — Point de terminaison de la base de données cible RDS

    • T argetRDSOracle DatabaseName — Le nom de la RDS base de données cible

    • T argetRSOracle UserName — Le RDS nom d'utilisateur cible

    • T argetRDSOracle DBPassword — Le mot de RDS passe cible

    • TargetOracleDBPort— Le port de RDS base de données cible

  5. Sous VPCConfiguration du sous-réseau et du groupe de sécurité, entrez les paramètres suivants :

    • VPCID— Le VPC pour l'instance de réplication

    • VPCSecurityGroupId— Le groupe VPC de sécurité pour l'instance de réplication

    • DMSSubnet1— Le sous-réseau de la zone de disponibilité 1

    • DMSSubnet2— Le sous-réseau de la zone de disponibilité 2

  6. Choisissez Suivant.

Administrateur du cloud, DBA

Créez la pile.

  1. Sur la page Configurer les options de pile, pour les balises, entrez des valeurs facultatives.

  2. Choisissez Suivant.

  3. Sur la page Révision, vérifiez les informations, puis choisissez Soumettre.

Le provisionnement devrait être terminé en 5 à 10 minutes environ. Elle est terminée lorsque la page AWS CloudFormation Stacks affiche CREATE_ COMPLETE.

Administrateur du cloud, DBA

Configurez les points de terminaison.

  1. Dans la console AWS de gestion, sélectionnez Database Migration Services.

  2. Sous Gestion des ressources, sélectionnez Instances de réplication.

  3. Sous Gestion des ressources, sélectionnez Endpoints.

Administrateur du cloud, DBA

Testez la connectivité.

Une fois que les points de terminaison source et cible ont affiché le statut Actif, testez la connectivité. Choisissez Exécuter le test pour chaque point de terminaison (source et cible) pour vous assurer que l'état indique que l'état est réussi.

Administrateur du cloud, DBA
TâcheDescriptionCompétences requises

Générez leSCN.

Lorsque la base de données source est active et utilisée par l'application, lancez l'exportation des données avec Oracle Data Pump. Vous devez d'abord générer un numéro de modification du système (SCN) à partir de la base de données source pour garantir la cohérence des données lors de l'exportation avec Oracle Data Pump et comme point de départ pour la capture des données de modification dans AWSDMS.

Pour générer le courant à SCN partir de votre base de données source, entrez l'SQLinstruction suivante.

SQL> select name from v$database; SQL> select name from v$database; NAME --------- PSFTDMO SQL> SELECT current_scn FROM v$database; CURRENT_SCN ----------- 23792008

Enregistrez les données générées SCN pour les utiliser lorsque vous exportez les données et pour créer la tâche de AWS DMS réplication.

DBA

Créez le fichier de paramètres.

Pour créer un fichier de paramètres pour exporter le schéma, vous pouvez utiliser le code suivant.

$ cat exp_datapmp.par userid=system/******* directory=DATA_PUMP_DIR logfile=export_dms_sample_user.log dumpfile=export_dms_sample_data_%U.dmp schemas=SYSADM flashback_scn=23792008

Remarque : Vous pouvez également définir le vôtre DATA_PUMP_DIR en utilisant les commandes suivantes, en fonction de vos besoins.

SQL> CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS '/opt/oracle/product/19c/dbhome_1/dmsdump/'; Directory created. SQL> GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO system; Grant succeeded. SQL> SQL> SELECT owner, directory_name, directory_path FROM dba_directories WHERE directory_name='DATA_PUMP_DIR'; OWNER DIRECTORY_NAME DIRECTORY_PATH ------------------------------------------------------------------------------------------------------------------ SYS DATA_PUMP_DIR /opt/oracle/product/19c/dbhome_1/dmsdump/
DBA

Exportez le schéma.

Pour effectuer l'exportation, utilisez l'expdputilitaire.

$ expdp parfile=exp_datapmp.par ....................... Transferring the dump file with DBMS_FILE_TRANSFER to Target: . . exported "SYSADM"."PS_XML_TEMPLT_LNG" 6.320 KB 0 rows . . exported "SYSADM"."PS_XML_TEMPLT_LNK" 6.328 KB 0 rows . . exported "SYSADM"."PS_XML_XLATDEF_LNG" 6.320 KB 0 rows . . exported "SYSADM"."PS_XML_XLATITM_LNG" 7.171 KB 0 rows . . exported "SYSADM"."PS_XPQRYRUNCNTL" 7.601 KB 0 rows . . exported "SYSADM"."PS_XPQRYRUNPARM" 7.210 KB 0 rows . . exported "SYSADM"."PS_YE_AMOUNTS" 9.351 KB 0 rows . . exported "SYSADM"."PS_YE_DATA" 16.58 KB 0 rows . . exported "SYSADM"."PS_YE_EE" 6.75 KB 0 rows . . exported "SYSADM"."PS_YE_W2CP_AMOUNTS" 9.414 KB 0 rows . . exported "SYSADM"."PS_YE_W2CP_DATA" 20.94 KB 0 rows . . exported "SYSADM"."PS_YE_W2C_AMOUNTS" 10.27 KB 0 rows . . exported "SYSADM"."PS_YE_W2C_DATA" 20.95 KB 0 rows . . exported "SYSADM"."PS_ZBD_JOBCODE_TBL" 14.60 KB 0 rows . . exported "SYSADM"."PTGRANTTBL" 5.468 KB 0 rows Master table "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded ** Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is: /opt/oracle/product/19c/dbhome_1/dmsdump/export_dms_sample_data_01.dmp Job "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully completed at Mon Dec 19 20:13:57 2022 elapsed 0 00:38:22
DBA
TâcheDescriptionCompétences requises

Transférez le fichier de vidage vers l'instance cible.

Pour transférer vos fichiers à l'aide deDBMS_FILE_TRANSFER, vous devez créer un lien de base de données entre la base de données source et l'instance Amazon RDS pour Oracle. Une fois le lien établi, vous pouvez utiliser l'utilitaire pour transférer les fichiers Data Pump directement vers l'RDSinstance.

Vous pouvez également transférer les fichiers Data Pump vers Amazon Simple Storage Service (Amazon S3), puis les importer dans l'instance RDS Amazon pour Oracle. Pour plus d'informations sur cette option, consultez la section Informations supplémentaires.

Pour créer un lien de base de données ORARDSDB qui se connecte à l'utilisateur RDS principal Amazon sur l'instance de base de données cible, exécutez les commandes suivantes sur la base de données source.

$sqlplus / as sysdba $ SQL> create database link orardsdb connect to admin identified by "*****" using '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = testpsft.*******.us-west-2.rds.amazonaws.com)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl)))'; Database link created.
DBA

Testez le lien de base de données.

Testez le lien de base de données pour vous assurer que vous pouvez vous connecter via sqlplus à la base de données cible Amazon RDS pour Oracle.

SQL> SQL> select name from v$database@orardsdb; NAME --------- ORCL SQL>
DBA

Transférez le fichier de vidage vers la base de données cible.

Pour copier le fichier dump dans la base de données Amazon RDS pour Oracle, vous pouvez soit utiliser le DATA_PUMP_DIR répertoire par défaut, soit créer votre propre répertoire à l'aide du code suivant.

exec rdsadmin.rdsadmin_util.create_directory(p_directory_name => ‘TARGET_PUMP_DIR’);

Le script suivant copie un fichier de vidage nommé export_dms_sample_data_01.dmp depuis l'instance source vers une base de données Amazon RDS pour Oracle cible à l'aide du lien de base de données nomméorardsdb.

$ sqlplus / as sysdba SQL> BEGIN DBMS_FILE_TRANSFER.PUT_FILE( source_directory_object => 'DATA_PUMP_DIR', source_file_name => 'export_dms_sample_data_01.dmp', destination_directory_object => 'TARGET_PUMP_DIR’', destination_file_name => 'export_dms_sample_data_01.dmp', destination_database => 'orardsdb' ); END; / PL/SQL procedure successfully completed.
DBA

Répertoriez le fichier de vidage dans la base de données cible.

Une fois la SQL procédure PL/ terminée, vous pouvez répertorier le fichier de vidage de données dans la base de données Amazon RDS pour Oracle en utilisant le code suivant.

SQL> select * from table (rdsadmin.rds_file_util.listdir(p_directory => ‘TARGET_PUMP_DIR’));
DBA

Lancez l'importation sur la base de données cible.

Avant de commencer le processus d'importation, configurez les rôles, les schémas et les espaces disque logiques sur la base de données Amazon RDS pour Oracle cible à l'aide du fichier de vidage de données.

Pour effectuer l'importation, accédez à la base de données cible avec le compte utilisateur RDS principal Amazon et utilisez le nom de la chaîne de connexion dans le tnsnames.ora fichier, qui inclut la base de données Amazon RDS pour Oracletns-entry. Si nécessaire, vous pouvez inclure une option de remappage pour importer le fichier de vidage de données dans un autre tablespace ou sous un autre nom de schéma.

Pour démarrer l'importation, utilisez le code suivant.

impdp admin@orardsdb directory=TARGET_PUMP_DIR logfile=import.log dumpfile=export_dms_sample_data_01.dmp

Pour garantir le succès de l'importation, vérifiez que le fichier journal d'importation ne contient aucune erreur et vérifiez les détails tels que le nombre d'objets, le nombre de lignes et les objets non valides. Si des objets ne sont pas valides, recompilez-les. Comparez également les objets de base de données source et cible pour vérifier qu'ils correspondent.

DBA
TâcheDescriptionCompétences requises

Créez la tâche de réplication.

Créez la tâche de AWS DMS réplication en procédant comme suit :

  1. Sur la AWS DMS console, sous Conversion et migration, sélectionnez Tâche de migration de base de données.

  2. Sous Configuration des tâches, dans Identifiant de tâche, entrez votre identifiant de tâche.

  3. Pour Instance de réplication, choisissez l'instance de DMS réplication que vous avez créée.

  4. Pour Point de terminaison de base de données source, choisissez votre point de terminaison source.

  5. Pour le point de terminaison de base de données cible, choisissez votre base de données Amazon RDS pour Oracle cible.

  6. Pour le type de migration, sélectionnez Répliquer uniquement les modifications de données. Si vous recevez un message indiquant que la journalisation supplémentaire doit être activée, suivez les instructions de la section Informations supplémentaires.

  7. Sous Paramètres des tâches, sélectionnez Spécifier le numéro de séquence du journal.

  8. Pour le numéro de modification du système, entrez la base de données Oracle SCN que vous avez générée à partir de la base de données Oracle source.

  9. Choisissez Activer la validation.

  10. Choisissez Activer CloudWatch les journaux.

    En activant cette fonctionnalité, vous pouvez valider les données et les CloudWatch journaux Amazon pour consulter les journaux des instances de AWS DMS réplication.

  11. Sous Règles de sélection, complétez les informations suivantes :

    • Pour Schéma, choisissez Enter a schema.

    • Pour le nom du schéma, entrez SYSADM.

    • Dans le champ Nom de la table, entrez %.

    • Pour Action, choisissez Inclure.

  12. Sous Règles de transformation, effectuez les opérations suivantes :

    • Pour Target, choisissez Table.

    • Pour Nom du schéma, choisissez Entrer un schéma.

    • Pour le nom du schéma, entrezSYSADM.

    • Pour Action, choisissez Renommer en.

  13. Choisissez Créer tâche.

Une fois que vous avez créé la tâche, elle migre CDC vers l'instance de base de données Amazon RDS pour Oracle à partir de celle SCN que vous avez fournie en mode CDC démarrage. Vous pouvez également vérifier en consultant les CloudWatch journaux.

Administrateur du cloud, DBA
TâcheDescriptionCompétences requises

Validez le transfert de données.

Une fois la AWS DMS tâche lancée, vous pouvez consulter l'onglet Tableau des statistiques de la page Tâches pour voir les modifications apportées aux données.

Vous pouvez surveiller l'état de la réplication en cours dans la console sur la page des tâches de migration de base de données.

Pour plus d'informations, consultez la section Validation AWS DMS des données.

Administrateur du cloud, DBA
TâcheDescriptionCompétences requises

Arrêtez la réplication.

Interrompre la procédure de réplication et arrêter les services de l'application source.

Administrateur du cloud, DBA

Lancez le niveau PeopleSoft intermédiaire.

Lancez l'application cible de niveau PeopleSoft intermédiaire dans AWS et dirigez-la vers la base de données Amazon RDS pour Oracle récemment migrée.

Lorsque vous accédez à l'application, vous devez remarquer que toutes les connexions de l'application sont désormais établies avec la base de données Amazon RDS pour Oracle.

DBA, PeopleSoft administrateur

Désactivez la base de données source.

Après avoir confirmé qu'il n'existe plus de connexions à la base de données source, celle-ci peut être désactivée.

DBA

Ressources connexes

Informations supplémentaires

Transférer des fichiers à l'aide d'Amazon S3

Pour transférer les fichiers vers Amazon S3, vous pouvez utiliser la console AWS CLI ou la console Amazon S3. Après avoir transféré les fichiers vers Amazon S3, vous pouvez utiliser l'instance Amazon RDS for Oracle pour importer les fichiers Data Pump depuis Amazon S3.

Si vous choisissez de transférer le fichier de vidage en utilisant l'intégration Amazon S3 comme méthode alternative, effectuez les étapes suivantes :

  1. Créez un compartiment S3.

  2. Exportez les données de la base de données source à l'aide d'Oracle Data Pump.

  3. Téléchargez les fichiers Data Pump dans le compartiment S3.

  4. Téléchargez les fichiers Data Pump depuis le compartiment S3 vers la base de données Amazon RDS pour Oracle cible.

  5. Effectuez l'importation à l'aide des fichiers Data Pump.

Remarque : pour transférer des fichiers de données volumineux entre S3 et RDS des instances, il est recommandé d'utiliser la fonctionnalité Amazon S3 Transfer Acceleration.

Activer la journalisation supplémentaire

Si vous recevez un message d'avertissement vous demandant d'activer la journalisation supplémentaire dans la base de données source pour une réplication continue, procédez comme suit.

SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;