Chargement de données à l'aide d'Oracle Data Pump
Oracle Data Pump permet de déplacer très rapidement des données et des métadonnées en bloc entre des bases de données d'Oracle et Autonomous AI Database sur une infrastructure Exadata dédiée.
L'utilitaire d'import Data Pump permet d'importer des données depuis des fichiers Data Pomp résidant sur Oracle Cloud Infrastructure Object Storage et Oracle Cloud Infrastructure Object Storage Classic. Vous pouvez enregistrer les données dans votre banque d'objets cloud et utiliser Oracle Data Pump pour charger les données vers la base de données Autonomous AI.
Remarque : pour commencer par vérifier les éléments abordés ensuite, vous pouvez suivre l'exercice 9 sur la migration avec Data Pump dans l'atelier Oracle Autonomous AI Database Dedicated pour les administrateurs du parc.
Export des données de votre base de données Oracle existante
Commencez par utiliser l'utilitaire d'export Oracle Data Pump pour exporter les schémas Oracle Database existants. Ensuite, utilisez Oracle Data Pump Import pour les migrer vers la base de données Autonomous AI.
Oracle recommande d'utiliser les paramètres d'export Data Pump suivants pour une migration plus rapide et plus facile vers la base de données Autonomous AI :
exclude=cluster, db_link
parallel=n
schemas=schema name
dumpfile=export%l.dmp
L'utilitaire d'export Oracle Data Pump fournit plusieurs modes d'export. Oracle recommande d'utiliser le mode de schéma pour une migration vers la base de données Autonomous AI. Vous pouvez répertorier les schémas à exporter à l'aide du paramètre schemas.
Pour accélérer la migration, exportez les schémas dans plusieurs fichiers Data Pump et utilisez le parallélisme. Vous pouvez spécifier le format du nom de fichier dump à appliquer avec le paramètre dumpfile. Définissez le paramètre parallèle sur au moins le nombre d'UC dont vous disposez dans votre base de données Autonomous AI.
Les paramètres exclude et data_options garantissent que les types d'objet non disponibles dans la base de données Autonomous AI ne sont pas exportés et que les partitions des tables sont regroupées afin d'être importées plus rapidement vers Autonomous AI Database.
Remarque : Oracle recommande de collecter les statistiques à jour avant d'exécuter la commande expdp. Le package dbms_stats fournit plusieurs procédures pour collecter les dernières statistiques. Les statistiques sont automatiquement ajoutées au fichier dump d'export, et aident à déterminer la taille des objets et à optimiser le parallélisme lors de l'import. Pour plus d'informations, reportez-vous à DBMS_STATS Operational Notes dans Oracle Database 19c PL/SQL Packages and Types Reference et à Oracle Database 26ai PL/SQL Packages and Types References.
L'exemple suivant exporte le schéma SH à partir d'une base de données Oracle Database source pour la migration vers une base de données Autonomous AI avec 16 CPU :
expdp sh/sh@orcl \
exclude=cluster, db_link \
parallel=16 \
schemas=sh \
dumpfile=export%l.dmp \
encryption_pwd_prompt=yes
Remarques concernant les paramètres Data Pump :
-
Si, pendant l'export avec
expdp, vous utilisez le paramètreencryption_pwd_prompt=yes, utilisez égalementencryption_pwd_prompt=yesavec l'import et saisissez le même mot d'accès à l'inviteimpdppour décrypter les fichiers dump (n'oubliez pas le mot d'accès que vous fournissez lors de l'export). La longueur maximale du mot de passe de cryptage est de 128 octets. -
Le paramètre
dumpfileprend en charge les caractères génériques%Let%len plus des caractères génériques%Uet%uhérités. Par exemple,dumpfile=export%L.dmp.Utilisez le caractère générique
%Lou%lpour les exportations à partir d'Oracle Database version 12.2 et supérieure. Ce caractère générique étend le nom du fichier dump en un entier incrémentant de 3 à 10 chiffres, de largeur variable, commençant à 100 et se terminant à 2147483646.Utilisez le caractère générique hérité
%Uou%upour les exports à partir d'Oracle Database avant la version 12.2. Si vous utilisez cette option et que plus de 99 fichiers dump sont nécessaires, vous devez indiquer plusieurs noms de fichier dump, chacun avec le paramètre%Uou%u.
Vous pouvez utiliser d'autres paramètres d'export Data Pump, tels que compression, en fonction de vos besoins. Pour plus d'informations, reportez-vous à Export Oracle Data Pump dans Utilitaires Oracle Database 19c ou Utilitaires Oracle Database 26ai.
Téléchargement des fichiers d'export vers le stockage d'objet cloud
Pour pouvoir importer les données exportées à partir de la base de données Oracle source, vous devez télécharger les fichiers d'export vers le stockage d'objet cloud.
Vous pouvez télécharger les fichiers d'export vers un bucket de stockage existant dans Oracle Cloud Infrastructure Object Storage ou un conteneur de stockage existant dans Oracle Cloud Infrastructure Object Storage Classic. Vous pouvez également suivre la procédure ci-dessous pour créer un bucket de stockage et y télécharger les fichiers d'export.
-
Connectez-vous à votre compte Oracle Cloud à l'adresse cloud.oracle.com.
-
Dans la liste de navigation de gauche d'Oracle Cloud Infrastructure, sélectionnez Object Storage, puis Object Storage dans la sous-liste.
-
Choisissez le compartiment dans lequel créer le bucket de stockage.
-
Cliquez sur Créer un bucket.
-
Dans la boîte de dialogue Créer un bucket, attribuez un nom au bucket, puis cliquez sur Créer un bucket.
-
Une fois le bucket créé, cliquez sur son nom dans la liste des buckets pour afficher la page Détails du bucket correspondante.
-
Dans la zone Objets, cliquez sur Télécharger les objets.
-
Dans la fenêtre Télécharger des objets, cliquez sur le lien sélectionner les fichiers dans la zone Choisir des fichiers de votre ordinateur.
-
Dans l'explorateur de fichiers, accédez aux fichiers d'export et sélectionnez-les. Ensuite, cliquez sur Ouvrir.
-
Dans la fenêtre Télécharger les objets, cliquez sur Télécharger les objets pour lancer le téléchargement des fichiers sélectionnés.
-
Une fois les téléchargements terminés, fermez la boîte de dialogue Télécharger les objets.
Import des données à l'aide d'Oracle Data Pump
Oracle recommande d'utiliser la dernière version d'Oracle Data Pump pour importer des données à partir de fichiers Data Pump dans votre base de données Autonomous AI car elle contient des améliorations et des correctifs pour une meilleure expérience.
Téléchargez la dernière version du package Oracle Instant Client Basic et du package d'outils, qui inclut Oracle Data Pump, pour votre plate-forme à partir de la page Téléchargements Oracle Instant Client. Reportez-vous aux instructions d'installation de la page de téléchargement pour installation sur votre plate-forme afin de connaître les étapes d'installation requises après le téléchargement d'Oracle Instant Client.
Dans Oracle Data Pump versions 18.3 et ultérieures, l'argument credential authentifie Data Pump auprès du service Cloud Object Storage que vous utilisez pour vos fichiers source. L'argument dumpfile est une liste d'URL séparées par une virgule pour vos fichiers Data Pump.
Data Pump versions 12.2.0.1 et antérieures ne dispose pas du paramètre credential. Si vous utilisez une ancienne version de l'utilitaire d'import Data Pump, vous devez définir une propriété d'informations d'identification par défaut pour Autonomous AI Database et utiliser le mot-clé default_credential dans le paramètre dumpfile.
Dans Oracle Data Pump, si vos fichiers source résident dans Oracle Cloud Infrastructure Object Storage, vous pouvez utiliser des URI natifs Oracle Cloud Infrastructure ou des URI Swift. Pour plus de détails sur ces formats d'URI, reportez-vous à Formats d'URI de stockage d'objet cloud.
-
Stockez vos informations d'identification du stockage d'objet cloud à l'aide de la procédure
DBMS_CLOUD.CREATE_CREDENTIAL.L'import Data Pump prend en charge les informations d'identification basées sur un jeton d'authentification Oracle Cloud Infrastructure et les informations d'identification basées sur une clé de signature Oracle Cloud Infrastructure.
Exemple 1 : pour créer des informations d'identification de jeton d'authentification Oracle Cloud Infrastructure, procédez comme suit :
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DEF_CRED_NAME', username => 'adb_user@oracle.com', password => '*password*' ); END; /Exemple 2 : pour créer des informations d'identification basées sur la clé de signature Oracle Cloud Infrastructure, procédez comme suit :
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL ( credential_name => 'DEF_CRED_NAME', user_ocid => 'ocid1.user.oc1..unique_ID', tenancy_ocid => 'ocid1.tenancy.oc1..unique_ID', private_key => 'MIIEogIBAAKCAQEAtUnxbmre.....wtnNpESQQQ0QLGPD8NM//JEBg=', fingerprint => 'fingerprint value' ); END; /Pour plus d'informations sur les types d'informations d'identification pour Oracle Cloud Infrastructure Cloud Object Storage, reportez-vous à Procédure CREATE_CREDENTIAL.
-
Si vous utilisez Oracle Data Pump version 12.2.0.1 ou antérieure, vous devez définir les informations d'identification comme informations d'identification par défaut pour votre base de données Autonomous AI, en tant qu'utilisateur ADMIN. Exemple :
alter database property set default_credential = 'ADMIN.DEF_CRED_NAME' -
Exécutez l'utilitaire d'import Data Pump avec le paramètre
dumpfiledéfini sur la liste des URL de fichier dans le stockage d'objet cloud.-
Oracle Data Pump version 18.3 ou ultérieure : définissez le paramètre
credentialsur le nom des informations d'authentification que vous aurez créées à l'étape 1. Exemple :impdp admin/password@ATPC1_high \ credential=def_cred_name \ dumpfile= https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/export%l.dmp \ parallel=16 \ transform=segment_attributes:n \ exclude=cluster, db_linkDans cet exemple,
dumpfileest un URI Swift Oracle Cloud Infrastructure qui indique tous les fichiers dont le nom correspond àexport<number>.dmpdans le bucketmybucketde la régionus-phoenix-1. (idthydc0kinrest l'espace de noms de stockage d'objet dans lequel réside le bucket.) -
Oracle Data Pump version 12.2.0.1 ou antérieure : démarrez la valeur du paramètre
dumpfileavec le mot-clédefault_credentialet un signe deux-points. Exemple :impdp admin/password@ATPC1_high \ dumpfile=default_credential:https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/export%l.dmp \ parallel=16 \ transform=segment_attributes:n \ exclude=cluster, db_link
Remarques relatives à l'import Data Pump
-
Si, pendant l'export avec
expdp, vous avez utilisé le paramètreencryption_pwd_prompt=yes, utilisezencryption_pwd_prompt=yeset saisissez le même nom de passe à l'inviteimpdpque vous avez indiquée lors de l'export. -
Le paramètre
dumpfileprend en charge les caractères génériques%Let%len plus des caractères génériques%Uet%uhérités. Par exemple,dumpfile=export%L.dmp.Utilisez le caractère générique
%Lou%lpour les exportations à partir d'Oracle Database version 12.2 et supérieure. Ce caractère générique étend le nom du fichier dump en un entier incrémentant de 3 à 10 chiffres, de largeur variable, commençant à 100 et se terminant à 2147483646.Utilisez le caractère générique hérité
%Uou%upour les exports à partir d'Oracle Database avant la version 12.2. Si vous utilisez cette option et que plus de 99 fichiers dump sont nécessaires, vous devez indiquer plusieurs noms de fichier dump, chacun avec le paramètre%Uou%u. -
Pour des performances d'import optimales, utilisez le service de base de données
highpour la connexion d'import et définissez le paramètreparallelsur le nombre d'UC de la base de données. -
Pour le format d'URL de fichier dump des différents services Cloud Object Storage, reportez-vous à Formats d'URI de stockage d'objet cloud.
-
Pour effectuer un import complet ou importer des objets appartenant à d'autres utilisateurs, vous devez posséder le rôle
DATAPUMP_CLOUD_IMP.
Pour obtenir des informations sur les objets non autorisés dans Autonomous AI Database, reportez-vous à la section Limites concernant l'utilisation des commandes SQL.
Pour obtenir des informations détaillées sur les paramètres d'import, reportez-vous à l'utilitaire d'import Oracle Data Pump dans Utilitaires Oracle Database 19c ou Utilitaires Oracle Database 26ai.
-
Accès aux fichiers journaux pour l'import Data Pump
Les fichiers journaux des opérations d'import Data Pump sont stockés dans le répertoire que vous indiquez avec le paramètre directory de Data Pump impdp.
Pour accéder au fichier journal, vous devez le déplacer vers le stockage d'objet cloud à l'aide de la procédure DBMS_CLOUD.PUT_OBJECT. Par exemple, le bloc PL/SQL suivant déplace le fichier import.log vers le stockage d'objets cloud :
BEGIN
DBMS_CLOUD.PUT_OBJECT(
credential_name => 'DEF_CRED_NAME',
object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/*namespace-string*/b/*bucketname*/o/import.log',
directory_name => 'DATA_PUMP_DIR',
file_name => 'import.log');
END;
/
Dans cet exemple, *namespace-string* est l'espace de noms Oracle Cloud Infrastructure Object Storage et bucketname est le nom du bucket. Pour plus d'informations, reportez-vous à Présentation des espaces de noms Object Storage.
Pour plus d'informations, voir DBMS_CLOUD pour les objets et les fichiers.