Paquete DBMS_CLOUD
El paquete DBMS_CLOUD_LINK
permite a un usuario registrar una tabla o una vista como un juego de datos para el acceso de solo lectura con enlaces en la nube.
- DBMS_CLOUD_LINK Visión general
Describe el uso del paqueteDBMS_CLOUD_LINK
. - Resumen de subprogramas DBMS_CLOUD_LINK
Muestra una tabla con un resumen de los subprogramas incluidos en el paqueteDBMS_CLOUD_LINK
.
Tema principal: Referencia de paquetes proporcionados por Autonomous Database
Visión general de DBMS_CLOUD_LINK
Describe el uso del paquete DBMS_CLOUD_LINK
.
El paquete DBMS_CLOUD_LINK
proporciona el procedimiento REGISTER
que permite registrar una tabla o una vista como un juego de datos para su uso con enlaces en la nube. Para poder registrar un juego de datos, el usuario ADMIN debe otorgar un permiso de usuario para registrar un juego de datos mediante el procedimiento DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Después de que ADMIN ejecute GRANT_REGISTER
, un usuario puede registrar una tabla o una vista de la que es propietario como juego de datos registrado (o registrar un objeto en otro esquema si el usuario tiene el privilegio READ WITH GRANT OPTION
en el objeto). Los juegos de datos registrados proporcionan acceso remoto al objeto registrado con enlaces en la nube, según el ámbito especificado con el procedimiento REGISTER
.
Para ejecutar DBMS_CLOUD_LINK.REGISTER
, DBMS_CLOUD_LINK.UPDATE_REGISTRATION
o DBMS_CLOUD_LINK.UNREGISTER
, debe tener el privilegio de ejecución en el paquete DBMS_CLOUD_LINK
, además de haber ejecutado previamente DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Por defecto, solo el usuario ADMIN y los esquemas con el rol PDB_DBA
tienen privilegios de ejecución en DBMS_CLOUD_LINK
.
Tema principal: Paquete DBMS_CLOUD_LINK
Resumen de Subprogramas DBMS_CLOUD_LINK
Muestra una tabla con un resumen de los subprogramas incluidos en el paquete DBMS_CLOUD_LINK
.
Subprograma | Descripción |
---|---|
Esta función recupera la descripción de un juego. La descripción se proporciona cuando un juego de datos se registra con |
|
Recupera el espacio de nombres, el nombre y la descripción de los juegos de datos que coinciden con la cadena de búsqueda. Los juegos de datos coincidentes solo se muestran si el usuario puede acceder a ellos en función de las restricciones de acceso. |
|
Devuelve un identificador único para la instancia de Autonomous Database. Las llamadas repetidas a |
|
Otorga autorización a una base de datos especificada para acceder al juego de datos especificado. |
|
Registra una tabla o vista como juego de datos. |
|
Revoca la autorización para que una base de datos especificada acceda al juego de datos especificado. |
|
Elimina un juego de datos registrado. |
|
Actualiza los atributos de un juego de datos que se ha registrado mediante |
- Función ESCRIBE
Esta función recupera la descripción de un juego de datos. La descripción se proporciona cuando un juego de datos se registra conDBMS_CLOUD_LINK.REGISTER
. - Procedimiento FIND
Este procedimiento recupera el espacio de nombres, el nombre y la descripción de los juegos de datos que coinciden con la cadena de búsqueda. Los juegos de datos coincidentes solo se muestran si el usuario puede acceder a ellos en función de las restricciones de acceso. - GET_DATABASE_ID Función
La función devuelve un identificador único para la instancia de Autonomous Database. Las llamadas repetidas aDBMS_CLOUD_LINK.GET_DATABASE_ID
en la misma instancia siempre devuelven el mismo valor. - GRANT_AUTHORIZATION Procedimiento
Este procedimiento otorga autorización a una base de datos especificada para acceder al juego de datos especificado. - Procedimiento REGISTER
El procedimiento registra una tabla o una vista como un juego de datos para permitir el acceso remoto de solo lectura, sujeto a las restricciones impuestas por el parámetroscope
. - Procedimiento REVOKE_AUTHORIZATION
Este procedimiento revoca la autorización para que una base de datos especificada acceda al juego de datos especificado. - Procedimiento UNREGISTER
El procedimiento permite a un usuario que ha registrado previamente una tabla o una vista con el procedimientoREGISTER
anular el registro de la tabla o vista para que ya no esté disponible para el acceso remoto. - Procedimiento UPDATE_REGISTRATION
El procedimiento actualiza uno o más de los atributos de un juego de datos registrado medianteDBMS_CLOUD_LINK.REGISTER
.
Tema principal: Paquete DBMS_CLOUD_LINK
Función DESCRIBE
DBMS_CLOUD_LINK.REGISTER
.
Sintaxis
DBMS_CLOUD_LINK.DESCRIBE
(
namespace IN VARCHAR2,
name IN VARCHAR2
) return CLOB;
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica el espacio de nombres del juego de datos registrado. |
|
Especifica el nombre de un juego de datos registrado. |
Nota de uso
Puede utilizar esta función sujeta a las restricciones de acceso impuestas en el momento del registro con DBMS_CLOUD_LINK.REGISTER
. Si una base de datos no puede acceder a un juego de datos, no se recuperará su descripción.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
FIND Procedimiento
Sintaxis
DBMS_CLOUD_LINK.FIND
(
search_string IN VARCHAR2,
search_result OUT CLOB
);
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica la cadena de búsqueda. La cadena de búsqueda no distingue entre mayúsculas y minúsculas. |
|
Documento JSON que incluye los valores de espacio de nombres, nombre y descripción para el juego de datos. |
Nota de uso
La cadena de búsqueda no distingue entre mayúsculas y minúsculas y el paquete utiliza la búsqueda de texto libre mediante Oracle Text.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
Función GET_DATABASE_ID
DBMS_CLOUD_LINK.GET_DATABASE_ID
en la misma instancia siempre devuelven el mismo valor.
Puede llamar a esta función en una base de datos que accede a un juego de datos registrado de forma remota para obtener el ID de base de datos. Esto le permite proporcionar la base de datos iD para que el propietario de un juego de datos pueda aprovechar un control de acceso de datos más detallado, por ejemplo con VPD, basado en un ID de base de datos especificado de sitios remotos.
Un ID de base de datos identifica cada base de datos remota que accede a un juego de datos registrado, para realizar un seguimiento y auditar el acceso en las V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS Views de la base de datos que posee un juego de datos registrado.
Sintaxis
DBMS_CLOUD_LINK.GET_DATABASE_ID
()
RETURN VARCHAR2;
Notas de uso
Los enlaces en la nube utilizan el identificador único que devuelve DBMS_CLOUD_LINK.GET_DATABASE_ID
para identificar bases de datos individuales que acceden a un juego de datos de forma remota. La base de datos propietaria del juego de datos registrado realiza un seguimiento y audita el ID de base de datos como un registro del origen para el acceso al juego de datos en las V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS Views.
El identificador DBMS_CLOUD_LINK.GET_DATABASE_ID
está disponible como valor SYS_CONTEXT
para que pueda obtener mediante programación esta información sobre una sesión remota de conexión mediante SYS_CONTEXT
, con el fin de restringir y controlar aún más a qué datos específicos pueden acceder de forma remota las instancias individuales de Autonomous Database con bases de datos privadas virtuales (VPD).
Valores de Retorno
Identificador único de la instancia de Autonomous Database de VARCHAR2
.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
GRANT_AUTHORIZATION Procedimiento
Sintaxis
DBMS_CLOUD_LINK.GRANT_AUTHORIZATION
(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica el ID de base de datos para una instancia de Autonomous Database. Utilice |
|
Especifica el espacio de nombres de juego de datos para otorgar autorización de acceso para el |
|
Especifica el nombre del juego de datos para otorgar autorización de acceso para el |
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
Procedimiento REGISTER
scope
.
Sintaxis
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
);
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica el propietario de la tabla o vista especificada con el parámetro |
schema_object |
Especifica el nombre de una tabla o vista. Los objetos válidos son:
No se admiten otros objetos, como vistas analíticas o sinónimos. |
namespace |
Especifica el espacio de nombres para el juego de datos. Un valor |
name |
Especifica el nombre para el conjunto de datos. |
description |
Especifica el texto para describir los datos. |
scope |
Describe quién tiene permiso para acceder al juego de datos. El valor es una lista separada por comas que consta de una o más de las siguientes opciones:
Los valores de ámbito, |
|
Especifica que se necesita una autorización adicional para que las bases de datos lean desde el juego de datos. Los casos posibles son los siguientes:
|
|
Especifica el propietario del juego de datos. Indica a quién pertenece el conjunto de datos o quién es el responsable de actualizar y mantener el conjunto de datos. Por ejemplo, puede definir |
|
Especifica uno o más OCID de Autonomous Database de clonaciones de refrescamiento en las que se descarga el acceso a los juegos de datos, desde la instancia de Autonomous Database en la que se registra el juego de datos. El valor
Por ejemplo, a continuación se muestra un ejemplo de JSON con tres pares de valores
Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con Por ejemplo, a continuación se muestra un ejemplo de JSON con un par de valores
Consulte Uso de clonaciones de refrescamiento con Autonomous Database para obtener información sobre el uso de clonaciones de refrescamiento. |
Notas de uso
-
Después de registrar un objeto, puede que los usuarios tengan que esperar hasta diez (10) minutos para acceder al objeto con enlaces en la nube.
-
Utilice el procedimiento
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
para cambiar los atributos de un juego de datos existente.El tiempo de espera para que se complete la actualización puede ser de hasta 10 minutos para que un cambio de registro se propague y se pueda acceder a él a través de enlaces en la nube. Este retraso puede afectar a la precisión de los datos en las vistas
DBA_CLOUD_LINK_REGISTRATIONS
yDBA_CLOUD_LINK_ACCESS
. -
Puede registrar una tabla o vista que resida en el esquema de otro usuario cuando tenga privilegios
READ
WITH
GRANT
OPTION
para la tabla o vista. -
El ámbito que define al registrar un juego de datos solo se respeta cuando coincide o es más restrictivo que el valor definido con
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Por ejemplo, supongamos que el ADMIN ha otorgado el ámbito'MY$TENANCY'
conGRANT_REGISTER
y el usuario especifica'MY$REGION'
cuando registra un juego de datos conDBMS_CLOUD_LINK.REGISTER
. En este caso, verían un error como el siguiente:ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION
-
Algunas comprobaciones de validez jerárquica para el registro no pueden realizarse en el momento del registro. Las inscripciones no válidas no serán visibles, detectables ni siquiera accesibles para nadie.
-
Para utilizar
DBMS_CLOUD_LINK.REGISTER
, debe tener el privilegio de ejecución en el paqueteDBMS_CLOUD_LINK
, además del privilegio de registro asignado conDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Solo el usuario ADMIN y los esquemas conPDB_DBA
tienen este privilegio por defecto. -
Al registrar un juego de datos en una clonación de refrescamiento en una región remota, la llamada de
DBMS_CLOUD_LINK.REGISTER
en la clonación de región remota debe utilizar los mismos parámetros con los mismos valores que en la base de datos de origen, con la excepción del parámetrooffload_targets
.Por ejemplo, al ejecutar
DBMS_CLOUD_LINK.REGISTER
con el ámbito definido enMY$COMPARTMENT
en la instancia de Autonomous Database de origen, vuelva a ejecutar el procedimiento en la clonación de refrescamiento entre regiones con el mismo valor de parámetro de ámbito (MY$COMPARTMENT
). -
Si especifica el parámetro
offload_targets
conDBMS_CLOUD_LINK.REGISTER
en el origen, debe omitir este parámetro al registrar el juego de datos en una clonación de refrescamiento entre regiones.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
REVOKE_AUTHORIZATION Procedimiento
Sintaxis
DBMS_CLOUD_LINK.REVOKE_AUTHORIZATION
(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica el ID de base de datos para una instancia de Autonomous Database. Utilice |
|
Especifica el espacio de nombres del juego de datos para revocar la autorización de acceso para el |
|
Especifica el nombre del juego de datos para revocar la autorización de acceso para el |
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
Procedimiento UNREGISTER
REGISTER
anular el registro de la tabla o vista para que ya no esté disponible para el acceso remoto.
Sintaxis
DBMS_CLOUD_LINK.UNREGISTER
(
namespace IN VARCHAR2,
name IN VARCHAR2
);
Parámetros
Parámetro | Descripción |
---|---|
|
Especifica un nombre de usuario. |
name |
Especifica el nombre para el conjunto de datos. |
Nota de uso
DBMS_CLOUD_LINK.UNREGISTER
también puede tardar hasta diez (10) minutos en propagarse por completo, después de lo cual se puede acceder a los datos de forma remota.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK
UPDATE_REGISTRATION Procedimiento
DBMS_CLOUD_LINK.REGISTER
.
Sintaxis
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
);
Parámetros
Parámetro | Descripción |
---|---|
namespace |
Especifica el espacio de nombres del juego de datos que se va a actualizar. |
name |
especifica el nombre del juego de datos que se va a actualizar. |
description |
Especifica el texto actualizado para describir los datos. Si se transfiere Por defecto, no se actualiza este atributo. |
scope |
Actualice el ámbito con el valor especificado. El ámbito describe quién tiene permiso para acceder al juego de datos. El valor es una lista separada por comas que consta de una o más de las siguientes opciones:
Los valores de ámbito, Si se transfiere Por defecto, no se actualiza este atributo. |
|
Especifica que se necesita una autorización adicional para que las bases de datos lean desde el juego de datos. Los casos posibles son los siguientes:
Si se transfiere Por defecto, no se actualiza este atributo. |
|
Especifica el propietario del juego de datos. Indica a quién pertenece el conjunto de datos o quién es el responsable de actualizar y mantener el conjunto de datos. Por ejemplo, puede definir Si se transfiere Por defecto, no se actualiza este atributo. |
|
Especifica uno o más OCID de Autonomous Database de clonaciones de refrescamiento en las que se descarga el acceso a los juegos de datos, desde la instancia de Autonomous Database en la que se registra el juego de datos. El valor
Por ejemplo, a continuación se muestra un ejemplo de JSON con tres pares de valores
Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con Por ejemplo, a continuación se muestra un ejemplo de JSON con un par de valores
Consulte Uso de clonaciones de refrescamiento con Autonomous Database para obtener información sobre el uso de clonaciones de refrescamiento. Si se transfiere Por defecto, no se actualiza este atributo. |
Notas de uso
-
Los atributos
schema_name
yschema_object
de un juego de datos no se pueden actualizar. -
Después de actualizar el registro de un objeto, puede que los usuarios tengan que esperar hasta diez (10) minutos para acceder al objeto mediante los atributos actualizados con enlaces en la nube.
-
Puede actualizar el registro de una tabla o vista que reside en el esquema de otro usuario cuando tiene privilegios
READ
WITH
GRANT
OPTION
para la tabla o vista. -
El ámbito que define al actualizar el registro de un juego de datos solo se respeta cuando coincide o es más restrictivo que el valor definido con
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Por ejemplo, supongamos que el administrador ha otorgado el ámbito'MY$TENANCY'
conGRANT_REGISTER
y que el usuario especifica'MY$REGION'
cuando actualiza el registro para el juego de datos conDBMS_CLOUD_LINK.UPDATE_REGISTRATION
. En este caso, verían un error como el siguiente:ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION
-
No se pueden realizar ciertas comprobaciones de validez jerárquica para un registro actualizado cuando se actualiza el registro. Las inscripciones no válidas no serán visibles, detectables ni siquiera accesibles para nadie.
-
El usuario que ha registrado un juego de datos puede actualizar sus atributos con
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
. Además, debe tener el privilegio de ejecución en el paqueteDBMS_CLOUD_LINK
y el privilegio de registro asignado conDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Solo el usuario ADMIN y los esquemas conPDB_DBA
tienen este privilegio por defecto. -
Al actualizar el registro de un juego de datos en una clonación de refrescamiento en una región remota, la llamada de
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
en la clonación de región remota debe utilizar los mismos parámetros con los mismos valores que en la base de datos de origen, con la excepción del parámetrooffload_targets
.Por ejemplo, al ejecutar
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
con el ámbito definido enMY$COMPARTMENT
en la instancia de Autonomous Database de origen, vuelva a ejecutar el procedimiento en la clonación de refrescamiento entre regiones con el mismo valor de parámetro de ámbito (MY$COMPARTMENT
). -
Si especifica el parámetro
offload_targets
conDBMS_CLOUD_LINK.REGISTER
en el origen, debe omitir este parámetro al registrar el juego de datos en una clonación de refrescamiento entre regiones.
Tema principal: Resumen de subprogramas DBMS_CLOUD_LINK