Package DBMS_CLOUD_IMPORT

DBMS_CLOUD_IMPORT facilite l'importation de données à partir de bases de données Oracle ainsi que de bases de données non Oracle à l'aide de la passerelle hétérogène Oracle dans une base de données d'IA autonome. Au cours du processus d'importation, les types de données source sont convertis en types de données compatibles Oracle. Par conséquent, toutes les limitations et restrictions de la Passerelle Hétérogène d'Oracle s'appliquent également aux opérations effectuées via ce package.

Récapitulatif des sous-programmes DBMS_CLOUD_IMPORT

Ce tableau récapitule les sous-programmes inclus dans le package DBMS_CLOUD_IMPORT.

Sous-programme Description

Procédure ADD_BY_LIKE

Crée une tâche d'import pour l'import de données à partir d'une source spécifiée dans Oracle, avec un filtrage facultatif par schéma ou table et des options de planification configurables.

Procédure ADD_FILE

Suspend temporairement une tâche d'importation en cours d'exécution afin qu'elle puisse être reprise ultérieurement.

Procédure ADD_LATEST_FILES

Redémarre une tâche d'import précédemment suspendue et poursuit le traitement à partir du moment où elle a été suspendue.

Procédure ADD_TABLE

Supprime une tâche d'import et supprime la définition de tâche et les métadonnées associées.

Procédure CREATE_IMPORT_TASK

La procédure DBMS_CLOUD_IMPORT.CREATE_IMPORT_TASK crée et configure un travail d'import pour importer des données d'un système source spécifié dans une base de données Autonomous AI.

Vous devez être connecté en tant qu'utilisateur ADMIN pour exécuter cette procédure.

Syntaxe

DBMS_CLOUD_IMPORT.CREATE_IMPORT_TASK(
    task_name          IN VARCHAR2,
    hostname           IN VARCHAR2,
    port               IN VARCHAR2,
    service_name       IN VARCHAR2,
    credential_name    IN VARCHAR2,
    directory_name     IN VARCHAR2,
    ssl_server_cert_dn IN VARCHAR2 DEFAULT NULL,
    gateway_params     IN VARCHAR2 DEFAULT NULL,
    schema_list        IN CLOB     DEFAULT NULL,
    table_list         IN CLOB     DEFAULT NULL
);

Paramètres

Paramètre Description

task_name

Identifie de manière unique la tâche d'importation. Nom affecté à la tâche de migration. Il est utilisé pour identifier la tâche et le travail de planificateur associé.

hostname

Nom d'hôte de la base de données cible.

L'indication de localhost pour hostname n'est pas autorisée.

port

Indique le port des connexions à la base de données cible.

Lorsque vous indiquez une connexion avec une connectivité hétérogène gérée par Oracle à l'aide du paramètre gateway_params, définissez le port en fonction de la valeur db_type.

Pour plus d'informations, reportez-vous à Ports et types de base de données de connectivité hétérogène gérés par Oracle.

service_name

service_name auquel la base de données doit être liée. Pour une base de données Autonomous AI cible, recherchez le nom de service de l'une des manières suivantes :

  • Examinez le fichier tnsnames.ora dans le fichier wallet.zip que vous téléchargez à partir d'une base de données Autonomous AI pour votre connexion.

  • Cliquez sur Connexion à la base de données dans la console Oracle Cloud Infrastructure. Dans la zone Chaînes de connexion, chaque chaîne de connexion inclut une entrée service_name avec la chaîne de connexion pour le service correspondant. Lorsque les connexions TLS mutuelles (mTLS) et TLS sont autorisées, sous Authentification TLS, sélectionnez TLS pour afficher les noms TNS et les chaînes de connexion pour les connexions avec l'authentification TLS. Pour plus d'informations, reportez-vous à Affichage des noms TNS et des chaînes de connexion pour une instance de base de données Autonomous AI.

  • Interrogez la vue V$SERVICES. Par exemple :

    SELECT name FROM V$SERVICES;

    Lorsque vous indiquez une connexion avec une connectivité hétérogène gérée par Oracle à l'aide du paramètre gateway_params, service_name est le nom de base de données de la base de données non Oracle.

credential_name

Nom des informations d'identification stockées créées avec DBMS_CLOUD.CREATE_CREDENTIAL. Informations d'identification permettant d'accéder à la base de données source.

directory_name

Répertoire du fichier cwallet.sso. La valeur par défaut de ce paramètre est 'data_pump_dir'.

La connectivité hétérogène gérée par Oracle est préconfigurée avec un portefeuille qui contient la plupart des certificats SSL racine et intermédiaires sécurisés courants. Le paramètre directory_name n'est pas requis lorsque vous fournissez le paramètre gateway_params.

