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.
Comprendre les paramètres de conversion d'Oracle vers PostgreSQL
Les paramètres de conversion Oracle vers PostgreSQL dans la conversion de schéma DMS sont les suivants :
-
Pour convertir les objets de base de données applicables à l'aide de l'IA générative, activez le paramètre IA générative. Les objets convertis avec succès à l'aide de l'IA générative seront clairement identifiés grâce à l'élément d'action 5444, qui stipule : « Cette conversion utilise des modèles d'apprentissage automatique qui génèrent des prédictions basées sur des modèles de données. » Pour plus d'informations, consultez la section Conversion d'objets de base de données avec l'IA générative.
-
Vous pouvez convertir les schémas correspondant aux différentes versions prises en charge de votre base de données cible, et pas uniquement à la version la plus récente. Pour spécifier une version, utilisez le paramètre de version du moteur cible. Les options de conversion disponibles varient en fonction de la version du moteur que vous sélectionnez. Actuellement, les versions 14 et 15 de PostgreSQL sont prises en charge (leurs paramètres sont identiques). Notez que l'utilisation d'une version du moteur cible lors de la conversion du schéma différente de la version spécifiée dans ce paramètre peut entraîner des problèmes de compatibilité et des erreurs lors de l'exécution de l'opération Appliquer à la cible.
-
-
AWS DMS peut convertir les vues matérialisées Oracle en tables ou en vues matérialisées sur PostgreSQL. Pour Vues matérialisées, choisissez le mode de conversion de vos vues matérialisées sources.
-
Votre base de données Oracle source peut utiliser la pseudocolonne
ROWID
. PostgreSQL ne prend pas en charge de fonctionnalité similaire. La conversion de schéma DMS peut émuler la pseudocolonneROWID
dans le code converti à l’aide du type de donnéesbigint
oucharacter varying
. Pour ce faire, choisissez Utiliser le type de données bigint pour émuler la pseudocolonne ROWID ou Utiliser le type de données character varying pour émuler la pseudocolonne ROWID pour ID de ligne.-
Pour convertir le type de données NUMBER en le type de données numérique le mieux adapté, en fonction de la précision et de l'échelle, vous pouvez sélectionner Utiliser le mappage de type de données optimisé pour les colonnes du type de données NUMBER.
-
-
Si votre code Oracle source n’utilise pas la pseudocolonne
ROWID
, choisissez Ne pas générer. Dans ce cas, le code converti fonctionne plus rapidement. -
Votre code Oracle source peut inclure les fonctions
TO_CHAR
,TO_DATE
etTO_NUMBER
avec des paramètres que PostgreSQL ne prend pas en charge. Par défaut, la conversion de schéma DMS émule l’utilisation de ces paramètres dans le code converti.Vous pouvez utiliser les fonctions
TO_CHAR
,TO_DATE
etTO_NUMBER
PostgreSQL natives lorsque votre code Oracle source ne contient pas de paramètres non pris en charge par PostgreSQL. Dans ce cas, le code converti fonctionne plus rapidement. Pour ce faire, sélectionnez les valeurs suivantes :-
Utiliser une fonction PostgreSQL TO_CHAR native
-
Utiliser une fonction PostgreSQL TO_DATE native
-
Utiliser une fonction PostgreSQL TO_NUMBER native
-
-
Votre base de données et vos applications peuvent s’exécuter dans différents fuseaux horaires. Par défaut, la conversion de schéma DMS émule les fuseaux horaires dans le code converti. Toutefois, vous n’avez pas besoin de cette émulation lorsque votre base de données et vos applications utilisent le même fuseau horaire. Dans ce cas, sélectionnez Améliorer les performances du code converti lorsque la base de données et les applications utilisent le même fuseau horaire.
-
Pour continuer à utiliser des séquences dans votre code converti, sélectionnez Remplir les séquences converties avec la dernière valeur générée côté source.
-
Dans certains cas, la base de données Oracle source peut uniquement stocker des valeurs entières dans les colonnes de clé primaire ou étrangère du type de données
NUMBER
. Dans ces cas, AWS DMS vous pouvez convertir ces colonnes en type deBIGINT
données. Cette approche améliore les performances de votre code converti. Pour ce faire, sélectionnez Convertir les colonnes de clé primaire et étrangère du type de données NUMBER en type de données BIGINT. Assurez-vous que votre source n’inclut pas de valeurs à virgule flottante dans ces colonnes pour éviter toute perte de données. -
Pour ignorer les déclencheurs et les contraintes désactivés dans votre code source, choisissez Convertir uniquement les déclencheurs et les contraintes actifs.
-
Vous pouvez utiliser la conversion de schéma DMS pour convertir des variables de chaîne appelées en tant que code SQL dynamique. Le code de la base de données peut modifier les valeurs de ces variables de chaîne. Pour vous assurer que cela convertit AWS DMS toujours la dernière valeur de cette variable de chaîne, sélectionnez Convertir le code SQL dynamique créé dans des routines appelées.
-
PostgreSQL versions 10 et antérieures ne prend pas en charge les procédures. Si vous n'êtes pas habitué à utiliser les procédures dans PostgreSQL AWS DMS , vous pouvez convertir les procédures Oracle en fonctions PostgreSQL. Pour ce faire, sélectionnez Convertir les procédures en fonctions.
-
Pour obtenir des informations supplémentaires sur les éléments d’action qui se sont produits, vous pouvez ajouter des fonctions spécifiques au pack d’extension. Pour ce faire, sélectionnez Ajouter des fonctions de pack d’extension qui déclenchent des exceptions définies par l’utilisateur. Choisissez ensuite les niveaux de gravité pour déclencher les exceptions définies par l’utilisateur. Assurez-vous d’appliquer le schéma du pack d’extension après avoir converti vos objets de base de données source. Pour plus d’informations sur les packs d’extension, consultez Utilisation de packs d’extension.
-
Votre base de données Oracle source peut inclure des contraintes avec les noms générés automatiquement. Si votre code source utilise ces noms, assurez-vous de sélectionner Conserver les noms des contraintes générées par le système. Si votre code source utilise ces contraintes, mais pas leur nom, désactivez cette option pour augmenter la vitesse de conversion.
-
Si vos bases de données sources et cibles s’exécutent dans des fuseaux horaires différents, la fonction qui émule la fonction Oracle intégrée
SYSDATE
renvoie des valeurs différentes de celles de la fonction source. Pour garantir que vos fonctions source et cible renvoient les mêmes valeurs, choisissez Définir le fuseau horaire de la base de données source. -
Vous pouvez utiliser les fonctions de l’extension orafce dans votre code converti. Pour ce faire, pour Routines intégrées orafce, sélectionnez les fonctions à utiliser. Pour plus d'informations sur Oracle, voir orace
on. GitHub