Transfert de fichiers entre un système de fichiers RDS pour Oracle et un système de EFS fichiers Amazon - Amazon Relational Database Service

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.

Transfert de fichiers entre un système de fichiers RDS pour Oracle et un système de EFS fichiers Amazon

Pour transférer des fichiers entre une instance RDS pour Oracle et un système de EFS fichiers Amazon, créez au moins un répertoire Oracle et configurez les autorisations du système de EFS fichiers pour contrôler l'accès aux instances de base de données.

Création d'un répertoire Oracle

Pour créer un répertoire Oracle, utilisez la procédure rdsadmin.rdsadmin_util.create_directory_efs. La procédure possède les paramètres suivants.

Nom du paramètre Type de données Par défaut Obligatoire Description

p_directory_name

VARCHAR2

Oui

Nom du répertoire Oracle.

p_path_on_efs

VARCHAR2

Oui

Le chemin sur le système de EFS fichiers. Le préfixe du nom du chemin utilise le modèle/rdsefs-fsid/, où fsid est un espace réservé pour l'ID de votre système de EFS fichiers.

Par exemple, si votre système de EFS fichiers est nommé fs-1234567890abcdef0 et que vous créez un sous-répertoire sur ce système de fichiers nommémydir, vous pouvez spécifier la valeur suivante :

/rdsefs-fs-1234567890abcdef0/mydir

Supposons que vous créez un sous-répertoire nommé dans /datapump1 le système de EFS fichiers. fs-1234567890abcdef0 L'exemple suivant crée un répertoire Oracle DATA_PUMP_DIR_EFS qui pointe vers le /datapump1 répertoire du système de EFS fichiers. La valeur du chemin du système de fichiers pour le paramètre p_path_on_efs est préfixée par la chaîne /rdsefs-.

BEGIN rdsadmin.rdsadmin_util.create_directory_efs( p_directory_name => 'DATA_PUMP_DIR_EFS', p_path_on_efs => '/rdsefs-fs-1234567890abcdef0/datapump1'); END; /

Transfert de données vers et depuis un système de EFS fichiers : exemples

L'exemple suivant utilise Oracle Data Pump pour exporter la table nommée MY_TABLE dans le fichier datapump.dmp. Ce fichier réside dans un système de EFS fichiers.

DECLARE v_hdnl NUMBER; BEGIN v_hdnl := DBMS_DATAPUMP.OPEN(operation => 'EXPORT', job_mode => 'TABLE', job_name=>null); DBMS_DATAPUMP.ADD_FILE( handle => v_hdnl, filename => 'datapump.dmp', directory => 'DATA_PUMP_DIR_EFS', filetype => dbms_datapump.ku$_file_type_dump_file); DBMS_DATAPUMP.ADD_FILE( handle => v_hdnl, filename => 'datapump-exp.log', directory => 'DATA_PUMP_DIR_EFS', filetype => dbms_datapump.ku$_file_type_log_file); DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'NAME_EXPR','IN (''MY_TABLE'')'); DBMS_DATAPUMP.START_JOB(v_hdnl); END; /

L'exemple suivant utilise Oracle Data Pump pour importer la table nommée MY_TABLE depuis le fichier datapump.dmp. Ce fichier réside dans un système de EFS fichiers.

DECLARE v_hdnl NUMBER; BEGIN v_hdnl := DBMS_DATAPUMP.OPEN( operation => 'IMPORT', job_mode => 'TABLE', job_name => null); DBMS_DATAPUMP.ADD_FILE( handle => v_hdnl, filename => 'datapump.dmp', directory => 'DATA_PUMP_DIR_EFS', filetype => dbms_datapump.ku$_file_type_dump_file ); DBMS_DATAPUMP.ADD_FILE( handle => v_hdnl, filename => 'datapump-imp.log', directory => 'DATA_PUMP_DIR_EFS', filetype => dbms_datapump.ku$_file_type_log_file); DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'NAME_EXPR','IN (''MY_TABLE'')'); DBMS_DATAPUMP.START_JOB(v_hdnl); END; /

Pour de plus amples informations, veuillez consulter Importation de données dans Oracle sur Amazon RDS.