ssl_server_cert_dn

Valeur de nom distinctif trouvée dans le certificat de serveur.

La connectivité hétérogène gérée par Oracle est préconfigurée avec un portefeuille qui contient la plupart des certificats SSL racine et intermédiaires sécurisés courants. La valeur ssl_server_cert_dn doit être NULL lorsque vous indiquez le paramètre gateway_params ou que vous n'incluez pas le paramètre ssl_server_cert_dn (la valeur par défaut est NULL).

gateway_params

Spécifie les paramètres de connexion et de type source utilisés pour les migrations hétérogènes (c'est-à-dire lorsque la source est une base de données non Oracle).

Il est transmis en tant qu'objet JSON et inclut des valeurs telles que le type de base de données source, par exemple :gateway_params => JSON_OBJECT('db_type' VALUE 'mysql').

Ces paramètres indiquent au travail de migration le comportement de passerelle ou de pilote à utiliser lors de la connexion et de l'import de données à partir du système source. Ce paramètre est facultatif et est défini par défaut sur NULL.

schema_list

Liste des schémas à inclure dans l'import.

Ce paramètre est facultatif. Si vous n'indiquez pas de valeur, la valeur par défaut est NULL. Tous les schémas de la base de données source sont migrés.

table_list

Indique les tables à migrer en tant que tableau JSON d'entrées '[{"schema_name":"public","table_name":"sales_data"}]'.

Utilisez table_list pour effectuer une migration au niveau de la table (partielle). Seules les tables indiquées sont migrées.

N'indiquez pas de chevauchement d'objets dans schema_list et table_list. Ce paramètre est uniquement pris en charge lorsque la base de données source est Oracle.

Ce paramètre est facultatif et est défini par défaut sur NULL.

Exemple

BEGIN
  DBMS_CLOUD_IMPORT.CREATE_IMPORT_TASK(
    task_name          => 'orcl_import_job',
    hostname           => '<remote_db_hostname>',
    port               => '<remote_db_port>',
    service_name       => '<remote_db_service_name>',
    ssl_server_cert_dn => '<cn=remote_db_cn_name>',
    directory_name     => '<walletdb>',
    credential_name    => 'db1_cred',
    schema_list        => '["admin"]'
  );
END;
/

Procédure SUSPEND_IMPORT_TASK

La procédure DBMS_CLOUD_IMPORT.SUSPEND_IMPORT_TASK met temporairement en pause une tâche d'import en cours d'exécution, ce qui permet de la reprendre ultérieurement.

Syntaxe

DBMS_CLOUD_IMPORT.SUSPEND_IMPORT_TASK(
   task_name IN VARCHAR2 );

Paramètres

Paramètre Description

task_name

Identifie de manière unique la tâche d'importation.

Exemple

BEGIN
  DBMS_CLOUD_IMPORT.SUSPEND_IMPORT_TASK(
   task_name => 'SALES_IMPORT_JOB1'
);
END;
/

Procédure RESUME_IMPORT_TASK

La procédure DBMS_CLOUD_IMPORT.RESUME_IMPORT_TASK reprend une tâche d'import précédemment suspendue. Elle redémarre l'exécution de la tâche pour le fichier task_name indiqué et poursuit l'opération d'import à partir du moment où elle a été mise en pause.

Vous devez être connecté en tant qu'utilisateur ADMIN pour exécuter cette procédure.

Syntaxe

DBMS_CLOUD_IMPORT.RESUME_IMPORT_TASK(
   task_name IN VARCHAR2 );

Paramètres

Paramètre Description

task_name

Identifie de manière unique la tâche d'importation.

Exemple

BEGIN
  DBMS_CLOUD_IMPORT.RESUME_IMPORT_TASK(
   task_name => 'SALES_IMPORT_JOB1'
  );
 END;
/

Procédure DROP_IMPORT_TASK

La procédure DBMS_CLOUD_IMPORT.DROP_IMPORT_TASK supprime une tâche d'import et les métadonnées et la définition de tâche associées.

Vous devez être connecté en tant qu'utilisateur ADMIN pour exécuter cette procédure.

Syntaxe

DBMS_CLOUD_IMPORT.DROP_IMPORT_TASK(
   task_name IN VARCHAR2 );

Paramètres

Paramètre Description

task_name

Identifie de manière unique la tâche d'importation.

Exemple

BEGIN
  DBMS_CLOUD_IMPORT.DROP_IMPORT_TASK(
   task_name => 'SALES_IMPORT_JOB1'
  );
 END;
/