Exporter des données à l'aide d'Oracle Data Pump
Oracle Data Pump permet un déplacement très rapide des données et des métadonnées en masse entre une base de données autonome et d'autres bases de données Oracle.
Oracle recommande d'utiliser la dernière version d'Oracle Data Pump pour exporter des données d'une base de données autonome vers d'autres bases de données Oracle, car elle contient des améliorations et des correctifs pour une meilleure expérience. Téléchargez la dernière version d'Oracle Instant Client et téléchargez l'ensemble d'outils, qui inclut Oracle Data Pump, pour votre plate-forme à partir des téléchargements Oracle Instant Client. Consultez les instructions d'installation sur la page de téléchargement pour connaître les étapes d'installation requises après le téléchargement d'Oracle Instant Client et de l'ensemble d'outils.
-
Option 1 : Déplacer les données avec l'exportation d'extraction de données vers un répertoire Autonomous Database
Utilisez Oracle Data Pump pour exporter les données vers un répertoire de votre base de données, puis déplacez les données du répertoire vers le magasin d'objets en nuage. Cette méthode peut être avantageuse lorsque vous voulez déplacer des données depuis votre base de données autonome vers plusieurs bases de données cibles. Au lieu d'exporter les données vers plusieurs magasins d'objets en nuage, vous pouvez créer un jeu de fichiers de vidage une seule fois et l'utiliser pour plusieurs bases de données cibles.
Pour déplacer des données à partir d'une base de données autonome en les exportant vers un répertoire de votre base de données, procédez de la façon suivante :- Exportez les données vers un répertoire de la base de données autonome et déplacez le jeu de fichiers de vidage du répertoire vers votre magasin d'objets en nuage. Voir Exporter des données à l'aide d'un répertoire de base de données autonome.
- Téléchargez les fichiers de vidage à partir du magasin d'objets en nuage, importez les données dans la base de données cible, puis nettoyez le magasin d'objets en nuage. Voir Télécharger les fichiers de vidage, exécuter l'importation de l'extraction de données et nettoyer le magasin d'objets.
-
Option 2 : Déplacer des données avec Data Pump Export vers le magasin d'objets
Avec cette méthode d'exportation, vous utilisez Oracle Data Pump pour exporter directement des données vers votre magasin d'objets. Cette méthode d'exportation est prise en charge avec le service de stockage d'objets pour Oracle Cloud Infrastructure et le service de stockage d'objets pour Oracle Cloud Infrastructure version classique. Elle évite les frais généraux liés à la création d'un jeu de fichiers de vidage dans un répertoire de votre Autonomous Database, puis au déplacement du jeu de fichiers de vidage vers le magasin d'objets en nuage. Lorsque vous prévoyez de déplacer des données vers une seule base de données cible, cette méthode est plus simple et permet d'accélérer le processus d'exportation.
Pour déplacer des données à partir d'une base de données autonome en les exportant directement vers votre magasin d'objets, procédez de la façon suivante :- Exportez les données à partir de la base de données autonome directement vers un magasin d'objets en nuage. Voir Exporter des données d'une base de données autonome vers un magasin d'objets directement.
- Téléchargez les fichiers de vidage à partir du magasin d'objets en nuage, importez les données dans la base de données cible, puis nettoyez le magasin d'objets en nuage. Voir Télécharger les fichiers de vidage, exécuter l'importation de l'extraction de données et nettoyer le magasin d'objets.
Exporter des données à l'aide d'un répertoire de base de données autonome
Utiliser la fonction d'extraction de données pour créer un jeu de fichiers de vidage pour une base de données autonome
-
Créez un répertoire dans lequel stocker les fichiers de vidage contenant les données exportées. Par exemple :
CREATE DIRECTORY data_export_dir as 'data_export';
-
Exécutez Data Pump Export avec le paramètre dumpfile défini, le paramètre filesize (Taille de fichier) réglé à moins de 50G et le paramètre directory (Répertoire). For example, the following shows how to export a schema named
SALES
in an Autonomous Database namedATPC1
with 64 ECPUs:expdp sales/password@ATPC1_high directory=data_export_dir dumpfile=exp%L.dmp parallel=16 encryption_pwd_prompt=yes filesize=1G logfile=export.log
Notes sur les paramètres Data Pump :-
Dans le cas des ECPU,
parallel
doit être réglé à 0,25 fois le nombre d'ECPU. Par conséquent, dans l'exemple ci-dessus avec 64 ECPU,parallel
est réglé à 0,25 x 64, c'est-à-dire 16 avecexpdp
. -
Dans le cas des OCPU,
parallel
doit être réglé à la même valeur que le nombre d'OCPU. Dans l'exemple ci-dessus avec 16 OCPU,parallel
sera réglé à 16, avecexpdp
. -
Si, lors de l'exportation avec
expdp
, vous utilisez le paramètreencryption_pwd_prompt=yes
, vous devez utiliserencryption_pwd_prompt=yes
lors de l'importation et entrer le même mot de passe à l'inviteimpdp
pour déchiffrer les fichiers de vidage (n'oubliez pas le mot de passe fourni lors de l'exportation). La longueur maximale du mot de passe de chiffrement est de 128 octets. -
Le paramètre
dumpfile
prend en charge les caractères génériques%L
et%l
en plus des caractères génériques%U
et%u
existants. Par exemple,dumpfile=export%L.dmp
.Utilisez le caractère générique
%L
ou%l
pour les exportations à partir d'Oracle Database version 12.2 ou ultérieure. Ce caractère générique étend le nom du fichier dump en un entier incrémenté de 3 chiffres à 10 chiffres et de largeur variable, commençant à 100 et se terminant à 2147483646.
Pour une performance d'exportation optimale, utilisez le service de base de données
HIGH
pour votre connexion d'exportation et définissez le paramètrePARALLEL
sur le nombre d'UC dans votre base de données. Pour plus d'informations sur le nom du service de base de données à connecter pour exécuter la fonction d'exportation d'Oracle Data Pump, voir Noms de service de base de données prédéfinis pour les bases de données autonomes.Une fois l'exportation terminée, vous pouvez voir les fichiers de vidage générés en exécutant une requête semblable à celle qui suit :SELECT * FROM DBMS_CLOUD.LIST_FILES('DATA_EXPORT_DIR');
Par exemple, la sortie de cette interrogation affiche les fichiers de vidage générés et le fichier journal d'exportation :OBJECT_NAME BYTES CHECKSUM CREATED LAST_MODIFIED ---------------------- ---------- ----–---- –------------------------–----- -------------------- exp01.dmp 12288 12-NOV-19 06.10.47.0 PM GMT 12-NOV-19... exp02.dmp 8192 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... exp03.dmp 1171456 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... exp04.dmp 348160 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... export.log 1663 12-NOV-19 06.10.50.0 PM GMT 12-NOV-19...
-
Notes :
-
Pour effectuer une exportation complète ou pour exporter des objets appartenant à d'autres utilisateurs, vous devez disposer du rôle
DATAPUMP_CLOUD_EXP
. -
L'API que vous utilisez pour déplacer les fichiers de vidage vers votre stockage d'objets prend en charge des tailles de fichier allant jusqu'à 50 Go. Assurez-vous donc de ne pas spécifier de tailles plus élevées avec l'argument filesize.
-
Pour plus d'informations, voir Exportation Oracle Data Pump dans Utilitaires Oracle Database 19c ou Utilitaires Oracle Database 23ai.
Déplacer le jeu de fichiers de vidage depuis la base de données autonome vers le stockage d'objets en nuage
-
Connectez-vous à la base de données autonome.
-
Stockez vos données d'identification du service de stockage d'objets en nuage à l'aide de la procédure
DBMS_CREDENTIAL.CREATE_CREDENTIAL
. Par exemple :BEGIN
DBMS_CREDENTIAL.CREATE_CREDENTIAL
( credential_name => 'DEF_CRED_NAME', username => 'adb_user@oracle.com', password => 'password' ); END; /Les valeurs que vous indiquez pourusername
etpassword
dépendent du service de stockage d'objets en nuage que vous utilisez :-
Oracle Cloud Infrastructure Object Storage :
username
est votre nom d'utilisateur Oracle Cloud Infrastructure etpassword
est votre jeton d'authentification Oracle Cloud Infrastructure. Voir Utilisation de jetons d'authentification. -
Service de stockage d'objets Oracle Cloud Infrastructure Object Storage Classic :
username
est votre nom d'utilisateur Oracle Cloud Infrastructure version classique etpassword
est votre mot de passe Oracle Cloud Infrastructure version classique.Cette opération stocke les données d'identification dans la base de données dans un format chiffré. Vous pouvez utiliser n'importe quel nom pour les données d'identification. Notez que cette étape n'est requise qu'une seule fois, sauf si les données d'identification du magasin d'objets changent. Une fois que vous avez stocké les données d'identification, vous pouvez utiliser le même nom pour tous les chargements de données.
-
-
Déplacez les fichiers de vidage d'Autonomous Database vers votre magasin d'objets en nuage en appelant
DBMS_CLOUD.PUT_OBJECT
.Par exemple :BEGIN
DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp01.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp01.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp02.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp02.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp03.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp03.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp04.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp04.dmp'); END; /Voir Procédure PUT_OBJECT pour plus d'informations sur
PUT_OBJECT
.
Exporter des données d'une base de données autonome vers un magasin d'objets directement
Montre comment utiliser Oracle Data Pump pour exporter des données depuis une base de données autonome directement vers un magasin d'objets en nuage.
Télécharger les fichiers de vidage, exécuter l'importation de l'extraction de données et nettoyer le stockage d'objets
Si nécessaire, téléchargez les fichiers de vidage à partir du magasin d'objets en nuage et utilisez la fonction d'importation d'Oracle Data Pump pour importer le jeu de fichiers de vidage dans la base de données cible. Effectuez ensuite tout nettoyage nécessaire.
Pour des informations détaillées, voir Paramètres disponibles en mode de ligne de commande d'importation Oracle Data Pump dans Utilitaires 19c d'Oracle Database ou Utilitaires Oracle Database 23ai.