Package DBMS_CLOUD_LINK
Le package DBMS_CLOUD_LINK permet à un utilisateur d'inscrire une table ou une vue en tant qu'ensemble de données pour un accès en lecture seule avec Cloud Links.
- DBMS_CLOUD_LINK Présentation
Décrit l'utilisation du packageDBMS_CLOUD_LINK. - Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Affiche un tableau contenant un récapitulatif des sous-programmes inclus dans le packageDBMS_CLOUD_LINK.
Rubrique parent : Référence de package fourni par la base de données Autonomous AI
DBMS_CLOUD_LINK Présentation
Décrit l'utilisation du package DBMS_CLOUD_LINK.
Le package DBMS_CLOUD_LINK fournit la procédure REGISTER qui vous permet d'inscrire une table ou une vue en tant qu'ensemble de données à utiliser avec les liens cloud. Pour pouvoir enregistrer un ensemble de données, l'utilisateur ADMIN doit lui accorder le droit d'enregistrer un ensemble de données à l'aide de la procédure DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Une fois que l'administrateur exécute GRANT_REGISTER, un utilisateur peut inscrire une table ou une vue qu'il possède en tant qu'ensemble de données inscrit (ou inscrire un objet dans un autre schéma si l'utilisateur dispose du privilège READ WITH GRANT OPTION sur l'objet). Les ensembles de données enregistrés fournissent un accès distant à l'objet enregistré avec Cloud Links, sous réserve de la portée spécifiée avec la procédure REGISTER.
Pour exécuter DBMS_CLOUD_LINK.REGISTER, DBMS_CLOUD_LINK.UPDATE_REGISTRATION ou DBMS_CLOUD_LINK.UNREGISTER, vous devez disposer du privilège d'exécution sur le package DBMS_CLOUD_LINK, en plus d'avoir exécuté DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER précédemment. Par défaut, seuls l'utilisateur ADMIN et les schémas dotés du rôle PDB_DBA disposent du privilège d'exécution sur DBMS_CLOUD_LINK.
Rubrique parent : Package DBMS_CLOUD_LINK
Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Affiche un tableau présentant un récapitulatif des sous-programmes inclus dans le package DBMS_CLOUD_LINK.
| Sous-programme | Description |
|---|---|
|
Cette fonction extrait la description d'un ensemble de données. La description est fournie lorsqu'un ensemble de données est inscrit auprès de |
|
|
Extrait l'espace de noms, le nom et la description des ensembles de données qui correspondent à la chaîne de recherche. Les jeux de données correspondants ne sont affichés que s'ils sont accessibles à l'utilisateur, en fonction des restrictions d'accès. |
|
|
Renvoie un identificateur unique pour l'instance de base de données Autonomous AI. Les appels répétés vers |
|
|
Autorise une base de données spécifique à accéder à l'ensemble de données indiqué. |
|
|
Enregistre une table ou une vue en tant qu'ensemble de données. |
|
|
Révoque l'autorisation pour une base de données spécifiée d'accéder à l'ensemble de données spécifié. |
|
|
Supprime un jeu de données enregistré. |
|
|
Met à jour les attributs d'un ensemble de données inscrit à l'aide de |
- Fonction DESCRIBE
Cette fonction extrait la description d'un jeu de données. La description est fournie lorsqu'un ensemble de données est inscrit auprès deDBMS_CLOUD_LINK.REGISTER. - Procédure FIND
Cette procédure extrait l'espace de noms, le nom et la description des ensembles de données qui correspondent à la chaîne de recherche. Les jeux de données correspondants ne sont affichés que s'ils sont accessibles à l'utilisateur, en fonction des restrictions d'accès. - GET_DATABASE_ID Fonction
La fonction renvoie un identificateur unique pour l'instance de base de données Autonomous AI. Les appels répétés versDBMS_CLOUD_LINK.GET_DATABASE_IDsur la même instance renvoient toujours la même valeur. - GRANT_AUTHORIZATION Procédure
Cette procédure autorise une base de données spécifique à accéder à l'ensemble de données indiqué. - Procédure REGISTER
La procédure enregistre une table ou une vue en tant qu'ensemble de données pour permettre un accès distant en lecture seule, sous réserve des restrictions imposées par le paramètrescope. - REVOKE_AUTHORIZATION Procédure
Cette procédure révoque l'autorisation d'accès à l'ensemble de données indiqué pour une base de données donnée. - Procédure UNREGISTER
La procédure permet à un utilisateur qui a précédemment enregistré une table ou une vue avec la procédureREGISTERde désinscrire la table ou la vue afin qu'elle ne soit plus disponible pour un accès distant. - Procédure UPDATE_REGISTRATION
La procédure met à jour un ou plusieurs attributs pour un ensemble de données enregistré à l'aide deDBMS_CLOUD_LINK.REGISTER.
Rubrique parent : Package DBMS_CLOUD_LINK
Fonction DESCRIBE
DBMS_CLOUD_LINK.REGISTER.
Syntaxe
DBMS_CLOUD_LINK.DESCRIBE(
namespace IN VARCHAR2,
name IN VARCHAR2
) return CLOB;
Paramètres
| Paramètre | Description |
|---|---|
|
|
Indique l'espace de noms de l'ensemble de données enregistré. |
|
|
Spécifie le nom d'un jeu de données enregistré. |
Remarque sur l'utilisation
Vous pouvez utiliser cette fonction sous réserve des restrictions d'accès imposées au moment de l'inscription auprès de DBMS_CLOUD_LINK.REGISTER. Si un ensemble de données n'est pas accessible à une base de données, sa description ne sera pas extraite.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure FIND
Syntaxe
DBMS_CLOUD_LINK.FIND(
search_string IN VARCHAR2,
search_result OUT CLOB
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Spécifie la chaîne de recherche. Le respect maj/min ne distingue pas les majuscules des minuscules. |
|
|
Document JSON qui inclut les valeurs d'espace de noms, de nom et de description de l'ensemble de données. |
Remarque sur l'utilisation
La chaîne de recherche n'est pas sensible à la casse et le package utilise la recherche de texte libre à l'aide d'Oracle Text.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Fonction GET_DATABASE_ID
DBMS_CLOUD_LINK.GET_DATABASE_ID sur la même instance renvoient toujours la même valeur.
Vous pouvez appeler cette fonction sur une base de données qui accède à un ensemble de données enregistré à distance pour obtenir l'ID de base de données. Cela vous permet de fournir la base de données iD afin qu'un propriétaire de jeu de données puisse tirer parti d'un contrôle d'accès aux données plus précis, par exemple avec VPD, en fonction d'un ID de base de données spécifié à partir de sites distants.
Un ID de base de données identifie chaque base de données distante qui accède à un jeu de données enregistré, afin de suivre et d'auditer l'accès dans les vues V$CLOUD_LINK_ACCESS_STATS et GV$CLOUD_LINK_ACCESS_STATS de la base de données qui possède un jeu de données enregistré.
Syntaxe
DBMS_CLOUD_LINK.GET_DATABASE_ID()
RETURN VARCHAR2;
Notes d'utilisation
Les liens cloud utilisent l'identificateur unique renvoyé par DBMS_CLOUD_LINK.GET_DATABASE_ID pour identifier les bases de données individuelles qui accèdent à un ensemble de données à distance. La base de données propriétaire du jeu de données enregistré effectue le suivi et l'audit de l'ID de base de données en tant qu'enregistrement de l'origine pour l'accès au jeu de données dans les vues V$CLOUD_LINK_ACCESS_STATS et GV$CLOUD_LINK_ACCESS_STATS.
L'identificateur DBMS_CLOUD_LINK.GET_DATABASE_ID est disponible sous forme de valeur SYS_CONTEXT afin que vous puissiez obtenir ces informations par programmation sur une session distante de connexion à l'aide de SYS_CONTEXT, afin de restreindre et de contrôler davantage les données spécifiques accessibles à distance par des instances de base de données Autonomous AI individuelles avec des bases de données privées virtuelles (VPD).
Valeurs renvoyées
Identificateur unique de l'instance de base de données Autonomous AI de VARCHAR2.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure GRANT_AUTHORIZATION
Syntaxe
DBMS_CLOUD_LINK.GRANT_AUTHORIZATION(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Indique l'ID de base de données pour une instance de base de données Autonomous AI. Utilisez |
|
|
Spécifie l'espace de noms de jeu de données permettant d'accorder l'autorisation d'accès pour le fichier |
|
|
Spécifie le nom du jeu de données pour accorder l'autorisation d'accès pour le fichier |
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure d'enregistrement
scope.
Syntaxe
DBMS_CLOUD_LINK.REGISTER(
schema_name IN VARCHAR2,
schema_object IN VARCHAR2,
namespace IN VARCHAR2,
name IN VARCHAR2,
description IN CLOB,
scope IN CLOB,
auth_required IN BOOLEAN DEFAULT,
data_set_owner IN VARCHAR2 DEFAULT,
offload_targets IN CLOB DEFAULT
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Indique le propriétaire de la table ou vue indiquée avec le paramètre |
schema_object |
Spécifie le nom d'une table ou d'une vue. Les objets valides sont :
Les autres objets tels que les vues analytiques ou les synonymes ne sont pas pris en charge. |
namespace |
Spécifie l'espace de noms de l'ensemble de données. Une valeur |
name |
Indique le nom de l'ensemble de données. |
description |
Indique le texte décrivant les données. |
scope |
Décrit qui est autorisé à accéder au jeu de données. La valeur est une liste séparée par des virgules composée d'un ou plusieurs des éléments suivants :
Les valeurs de portée, |
|
|
Indique qu'une autorisation supplémentaire est requise pour que les bases de données puissent lire à partir de l'ensemble de données. Les cas suivants sont possibles :
|
|
|
Indique le propriétaire du jeu de données. Indique à qui appartient le jeu de données ou qui est responsable de sa mise à jour et de sa maintenance. Par exemple, vous pouvez définir |
|
|
Indique des OCID de base de données Autonomous AI de clones actualisables où l'accès aux ensembles de données est déchargé, à partir de la base de données Autonomous AI où l'ensemble de données est inscrit. La valeur
Par exemple, l'exemple suivant présente un échantillon JSON avec trois paires de valeurs
Lorsqu'un destinataire d'ensemble de données demande l'accès à un ensemble de données que vous inscrivez auprès de Par exemple, l'exemple suivant présente un échantillon JSON avec une paire de valeurs
Pour plus d'informations sur l'utilisation de clones actualisables, reportez-vous à Utilisation de clones actualisables avec Autonomous AI Database. |
Notes d'utilisation
-
Une fois que vous avez inscrit un objet, les utilisateurs peuvent avoir besoin d'attendre jusqu'à dix (10) minutes pour accéder à l'objet avec Cloud Links.
-
Utilisez la procédure
DBMS_CLOUD_LINK.UPDATE_REGISTRATIONpour modifier les attributs d'un ensemble de données existant.Le temps d'attente de la mise à jour peut aller jusqu'à 10 minutes pour qu'une modification d'inscription soit propagée et accessible via Cloud Links. Ce délai peut avoir une incidence sur l'exactitude des données dans les vues
DBA_CLOUD_LINK_REGISTRATIONSetDBA_CLOUD_LINK_ACCESS. -
Vous pouvez inscrire une table ou une vue qui réside dans le schéma d'un autre utilisateur lorsque vous disposez des privilèges
READWITHGRANTOPTIONpour la table ou la vue. -
La portée que vous définissez lors de l'inscription d'un ensemble de données n'est prise en compte que lorsqu'elle correspond ou est plus restrictive que la valeur définie avec
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Par exemple, supposons que l'administrateur ait accordé la portée'MY$TENANCY'avecGRANT_REGISTERet que l'utilisateur indique'MY$REGION'lorsqu'il inscrit un ensemble de données avecDBMS_CLOUD_LINK.REGISTER. Dans ce cas, une erreur telle que la suivante s'affiche :ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION -
Certaines vérifications de validité hiérarchiques pour l'inscription ne peuvent pas avoir lieu au moment de l'inscription. Les inscriptions non valides ne seront pas visibles, repérables ou même accessibles à quiconque.
-
Pour utiliser
DBMS_CLOUD_LINK.REGISTER, vous devez disposer du privilège d'exécution sur le packageDBMS_CLOUD_LINK, en plus du privilège d'enregistrement affecté àDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Seuls l'utilisateur ADMIN et les schémas avecPDB_DBAdisposent de ce privilège par défaut. -
Lorsque vous inscrivez un ensemble de données sur un clone actualisable dans une région distante, l'appel de
DBMS_CLOUD_LINK.REGISTERsur le clone de région distante doit utiliser les mêmes paramètres avec les mêmes valeurs que sur la base de données source, à l'exception du paramètreoffload_targets.Par exemple, lorsque vous exécutez
DBMS_CLOUD_LINK.REGISTERavec une portée définie surMY$COMPARTMENTsur l'instance de base de données Autonomous AI source, exécutez à nouveau la procédure sur le clone actualisable inter-région avec la même valeur de paramètre de portée (MY$COMPARTMENT). -
Si vous indiquez le paramètre
offload_targetsavecDBMS_CLOUD_LINK.REGISTERsur la source, vous devez omettre ce paramètre lorsque vous inscrivez l'ensemble de données sur un clone actualisable inter-région.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure REVOKE_AUTHORIZATION
Syntaxe
DBMS_CLOUD_LINK.REVOKE_AUTHORIZATION(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Indique l'ID de base de données pour une instance de base de données Autonomous AI. Utilisez |
|
|
Indique l'espace de noms de jeu de données à révoquer l'autorisation d'accès pour le fichier |
|
|
Indique le nom du jeu de données à révoquer l'autorisation d'accès pour le fichier |
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure UNREGISTER
REGISTER de désinscrire la table ou la vue afin qu'elle ne soit plus disponible pour un accès distant.
Syntaxe
DBMS_CLOUD_LINK.UNREGISTER(
namespace IN VARCHAR2,
name IN VARCHAR2
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Spécifie un nom utilisateur. |
name |
Indique le nom de l'ensemble de données. |
Remarque sur l'utilisation
La propagation complète de DBMS_CLOUD_LINK.UNREGISTER peut également prendre jusqu'à dix (10) minutes, après quoi les données sont accessibles à distance.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK
Procédure UPDATE_REGISTRATION
DBMS_CLOUD_LINK.REGISTER.
Syntaxe
DBMS_CLOUD_LINK.UPDATE_REGISTRATION(
namespace IN VARCHAR2,
name IN VARCHAR2,
description IN CLOB DEFAULT,
scope IN CLOB DEFAULT,
auth_required IN BOOLEAN DEFAULT,
data_set_owner IN VARCHAR2 DEFAULT,
offload_targets IN CLOB DEFAULT
);
Paramètres
| Paramètre | Description |
|---|---|
namespace |
Indique l'espace de noms de l'ensemble de données à mettre à jour. |
name |
Indique le nom de l'ensemble de données à mettre à jour. |
description |
Indique le texte mis à jour pour décrire les données. Si Par défaut, cet attribut n'est pas mis à jour. |
scope |
Mettre à jour le champ d'application avec la valeur indiquée. La portée décrit qui est autorisé à accéder au jeu de données. La valeur est une liste séparée par des virgules composée d'un ou plusieurs des éléments suivants :
Les valeurs de portée, Si Par défaut, cet attribut n'est pas mis à jour. |
|
|
Indique qu'une autorisation supplémentaire est requise pour que les bases de données puissent lire à partir de l'ensemble de données. Les cas suivants sont possibles :
Si Par défaut, cet attribut n'est pas mis à jour. |
|
|
Indique le propriétaire du jeu de données. Indique à qui appartient le jeu de données ou qui est responsable de sa mise à jour et de sa maintenance. Par exemple, vous pouvez définir Si Par défaut, cet attribut n'est pas mis à jour. |
|
|
Indique des OCID de base de données Autonomous AI de clones actualisables où l'accès aux ensembles de données est déchargé, à partir de la base de données Autonomous AI où l'ensemble de données est inscrit. La valeur
Par exemple, l'exemple suivant présente un échantillon JSON avec trois paires de valeurs
Lorsqu'un destinataire d'ensemble de données demande l'accès à un ensemble de données que vous inscrivez auprès de Par exemple, l'exemple suivant présente un échantillon JSON avec une paire de valeurs
Pour plus d'informations sur l'utilisation de clones actualisables, reportez-vous à Utilisation de clones actualisables avec Autonomous AI Database. Si Par défaut, cet attribut n'est pas mis à jour. |
Notes d'utilisation
-
Les attributs
schema_nameetschema_objectd'un ensemble de données ne peuvent pas être mis à jour. -
Une fois que vous avez mis à jour l'inscription d'un objet, les utilisateurs peuvent avoir besoin d'attendre jusqu'à dix (10) minutes pour accéder à l'objet à l'aide des attributs mis à jour avec Cloud Links.
-
Vous pouvez mettre à jour l'inscription d'une table ou d'une vue qui réside dans le schéma d'un autre utilisateur lorsque vous disposez des privilèges
READWITHGRANTOPTIONpour la table ou la vue. -
La portée que vous définissez lorsque vous mettez à jour l'inscription d'un ensemble de données n'est prise en compte que lorsqu'elle correspond ou est plus restrictive que la valeur définie avec
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Par exemple, supposons que l'administrateur ait accordé la portée'MY$TENANCY'avecGRANT_REGISTERet que l'utilisateur indique'MY$REGION'lorsqu'il met à jour l'inscription de l'ensemble de données avecDBMS_CLOUD_LINK.UPDATE_REGISTRATION. Dans ce cas, une erreur telle que la suivante s'affiche :ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION -
Certaines vérifications de validité hiérarchiques pour une inscription mise à jour ne peuvent pas avoir lieu au moment de la mise à jour de l'inscription. Les inscriptions non valides ne seront pas visibles, repérables ou même accessibles à quiconque.
-
L'utilisateur qui a inscrit un ensemble de données peut mettre à jour ses attributs avec
DBMS_CLOUD_LINK.UPDATE_REGISTRATION. En outre, vous devez disposer du privilège d'exécution sur le packageDBMS_CLOUD_LINKet du privilège d'enregistrement affecté àDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Seuls l'utilisateur ADMIN et les schémas avecPDB_DBAdisposent de ce privilège par défaut. -
Lorsque vous mettez à jour l'inscription d'un ensemble de données sur un clone actualisable dans une région distante, l'appel de
DBMS_CLOUD_LINK.UPDATE_REGISTRATIONsur le clone de région distante doit utiliser les mêmes paramètres avec les mêmes valeurs que sur la base de données source, à l'exception du paramètreoffload_targets.Par exemple, lorsque vous exécutez
DBMS_CLOUD_LINK.UPDATE_REGISTRATIONavec une portée définie surMY$COMPARTMENTsur l'instance de base de données Autonomous AI source, exécutez à nouveau la procédure sur le clone actualisable inter-région avec la même valeur de paramètre de portée (MY$COMPARTMENT). -
Si vous indiquez le paramètre
offload_targetsavecDBMS_CLOUD_LINK.REGISTERsur la source, vous devez omettre ce paramètre lorsque vous inscrivez l'ensemble de données sur un clone actualisable inter-région.
Rubrique parent : Récapitulatif des sous-programmes DBMS_CLOUD_LINK