Uso del enlace de nube para el acceso a datos de solo lectura en Autonomous Database

Los enlaces en la nube proporcionan un método basado en la nube para acceder de forma remota a datos de solo lectura en una instancia de Autonomous Database.

Acerca de los enlaces en la nube en Autonomous Database

Con Cloud Links, un propietario de datos registra una tabla o vista para el acceso remoto para un público seleccionado según lo definido por el propietario de los datos y, a continuación, los datos son accesibles para aquellos con acceso otorgado en el momento del registro. No se requieren más acciones para configurar Cloud Links y quien se supone que debe ver y acceder a sus datos es capaz de descubrir y trabajar con los datos.

La implantación de enlaces en la nube utiliza los mecanismos de acceso de Oracle Cloud Infrastructure para que los datos sean accesibles dentro de un ámbito específico. Ámbito indica quién puede acceder de forma remota a los datos. El ámbito se puede definir en varios niveles, incluida la región en la que reside la base de datos, los arrendamientos individuales o los compartimentos. Además, puede especificar que la autorización para acceder a un juego de datos esté limitada a una o más instancias de Autonomous Database.

Al crear una o más clonaciones de refrescamiento entre regiones a partir de la instancia de Autonomous Database de origen (propietario del juego de datos), puede utilizar enlaces en la nube para compartir datos entre varias regiones.

Los enlaces en la nube simplifican en gran medida el uso compartido de tablas o vistas en las instancias de Autonomous Database, en comparación con los mecanismos de enlace de base de datos tradicionales. Con Cloud Links puede detectar datos sin necesidad de una configuración compleja de enlaces de base de datos. Autonomous Database proporciona acceso transparente mediante SQL e implementa la aplicación de privilegios con el ámbito de enlaces en la nube y otorgando autorización a instancias individuales de Autonomous Database.

Cloud Links presenta los conceptos de espacios de nombres regionales y nombres de datos a los que se puede acceder de forma remota. Es similar a las tablas de Oracle existentes en las que hay una tabla, por ejemplo "EMP" que reside en un espacio de nombres (esquema), por ejemplo "LWARD". Solo puede haber un LWARD.EMP en la base de datos. Los enlaces en la nube proporcionan un nombre y un espacio de nombres similares a nivel regional, que no están vinculados a una sola base de datos, sino que se aplican en muchas instancias de Autonomous Database, tal como se especifica con el ámbito y, opcionalmente, con autorización de base de datos.

Por ejemplo, puede registrar un juego de datos en el espacio de nombres FOREST y, por motivos de seguridad o por conveniencia de nomenclatura, puede proporcionar un espacio de nombres y un nombre que no sean el esquema y los nombres de objeto originales. En este ejemplo, TREE_DATA es el nombre visible del juego de datos registrado y no es necesario que este nombre sea el nombre de la tabla de origen. Además del espacio de nombres y el nombre, la palabra clave cloud$link indica a la base de datos que debe resolver el origen como un enlace de nube.

Para acceder a un juego de datos registrado, incluya el espacio de nombres, el nombre y la palabra clave cloud$link en la cláusula FROM de una sentencia SELECT:

SELECT county, species, height FROM FOREST.TREE_DATA@cloud$link;

Opcionalmente, puede especificar que el acceso a un juego de datos de una o más bases de datos se descargue en una clonación de refrescamiento. Cuando una instancia de Autonomous Database de un consumidor aparece en la lista de descarga de un juego de datos, el acceso al juego de datos se dirige a la clonación de refrescamiento. Además, puede utilizar la función de descarga de consultas unificadas, donde puede configurar un líder o miembro de pool elástico como proveedor de enlaces en la nube y activar la descarga de consultas ProxySQL para descargar consultas (lecturas) en cualquier número de clones de refrescamiento.

Nota

Los enlaces en la nube proporcionan acceso de solo lectura a objetos remotos en una instancia de Autonomous Database. Si desea utilizar enlaces de base de datos con otras bases de datos Oracle o con bases de datos que no sean de Oracle, o si desea utilizar los datos remotos con operaciones DML, debe utilizar enlaces de base de datos. Consulte Uso de enlaces de base de datos con Autonomous Database para obtener más información.
Los enlaces en la nube soportan sinónimos privados y públicos. Por ejemplo, puede definir y utilizar un sinónimo para FOREST.TREE_DATA@cloud$link:
CREATE SYNONYM S1 for FOREST.TREE_DATA@cloud$link;
SELECT county, species, height FROM S1;

CREATE PUBLIC SYNONYM S2 for FOREST.TREE_DATA@cloud$link;
SELECT * FROM S2;

Consulte Visión general de sinónimos para obtener más información sobre los sinónimos.

Términos de enlaces en la nube

Hay varios conceptos y términos que se pueden utilizar al trabajar con enlaces en la nube:

  • Juego de datos registrado (juego de datos): identifica una tabla o vista que se ha activado para el acceso remoto en una instancia de Autonomous Database. Un juego de datos registrado también indica quién tiene permiso para acceder al juego de datos (su ámbito). El registro de juegos de datos define un espacio de nombres y un nombre para su uso con enlaces en la nube. Después del registro del juego de datos, estos valores juntos especifican el nombre completo (FQN) para el acceso remoto y permiten que los enlaces en la nube gestionen la accesibilidad del juego de datos.

  • Propietario de juego de datos: especifique un propietario de juego de datos para proporcionar un punto de contacto para las preguntas sobre un juego de datos.

  • Ámbito: especifica quién y desde dónde se permite a un usuario acceder a un juego de datos registrado. Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información sobre el ámbito.

  • OCID (identificador de Oracle Cloud): identifica un arrendamiento, compartimento o base de datos específicos. El ámbito de un juego de datos registrado se puede expresar en términos de OCID. Consulte Identificadores de recursos para obtener más información.

  • Registro de datos: con el registro de datos, un usuario hace que una tabla o vista esté disponible para el acceso remoto, sujeto a las restricciones de acceso impuestas por el ámbito y, opcionalmente, sujeto a un paso de autorización adicional. Puede permitir el acceso remoto con enlaces en la nube en una tabla o vista almacenada en la base de datos o en datos almacenados en el almacén de objetos.

  • Detección de datos: se puede detectar un juego de datos registrado mediante consultas textuales de la base de datos. La detección solo muestra un juego de datos si hay un privilegio para acceder al juego de datos. Puede buscar un juego de datos registrado por nombre o por descripción.

  • Describir datos: permite a un usuario recuperar una descripción o metadatos para una tabla o vista que esté disponible como juego de datos registrado.

  • Destinos de descarga: si lo desea, puede especificar uno o más destinos de descarga. Los destinos de descarga son clonaciones de refrescamiento que proporcionan juegos de datos de enlaces en la nube a instancias de Autonomous Database especificadas. Al especificar un destino de descarga, puede dedicar una instancia de Autonomous Database para proporcionar juegos de datos para separar la producción del desarrollo, para el rendimiento, para garantizar la seguridad o por otros motivos. Consulte Uso de clonaciones de refrescamiento con Autonomous Database para obtener más información.

Auditoría de enlaces a la nube

Cualquier acceso a un juego de datos registrado mediante enlaces en la nube se registra con fines de auditoría. El log incluye el arrendamiento, el compartimento o la base de datos a los que se ha accedido al juego de datos, la cantidad de datos a los que se ha accedido y la información adicional. Las vistas V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS muestran información de auditoría.

Metadatos de juego de datos y vistas de auditoría

Cada instancia de Autonomous Database proporciona vistas que exponen los metadatos del juego de datos y le permiten supervisar y auditar el uso de datos. Consulte Supervisión y visualización de información de enlaces en la nube para obtener más información.

Ámbito de juego de datos, control de acceso y autorización

Los enlaces en la nube aprovechan los mecanismos de acceso de Oracle Cloud Infrastructure para que los juegos de datos registrados sean accesibles y para proteger sus datos con restricciones de acceso.

Autonomous Database determina la accesibilidad de los juegos de datos registrados de la siguiente manera:

  • El usuario ADMIN especifica un ámbito para un usuario que permite al usuario registrar juegos de datos según el ámbito proporcionado.

  • Un usuario al que se le han otorgado privilegios para registrar juegos de datos especifica un ámbito al registrar un juego de datos.

  • De manera opcional, al registrar un juego de datos, un usuario al que se le hayan otorgado privilegios de autorización puede especificar que se requiera un paso de autorización para acceder a un juego de datos. Este paso de autorización se suma a la autorización de acceso de nivel de ámbito.

Ámbito de juego de datos

ADMIN define el ámbito de un usuario con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER para que sea uno de los siguientes:

  • 'MY$REGION'
  • 'MY$TENANCY'
  • 'MY$COMPARTMENT'

El ámbito de un usuario es jerárquico, lo que significa que un usuario al que se le otorga uno de estos ámbitos puede permitir el acceso de la siguiente manera:

  • MY$REGION: un usuario puede otorgar acceso de datos remoto a otros arrendamientos de la región de la instancia de Autonomous Database que está registrando el juego de datos. Este es el ámbito menos restrictivo.

  • MY$TENANCY: un usuario puede otorgar acceso a datos remotos a cualquier recurso, arrendamiento, compartimento o base de datos en el arrendamiento de la instancia de Autonomous Database que está registrando el juego de datos. Este ámbito es más restrictivo que el ámbito MY$REGION.

  • MY$COMPARTMENT: un usuario puede otorgar acceso a datos remotos a cualquier recurso, compartimento o base de datos del compartimento de la instancia de Autonomous Database que esté registrando el juego de datos. Este es el ámbito más restrictivo que puede definir para un usuario con GRANT_REGISTER.

A continuación, el ámbito que define al registrar un juego de datos determina desde dónde se permite a los usuarios acceder al juego de datos. DBMS_CLOUD_LINK.REGISTER scope es una lista separada por comas que consta de una o más de las siguientes opciones:

  • OCID de base de datos: se permite el acceso al conjunto de datos para las instancias específicas de la instancia de Autonomous Database identificadas por OCID.

  • OCID de compartimento: se permite el acceso al juego de datos para las bases de datos en los compartimentos identificados por OCID de compartimento.

  • OCID de arrendamiento: se permite el acceso al juego de datos para las bases de datos en los arrendamientos identificados por OCID de arrendamiento.

  • Nombre de región: se permite el acceso al juego de datos para las bases de datos de la región identificada por la región con nombre. En todos los casos, el acceso a enlaces en la nube está limitado a una sola región y no es entre regiones.

  • MY$COMPARTMENT: se permite el acceso al conjunto de datos para las bases de datos del mismo compartimento que el del propietario de juego.

  • MY$TENANCY: se permite el acceso al juegos de datos para las bases de datos del mismo arrendamiento que el del propietario de juego.

  • MY$REGION: se permite el acceso al conjunto de datos para las bases de datos de la misma región que el del propietario de juego.

Los valores de ámbito, MY$REGION, MY$TENANCY y MY$COMPARTMENT son variables que actúan como macros de conveniencia y se resuelven en OCID.

Nota

El ámbito que define al registrar un juego de datos solo se respeta cuando coincide o es más restrictivo que el juego de valores con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Por ejemplo, supongamos que el ADMIN ha otorgado el ámbito 'MY$TENANCY' con GRANT_REGISTER y el usuario especifica 'MY$REGION' cuando registra un juego de datos con DBMS_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

También puede utilizar un mecanismo de control de acceso adicional basado en un valor SYS_CONTEXT. Este mecanismo utiliza la función DBMS_CLOUD_LINK.GET_DATABASE_ID que devuelve un identificador que está disponible como valor SYS_CONTEXT.

Al registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER, puede utilizar el valor SYS_CONTEXT en las políticas de seguridad de Oracle Virtual Private Database (VPD) para controlar el acceso a la base de datos para restringir y controlar aún más a qué datos específicos pueden acceder las instancias individuales de Autonomous Database.

Consulte Definición de una política de base de datos privada virtual para proteger un juego de datos registrado para obtener más información sobre el uso de políticas de VPD.

El valor de ID de base de datos también está disponible en las V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS Views que realizan un seguimiento de las estadísticas de acceso y la información de auditoría.

Consulte Uso de Oracle Virtual Private Database para Controlar el Acceso a Datos para obtener más información.

Autorización de juego de datos

Al registrar un juego de datos, si se le han otorgado privilegios de autorización, puede especificar que la autorización de OCID de base de datos es necesaria para acceder a un juego de datos. Para proporcionar autorización de OCID de base de datos para un juego de datos, utilice el procedimiento DBMS_CLOUD_LINK.GRANT_AUTHORIZATION para especificar las instancias de Autonomous Database que están autorizadas para acceder al juego de datos. Antes de ejecutar DBMS_CLOUD_LINK.GRANT_AUTHORIZATION, ADMIN debe autorizarle a ejecutar este procedimiento con DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE.

El registro del juego de datos con la autorización necesaria especifica el acceso a nivel de base de datos para un juego de datos, además del control de acceso de ámbito especificado para el juego de datos, de la siguiente forma:

  • Las bases de datos que se encuentran dentro del SCOPE especificado y se han autorizado con DBMS_CLOUD_LINK.GRANT_AUTHORIZATION pueden ver filas del juego de datos.

  • Las bases de datos que estén dentro del SCOPE especificado pero no se hayan autorizado con DBMS_CLOUD_LINK.GRANT_AUTHORIZATION no pueden ver las filas del juego de datos. En este caso, los consumidores sin autorización ven el juego de datos como vacío.

  • Las bases de datos que no están dentro del SCOPE especificado muestran un error al intentar acceder al juego de datos.

Otorgar acceso a enlaces de nube para usuarios de base de datos

El usuario ADMIN otorga privilegios a los usuarios de la base de datos para registrar juegos de datos. El usuario ADMIN también otorga privilegios a los usuarios de la base de datos para acceder a los juegos de datos registrados.

Cuando el usuario ADMIN otorga privilegios de registro, proporciona un ámbito que especifica el ámbito máximo que puede proporcionar un usuario al registrar un juego de datos (dentro de la jerarquía de ámbito). Los valores scope válidos para su uso con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER son:

  • 'MY$REGION'
  • 'MY$TENANCY'
  • 'MY$COMPARTMENT'

Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

  1. Como usuario ADMIN, permita que un usuario registre juegos de datos dentro de un ámbito especificado.
    BEGIN
    DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER(
       username => 'DB_USER1',
       scope    => 'MY$REGION');
    END;
    /

    Especifica que el usuario DB_USER1 tiene privilegios para registrar juegos de datos dentro de un ámbito especificado, 'MY$REGION'.

    Un usuario puede consultar SYS_CONTEXT('USERENV', 'CLOUD_LINK_REGISTER_ENABLED') para comprobar si están activados para registrar juegos de datos.

    Por ejemplo, la siguiente consulta:

    SELECT SYS_CONTEXT('USERENV', 'CLOUD_LINK_REGISTER_ENABLED') FROM DUAL;

    Devuelve 'YES' o 'NO'.

    Consulte GRANT_REGISTER Procedure para obtener más información.

  2. Como usuario ADMIN, permita que un usuario acceda a los juegos de datos registrados.
    EXEC DBMS_CLOUD_LINK_ADMIN.GRANT_READ('LWARD');

    Esto permite a LWARD acceder a juegos de datos registrados que están disponibles para la instancia de Autonomous Database.

    Un usuario puede consultar SYS_CONTEXT('USERENV', 'CLOUD_LINK_READ_ENABLED') para comprobar si están activados para el acceso READ a un juego de datos.

    Por ejemplo, la siguiente consulta:

    SELECT SYS_CONTEXT('USERENV', 'CLOUD_LINK_READ_ENABLED') FROM DUAL;

    Devuelve 'YES' o 'NO'.

    Consulte GRANT_READ Procedure para obtener más información.

  3. Durante el registro de datos, puede definir el parámetro de autorización necesario en TRUE. Cuando la autorización necesaria es TRUE, el usuario ADMIN debe ejecutar DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE para proporcionar la autorización para llamar a DBMS_CLOUD_LINK.GRANT_AUTHORIZATION. Utilice DBMS_CLOUD_LINK.GRANT_AUTHORIZATION para especificar los detalles de autorización.

    Consulte Registro de un juego de datos con autorización necesaria para obtener más información.

  4. Cuando la instancia de Autonomous Database tiene Database Vault activado y la tabla o vista que se va a registrar con enlaces en la nube está protegida por un dominio, el propietario de la tabla o vista debe estar autorizado para el dominio como propietario del dominio antes del registro.
    BEGIN
         DBMS_MACADM.ADD_AUTH_TO_REALM(
               realm_name   => 'myrealm',
               grantee      => 'object_owner',
               auth_option  => dbms_macutl.g_realm_auth_owner);
    END;
    /

    Si el dominio que protege la tabla o vista es un dominio obligatorio, el esquema común de Autonomous Database denominado C##DATA$SHARE, que se utiliza internamente como esquema de conexión, debe estar autorizado para el dominio como participante del dominio.

    Por ejemplo:

    BEGIN
         DBMS_MACADM.ADD_AUTH_TO_REALM(
               realm_name   => 'myrealm',
               grantee      => 'C##DATA$SHARE',
               auth_option  => dbms_macutl.g_realm_auth_participant);
    END;
    /

    Consulte Uso de Oracle Database Vault con Autonomous Database para obtener más información.

Notas para otorgar privilegios a los usuarios de la base de datos para registrar juegos de datos:

  • Para registrar juegos de datos o ver y acceder a juegos de datos remotos, debe haber otorgado el privilegio adecuado para registrarse con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER o para leer juegos de datos con DBMS_CLOUD_LINK_ADMIN.GRANT_READ.

    Esto también es cierto para el usuario ADMIN; sin embargo, el usuario ADMIN puede otorgar privilegios a sí mismo.

  • Las vistas DBA_CLOUD_LINK_PRIVS y USER_CLOUD_LINK_PRIVS proporcionan información sobre los privilegios de usuario. Consulte Supervisión y visualización de información de enlaces en la nube para obtener más información.

  • Un usuario puede ejecutar la siguiente consulta para comprobar si está activado para autenticar juegos de datos protegidos y registrados:

    SELECT SYS_CONTEXT('USERENV', 'CLOUD_LINK_AUTH_ENABLED') FROM DUAL;

Revocar acceso de enlaces a la nube para usuarios de base de datos

El usuario ADMIN puede revocar el registro para impedir que un usuario registre juegos de datos para el acceso remoto. El usuario ADMIN también puede revocar privilegios o usuarios de base de datos para acceder a los juegos de datos registrados.

  1. Como usuario ADMIN, revoque los privilegios de un usuario para registrar juegos de datos.

    Por ejemplo:

    EXEC DBMS_CLOUD_LINK_ADMIN.REVOKE_REGISTER('DB_USER1');

    Esto revoca los privilegios para registrar juegos de datos para el usuario, DB_USER1.

    La ejecución de DBMS_CLOUD_LINK_ADMIN.REVOKE_REGISTER no afecta a los juegos de datos que ya están registrados. Utilice DBMS_CLOUD_LINK.UNREGISTER para eliminar el acceso a un juego de datos registrado.

    Consulte Procedimiento REVOKE_REGISTER y Procedimiento UNREGISTER para obtener más información.

  2. Como usuario ADMIN, revoque el acceso a los juegos de datos registrados.

    Por ejemplo:

    EXEC DBMS_CLOUD_LINK_ADMIN.REVOKE_READ('LWARD');

    Esto revoca el acceso a los juegos de datos de enlaces en la nube para el usuario LWARD.

    Consulte REVOKE_READ Procedure para obtener más información.

Registro de un juego de datos

Describe las opciones y los pasos para registrar una tabla o ver su propiedad como un juego de datos registrado para compartir con enlaces en la nube.

Registro o anulación del registro de un juego de datos

Puede registrar una tabla o ver su propiedad como un juego de datos registrado. Cuando desee eliminar o sustituir el juego de datos, debe anular el registro. Después de registrar un juego de datos, puede cambiar los valores de los atributos de un juego de datos.

El registro de juegos de datos define un espacio de nombres y un nombre para su uso con enlaces en la nube. Después del registro del juego de datos, estos valores juntos especifican el nombre completo (FQN) para el acceso remoto y permiten que los enlaces en la nube gestionen la accesibilidad del juego de datos.

Para registrar un juego de datos:

  1. Obtenga privilegios de registro de otorgamiento del usuario ADMIN.
  2. Registre uno o más juegos de datos.

    Por ejemplo, suponiendo que haya un esquema CLOUDLINK en la instancia de Autonomous Database, puede registrar dos objetos, SALES_VIEW_AGG y SALES_ALL, y proporcionar diferentes parámetros scope para determinar cómo se accede a los objetos.

    BEGIN
       DBMS_CLOUD_LINK.REGISTER(
        schema_name    => 'CLOUDLINK',
        schema_object  => 'SALES_VIEW_AGG',
        namespace      => 'REGIONAL_SALES', 
        name           => 'SALES_AGG',
        description    => 'Aggregated regional sales information.',
        scope          => 'MY$TENANCY',
        auth_required  =>  FALSE,
        data_set_owner =>  'amit@example.com' );
    END;
    /
    BEGIN
       DBMS_CLOUD_LINK.REGISTER(
        schema_name    => 'CLOUDLINK',
        schema_object  => 'SALES_ALL',
        namespace      => 'TRUSTED_COMPARTMENT', 
        name           => 'SALES',
        description    => 'Trusted Compartment, only accessible within my compartment. Early sales data.',
        scope          => 'MY$COMPARTMENT',
        auth_required  =>  FALSE,
        data_set_owner =>  'amit@example.com' );
    END;
    /

    Los parámetros son:

    • schema_name: es el nombre del esquema (el propietario del objeto).

    • schema_object: es el nombre del objeto. Los objetos válidos son:

      Nota

      Otros objetos, como vistas analíticas o sinónimos, no están soportados.
    • namespace: es el espacio de nombres que proporciona como nombre para el acceso con enlaces en la nube (una parte del FQN de enlace en la nube).

      Un valor NULL especifica un valor namespace generado por el sistema, único para la instancia de Autonomous Database.

    • name: es el nombre que proporciona para el acceso a los enlaces en la nube (una parte del FQN de enlace en la nube).

    • description: especifica el texto para describir los datos.

    • scope: especifica el ámbito. Puede utilizar una de las variables: MY$REGION, MY$TENANCY o MY$COMPARTMENT, o bien especificar uno o más OCID.

      Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

    • auth_required: valor booleano que especifica si la autorización de nivel de base de datos es necesaria para el juego de datos, además del control de acceso de ámbito. Cuando se define en TRUE, el juego de datos aplica un paso de autorización adicional. Consulte Registro de un juego de datos con autorización necesaria para obtener más información.

    • data_set_owner: el valor de texto especifica información sobre la persona responsable del juego de datos o un contacto para preguntas sobre el juego de datos. Por ejemplo, puede proporcionar una dirección de correo electrónico para el propietario del juego de datos.

    Consulte Procedimiento REGISTER para obtener más información.

    Para este ejemplo, una vez que el registro finaliza, el ámbito de los dos objetos registrados es diferente, según el parámetro de ámbito proporcionado con DBMS_CLOUD_LINK.REGISTER:

    • MY$TENANCY: especifica el ámbito de nivel de arrendamiento para REGIONAL_SALES.SALES_AGG.

    • MY$COMPARTMENT: especifica el ámbito de nivel de compartimento más restrictivo en el arrendamiento para TRUSTED_COMPARTMENT.SALES.

Puede actualizar algunos de los valores de atributos de un juego de datos después de registrar un juego de datos. Consulte Actualización de atributos de registro de juegos de datos para obtener más información.

Si desea revocar el acceso remoto a un juego de datos registrado, anule el registro del juego de datos.

Por ejemplo:

BEGIN
   DBMS_CLOUD_LINK.UNREGISTER(
    namespace      => 'TRUSTED_COMPARTMENT', 
    name           => 'SALES');
END;
/

Consulte Procedimiento UNREGISTER para obtener más información.

Notas para registrar o anular el registro de un juego de datos

Proporciona notas para registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER y anular el registro de un juego de datos con DBMS_CLOUD_LINK.UNREGISTER.

  • 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.

  • Cuando registre un juego de datos y desee que los consumidores de una región remota accedan al juego de datos, debe realizar pasos adicionales para que el juego de datos esté disponible en una región remota. Consulte Registro o anulación del registro de un juego de datos en una región diferente para obtener más información.

  • 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 y DBA_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.

  • Autonomous Database no realiza comprobaciones de validez jerárquicas en el momento del registro y los registros que están fuera del ámbito nunca serán visibles ni accesibles.

    Por ejemplo, tenga en cuenta la siguiente secuencia:

    1. Un usuario con el ámbito MY$COMPARTMENT registra un objeto con un ámbito que especifica un OCID de base de datos individual.

    2. Cuando un usuario solicita acceso al juego de datos registrado, Autonomous Database realiza la comprobación para ver que el OCID de base de datos de la base de datos donde se origina la solicitud está en la lista de OCID especificada con scope cuando se registró el juego de datos.

    3. Después de esto, el objeto namespace.name se podrá detectar, ver y utilizar en la base de datos en la que se originó la solicitud.

  • DBMS_CLOUD_LINK.UNREGISTER puede tardar hasta diez (10) minutos en propagarse por completo, después de lo cual se puede acceder a los datos de forma remota.

Registrar o anular el registro de un juego de datos en una región diferente

Puede utilizar enlaces en la nube en varias regiones, donde la región de origen contiene la base de datos de origen del juego de datos y una o más regiones remotas contienen clonaciones de refrescamiento de la base de datos de origen.

Descripción de cloud-links-cross-region-refreshable-clone.png a continuación
Descripción de la ilustración cloud-links-cross-region-refreshable-clone.png

Para utilizar enlaces en la nube con un juego de datos en una región diferente:

  1. Cree una clonación de refrescamiento entre regiones de la base de datos origen en una región remota.

    Consulte Creación de una clonación de refrescamiento entre arrendamientos o entre regiones para obtener información sobre la adición de una clonación de refrescamiento entre regiones.

  2. En la base de datos origen, registre el juego de datos.

    Consulte Registro o Anulación del Registro de un Juego de Datos para obtener más información.

  3. Refresque la clonación de refrescamiento.
  4. En la clonación de refrescamiento remota, registre el juego de datos con los mismos argumentos que utilizó para registrar el juego de datos en la región de origen.

    Por ejemplo, suponiendo que haya un esquema CLOUDLINK en la instancia de Autonomous Database, después de registrar SALES_ALL en la base de datos de origen, registre SALES_ALL en la clonación de refrescamiento:

    BEGIN
       DBMS_CLOUD_LINK.REGISTER(
        schema_name    => 'CLOUDLINK',
        schema_object  => 'SALES_ALL',
        namespace      => 'TRUSTED_COMPARTMENT', 
        name           => 'SALES',
        description    => 'Trusted Compartment, only accessible within my compartment. Early sales data.',
        scope          => 'MY$COMPARTMENT',
        auth_required  =>  FALSE,
        data_set_owner =>  'amit@example.com' );
    END;
    /

    Los parámetros son:

    • schema_name: es el nombre del esquema (el propietario del objeto).

    • schema_object: es el nombre del objeto. Los objetos válidos son:

      • Tablas (incluidas pilas, externas o híbridas)
      • Vistas
      • Vistas Materializadas
      Nota

      Otros objetos, como vistas analíticas o sinónimos, no están soportados.
    • namespace: es el espacio de nombres que proporciona como nombre para el acceso con enlaces en la nube (una parte del FQN de enlace en la nube).

      Un valor NULL especifica un valor namespace generado por el sistema, único para la instancia de Autonomous Database.

    • name: es el nombre que proporciona para el acceso a los enlaces en la nube (una parte del FQN de enlace en la nube).

    • description: especifica el texto para describir los datos.

    • scope: especifica el ámbito. Puede utilizar una de las variables: MY$REGION, MY$TENANCY o MY$COMPARTMENT, o bien especificar uno o más OCID.

      Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

    • auth_required: valor booleano que especifica si la autorización de nivel de base de datos es necesaria para el juego de datos, además del control de acceso de ámbito. Cuando se define en TRUE, el juego de datos aplica un paso de autorización adicional. Consulte Registro de un juego de datos con autorización necesaria para obtener más información.

    • data_set_owner: el valor de texto especifica información sobre la persona responsable del juego de datos o un contacto para preguntas sobre el juego de datos. Por ejemplo, puede proporcionar una dirección de correo electrónico para el propietario del juego de datos.

    Consulte Procedimiento REGISTER para obtener más información.

    Una vez finalizado el registro en la clonación de refrescamiento, el ámbito del objeto registrado es MY$COMPARTMENT: especifica el ámbito de nivel de compartimento más restrictivo para mi compartimento dentro de mi arrendamiento para TRUSTED_COMPARTMENT.SALES.

Puede anular el registro de un juego de datos remoto solo en las regiones remotas o en las regiones remotas y en la región de origen:

Para anular el registro de un juego de datos en una región remota y desactivar el acceso remoto al juego de datos:

  1. En la clonación de refrescamiento, anule el registro del juego de datos.

    Por ejemplo:

    BEGIN
       DBMS_CLOUD_LINK.UNREGISTER(
        namespace      => 'TRUSTED_COMPARTMENT', 
        name           => 'SALES');
    END;
    /
  2. Refresque la clonación de refrescamiento.

    Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.

Para anular el registro de un juego de datos en la base de datos de origen y anular el registro del juego de datos en clonaciones de refrescamiento de regiones remotas:

  1. En la clonación de refrescamiento remota si solo hay una, o en varias clonaciones de refrescamiento en regiones remotas si hay más de una, anule el registro del juego de datos.

    Por ejemplo:

    BEGIN
       DBMS_CLOUD_LINK.UNREGISTER(
        namespace      => 'TRUSTED_COMPARTMENT', 
        name           => 'SALES');
    END;
    /
  2. En la base de datos origen, anule el registro del juego de datos.

    Consulte Registro o Anulación del Registro de un Juego de Datos para obtener más información.

  3. Refresque las clonaciones de refrescamiento.

    Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.

Notas para registrar o anular el registro de un juego de datos en una región remota

Proporciona notas para registrar un juego de datos en una región remota.

  • 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ámetro offload_targets.

    Por ejemplo, al ejecutar DBMS_CLOUD_LINK.REGISTER con el ámbito definido en MY$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 con DBMS_CLOUD_LINK.REGISTER en el origen, debe omitir este parámetro al registrar el juego de datos en la clonación de refrescamiento.

  • 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.

  • Las siguientes acciones requieren que refresque la clonación de refrescamiento:

    • Si agrega una política de VPD al juego de datos en el origen, debe refrescar la clonación de refrescamiento.

    • Si realiza un permiso o una revocación para el juego de datos en la base de datos de origen, debe refrescar la clonación de refrescamiento.

    Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.

Registro de un juego de datos con autorización necesaria

Opcionalmente, al registrar un juego de datos, además del ámbito, puede especificar que la autorización de nivel de base de datos es necesaria para acceder a un juego de datos.

En comparación con el ejemplo anterior en el que ha definido auth_required en FALSE, en este ejemplo ha definido auth_required en TRUE. Cuando auth_required es TRUE, se necesitan pasos adicionales para especificar una o más bases de datos desde las que se autoriza el acceso al juego de datos.

Nota

Solo puede otorgar autorización, como se muestra en estos pasos, si está autorizado. El administrador otorga privilegios de autorización con DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE.
  1. Utilice DBMS_CLOUD_LINK.REGISTER para registrar los datos con la autorización necesaria.

    Suponiendo que haya un esquema CLOUDLINK en la instancia de Autonomous Database y registre el objeto SALES_VIEW_AGG y defina auth_required en TRUE, además de definir el ámbito, debe realizar pasos adicionales para determinar cómo se accede al objeto.

    BEGIN
       DBMS_CLOUD_LINK.REGISTER(
        schema_name    => 'CLOUDLINK',
        schema_object  => 'SALES_VIEW_AGG',
        namespace      => 'REGIONAL_SALES', 
        name           => 'SALES_AGG',
        description    => 'Aggregated regional sales information.',
        scope          => 'MY$TENANCY',
        auth_required  =>  TRUE,
        data_set_owner =>  'amit@example.com' );
    END;
    /

    Los parámetros son:

    • schema_name: es el nombre del esquema (el propietario del objeto).

    • schema_object: es el nombre del objeto. Los objetos válidos son:

      • Tablas (incluidas pilas, externas o híbridas)
      • Vistas
      • Vistas Materializadas
      Nota

      Otros objetos, como vistas analíticas o sinónimos, no están soportados.
    • namespace: es el espacio de nombres que proporciona como nombre para el acceso con enlaces en la nube (una parte del FQN de enlace en la nube).

      Un valor NULL especifica un valor namespace generado por el sistema, único para la instancia de Autonomous Database.

    • name: es el nombre que proporciona para el acceso a los enlaces en la nube (una parte del FQN de enlace en la nube).

    • scope: especifica el ámbito. Puede utilizar una de las variables: MY$REGION, MY$TENANCY o MY$COMPARTMENT, o bien especificar uno o más OCID.

      Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

    • auth_required: valor booleano que especifica si la autorización de nivel de base de datos es necesaria para el juego de datos, además del control de acceso de ámbito. Cuando se define en TRUE, el juego de datos aplica un paso de autorización adicional.

    • data_set_owner: el valor de texto especifica información sobre la persona responsable del juego de datos o un contacto para preguntas sobre el juego de datos. Por ejemplo, puede proporcionar una dirección de correo electrónico para el propietario del juego de datos.

  2. Obtenga el ID de la base de datos a la que desea otorgar autorización (para permitir que la base de datos acceda al juego de datos).

    En el sistema al que desea otorgar acceso al juego de datos:

    SELECT DBMS_CLOUD_LINK.GET_DATABASE_ID FROM DUAL:
  3. Utilice el ID de base de datos que ha obtenido para otorgar autorización a un juego de datos especificado.

    Solo puede otorgar autorización y ejecutar DBMS_CLOUD_LINK.GRANT_AUTHORIZATION, como se muestra en este paso, si está autorizado. El administrador otorga la autorización con DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE.

    BEGIN
       DBMS_CLOUD_LINK.GRANT_AUTHORIZATION(
        database_id    => '120xxxxxxx8506029999',
        namespace      => 'TRUSTED_COMPARTMENT', 
        name           => 'SALES');
    END;
    /

    Realice estos pasos varias veces si desea autorizar bases de datos adicionales.

Puede actualizar el valor del parámetro auth_required después de registrar un juego de datos. Consulte Actualización de atributos de registro de juegos de datos para obtener más información.

Si desea revocar la autorización para una base de datos:

BEGIN
   DBMS_CLOUD_LINK.REVOKE_AUTHORIZATION(
    database_id    => '120xxxxxxx8506029999',
    namespace      => 'TRUSTED_COMPARTMENT', 
    name           => 'SALES');
END;
/

Puede obtener más información en los siguientes enlaces:

Registro de un Juego de Datos con Destinos de Descarga para el Acceso al Juego de Datos

Si lo desea, al registrar un juego de datos, puede descargar el acceso al juego de datos en una o más instancias de Autonomous Database que son clonaciones de refrescamiento.

Utilice el parámetro opcional offload_targets con DBMS_CLOUD_LINK.REGISTER para especificar que el acceso se descarga en las clonaciones de refrescamiento. La base de datos origen para cada clonación de refrescamiento es la instancia de Autonomous Database en la que se registra el juego de datos (editor de datos).

El valor offload_targets es un documento JSON que define uno o más pares de valores de clave CLOUD_LINK_DATABASE_ID y OFFLOAD_TARGET:

  • CLOUD_LINK_DATABASE_ID es uno de los siguientes:

    • Un ID de base de datos: especifica un ID de base de datos para el consumidor del juego de datos cuya solicitud se descarga en la clonación de refrescamiento correspondiente especificada con el valor OFFLOAD_TARGET.

      Obtenga el identificador de base de datos ejecutando DBMS_CLOUD_LINK.GET_DATABASE_ID. Consulte GET_DATABASE_ID Function para obtener más información.

    • ANY: especifica que cualquier solicitud del consumidor del juego de datos se descarga en el destino de descarga correspondiente. La solicitud de juego de datos de un consumidor se enrutará al destino de descarga correspondiente.

      Si especifica ANY sin especificar los ID de base de datos, todas las solicitudes de juegos de datos de los consumidores se descargan en la clonación de refrescamiento especificada con el valor OFFLOAD_TARGET.

      Si especifica tanto los ID de base de datos como ANY, las solicitudes de juegos de datos de los consumidores que no coinciden con un ID de base de datos se descargan en la clonación de refrescamiento especificada con el valor OFFLOAD_TARGET.

  • OFFLOAD_TARGET es el OCID de una instancia de Autonomous Database que es una clonación de refrescamiento.

En la siguiente figura, se ilustra el uso de destinos de descarga.

Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con offload_targets y el identificador de base de datos de la instancia de Autonomous Database coincide con el valor especificado en CLOUD_LINK_DATABASE_ID, el acceso se descarga a la clonación de refrescamiento identificada con OFFLOAD_TARGET en el JSON proporcionado.

Por ejemplo, a continuación se muestra un ejemplo de JSON con tres pares de valores OFFLOAD_TARGET/CLOUD_LINK_DATABASE_ID:

{
  "OFFLOAD_TARGETS": [
    {
      "CLOUD_LINK_DATABASE_ID": "34xxxxx69708978",
      "OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfabc"
    },
    {
      "CLOUD_LINK_DATABASE_ID": "34xxxxx89898978",
      "OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdef"
    },
    {
      "CLOUD_LINK_DATABASE_ID": "34xxxxx4755680",
      "OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfghi"
    }
  ]
}

Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con offload_targets que incluye la palabra clave ANY, el acceso se descarga en la clonación de refrescamiento identificada con OFFLOAD_TARGET en el JSON proporcionado (excepto las solicitudes de los consumidores que tienen una entrada de ID de base de datos coincidente en el JSON proporcionado).

Por ejemplo, a continuación se muestra un ejemplo de JSON con un par de valores OFFLOAD_TARGET/CLOUD_LINK_DATABASE_ID explícito y un valor ANY con un valor OFFLOAD_TARGET correspondiente:

{
  "OFFLOAD_TARGETS": [
    {
      "CLOUD_LINK_DATABASE_ID": "ANY",
      "OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdef"
    },
    {
      "CLOUD_LINK_DATABASE_ID": "34xxxxx4755680",
      "OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfghi"
    }
  ]
}

Para registrar un juego de datos y especificar destinos de descarga, haga lo siguiente:

  1. Obtenga el OCID para una o más clonaciones de refrescamiento en las que desee descargar el acceso al juego de datos. Los OCID de clonación de refrescamiento están disponibles en la consola de Oracle Cloud Infrastructure en una clonación de refrescamiento.
    Nota

    Puede tardar hasta 10 minutos en crear una clonación de refrescamiento para que la clonación de refrescamiento esté visible como destino de descarga. Esto significa que puede que tenga que esperar hasta 10 minutos después de crear una clonación de refrescamiento para que la clonación de refrescamiento esté disponible para el registro de descarga de enlaces en la nube.
  2. Obtenga el ID de base de datos de una o más instancias de Autonomous Database a las que desea acceder al juego de datos mediante los datos proporcionados por la clonación de refrescamiento.

    En el sistema al que desea acceder al juego de datos desde una clonación de refrescamiento, ejecute el comando:

    SELECT DBMS_CLOUD_LINK.GET_DATABASE_ID FROM DUAL:
  3. Registre un juego de datos y especifique el parámetro offload_targets.

    Por ejemplo, suponiendo que haya un esquema CLOUDLINK en la instancia de Autonomous Database, puede registrar SALES_VIEW_AGG y especificar las clonaciones de refrescamiento que proporcionan acceso al juego de datos:

    BEGIN
       DBMS_CLOUD_LINK.REGISTER(
        schema_name     => 'CLOUDLINK',
        schema_object   => 'SALES_VIEW_AGG',
        namespace       => 'REGIONAL_SALES', 
        name            => 'SALES_AGG',
        description     => 'Aggregated regional sales information.',
        scope           => 'MY$TENANCY',
        auth_required   =>  FALSE,
        data_set_owner  =>  'amit@example.com',
        offload_targets => '{
      "OFFLOAD_TARGETS": [
        {
          "CLOUD_LINK_DATABASE_ID": "34xxxx754755680",
          "OFFLOAD_TARGET":
    "ocid1.autonomousdatabase.oc1..xxxxxaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfghi"
        }
      ]
    }');
    END;
    /

    Los parámetros son:

    • schema_name: es el nombre del esquema (el propietario del objeto).

    • schema_object: es el nombre del objeto. Los objetos válidos son:

      • Tablas (incluidas pilas, externas o híbridas)
      • Vistas
      • Vistas Materializadas
      Nota

      Otros objetos, como vistas analíticas o sinónimos, no están soportados.
    • namespace: es el espacio de nombres que proporciona como nombre para el acceso con enlaces en la nube (una parte del FQN de enlace en la nube).

      Un valor NULL especifica un valor namespace generado por el sistema, único para la instancia de Autonomous Database.

    • name: es el nombre que proporciona para el acceso a los enlaces en la nube (una parte del FQN de enlace en la nube).

    • scope: especifica el ámbito. Puede utilizar una de las variables: MY$REGION, MY$TENANCY o MY$COMPARTMENT, o bien especificar uno o más OCID.

      Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

    • auth_required: valor booleano que especifica si la autorización de nivel de base de datos es necesaria para el juego de datos, además del control de acceso de ámbito. Cuando se define en TRUE, el juego de datos aplica un paso de autorización adicional. Consulte Registro de un juego de datos con autorización necesaria para obtener más información.

    • data_set_owner: el valor de texto especifica información sobre la persona responsable del juego de datos o un contacto para preguntas sobre el juego de datos. Por ejemplo, puede proporcionar una dirección de correo electrónico para el propietario del juego de datos.

    • offload_targets: 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 está registrado el juego de datos.

      Para cada consumidor de juego de datos, una de las siguientes opciones puede coincidir para descargar la solicitud en una clonación de refrescamiento:

      • Cuando hay coincidencia con el valor de cloud_link_database_id especificado, es decir, los valores coinciden con el identificador de base de datos del consumidor, el acceso se descarga en la clonación de refrescamiento identificada por el OCID especificado en offload_target.

      • Cuando se especifica la palabra clave ANY, si no hay ninguna coincidencia con el valor de un cloud_link_database_id especificado, el acceso se descarga en la clonación de refrescamiento identificada con la entrada ANY por el OCID especificado en el offload_target correspondiente.

    Nota

    Si el editor de datos es un líder de pool elástico o un miembro de pool elástico, como alternativa a la configuración de los detalles de destino de descarga con offload_targets, puede utilizar la función de descarga de consulta unificada. En este caso, el editor permite la descarga de consultas ProxySQL para descargar consultas (lecturas) en cualquier número de clonaciones de refrescamiento sin necesidad de configurar los destinos. Consulte Uso de descarga de consultas unificadas con enlaces en la nube para obtener más información.

    Puede obtener más información en los siguientes enlaces:

Actualizar atributos de registro de juego de datos

Después de registrar un juego de datos, puede actualizar algunos atributos de juego de datos. No puede actualizar el nombre de esquema, el objeto de esquema, el espacio de nombres ni los atributos de nombre.

Para actualizar atributos de juegos de datos:

  1. El usuario que ha registrado un juego de datos puede actualizar sus atributos con DBMS_CLOUD_LINK.UPDATE_REGISTRATION.

    Si no tiene privilegios para actualizar los atributos del juego de datos, debe obtener privilegios de registro de otorgamiento del usuario ADMIN.

    Consulte Otorgamiento de acceso de enlaces a la nube para usuarios de base de datos para obtener más información.

  2. Actualice uno o más atributos para un juego de datos.

    Por ejemplo, utilice DBMS_CLOUD_LINK.UPDATE_REGISTRATION para actualizar los atributos description, scope y auth_required para el juego de datos en el espacio de nombres REGIONAL_SALES con el nombre SALES_AGG:

    BEGIN
       DBMS_CLOUD_LINK.UPDATE_REGISTRATION(
        namespace      => 'REGIONAL_SALES', 
        name           => 'SALES_AGG',
        description    => 'Updated description for aggregated regional sales information.',
        scope          => 'MY$COMPARTMENT',
        auth_required  =>  TRUE );
    END;
    /

    Los parámetros requeridos son:

    • namespace: es el espacio de nombres del juego de datos que ha proporcionado al registrar el juego de datos.

    • name: es el nombre del juego de datos que ha proporcionado al registrar el juego de datos.

    A continuación se muestra una lista de los parámetros opcionales. Si se transfiere NULL para un valor de parámetro opcional, el atributo no se modifica.

    • description: especifica el texto actualizado para describir los datos.

    • scope: especifica el ámbito. Puede utilizar una de las variables: MY$REGION, MY$TENANCY o MY$COMPARTMENT, o bien especificar uno o más OCID.

      Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.

    • auth_required: valor booleano que especifica si la autorización de nivel de base de datos es necesaria para el juego de datos, además del control de acceso de ámbito. Cuando se define en TRUE, el juego de datos aplica un paso de autorización adicional. Consulte Registro de un juego de datos con autorización necesaria para obtener más información.

    • data_set_owner: el valor de texto especifica información sobre la persona responsable del juego de datos o un contacto para preguntas sobre el juego de datos. Por ejemplo, puede proporcionar una dirección de correo electrónico para el propietario del juego de datos.

    • offload_targets: 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 está registrado el juego de datos. Consulte Registro de un Juego de Datos con Destinos de Descarga para el Acceso al Juego de Datos para obtener más información.

    No puede actualizar los atributos schema_name o schema_object.

    Consulte UPDATE_REGISTRATION Procedure para obtener más información.

Cuando se registra un juego de datos en una o más clonaciones de refrescamiento entre regiones, los cambios en el registro en la base de datos de origen se deben propagar a las regiones remotas.

Tenga en cuenta lo siguiente para propagar los cambios a las clonaciones de refrescamiento entre regiones:

  • Si un productor tiene N clonaciones de refrescamiento entre regiones en una región, por ejemplo, en la región A, ejecute DBMS_CLOUD_LINK.UPDATE_REGISTRATION exactamente en una clonación de refrescamiento en la región A.

  • Si el mismo productor tiene M clonaciones de refrescamiento entre regiones en una región remota diferente, por ejemplo, en la región B, ejecute DBMS_CLOUD_LINK.UPDATE_REGISTRATION exactamente en una clonación de refrescamiento en la región B.

Para actualizar atributos cuando un juego de datos está registrado en una o más clonaciones de refrescamiento entre regiones:

  1. En la base de datos origen, actualice el registro del juego de datos.

  2. En una clonación de refrescamiento remota en la región remota si solo hay una región remota o en una clonación de refrescamiento remota en cada región remota si hay clonaciones de refrescamiento replicadas en varias regiones, actualice el registro del juego de datos con los mismos valores que utilizó para actualizar la base de datos de origen, con la excepción del parámetro offload_targets.

    En cualquier región remota determinada, solo necesita ejecutar DBMS_CLOUD_LINK.UPDATE_REGISTRATION en exactamente una clonación de refrescamiento de esa región (si la región tiene más de una clonación de refrescamiento asociada al mismo juego de datos, solo necesita ejecutar el procedimiento una vez para propagar los cambios a todas las clonaciones de refrescamiento en una región remota individual).

  3. Refresque las clonaciones de refrescamiento.

    Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.

Búsqueda de juegos de datos y uso de enlaces de nube

Un usuario al que se le otorga acceso para leer enlaces en la nube puede buscar juegos de datos disponibles para una instancia de Autonomous Database y puede acceder a juegos de datos registrados y utilizarlos con sus consultas.

Después de que el usuario ADMIN ejecute GRANT_READ, un usuario puede buscar y utilizar enlaces en la nube.

  1. Busque los juegos de datos disponibles en la instancia de Autonomous Database.

    Por ejemplo, busque todos los juegos de datos que contengan la cadena, "TREE":

    DECLARE
       result CLOB DEFAULT NULL;
    BEGIN
       DBMS_CLOUD_LINK.FIND('TREE', result);
        DBMS_OUTPUT.PUT_LINE(result);
    END;
    /
    
    [{"name":"TREE_DATA","namespace":"FOREST","description":"Urban tree data including county, species and height"}]

    Los parámetros son:

    • search_string: cadena que ha de buscarse. La cadena de búsqueda no distingue entre mayúsculas y minúsculas.

    • search_result: documento JSON que incluye los valores de espacio de nombres, nombre y descripción para el juego de datos.

    Consulte Procedimiento FIND para obtener más información.

    El procedimiento DBMS_CLOUD_LINK.FIND proporciona el FQN que puede utilizar con enlaces en la nube. En este caso, FOREST.TREE_DATA.

  2. Utilice la vista DBA_CLOUD_LINK_ACCESS para mostrar los juegos de datos disponibles:
    SELECT * FROM DBA_CLOUD_LINK_ACCESS;
    
    NAMESPACE            NAME
    ---------            -------------- 
    FOREST               TREE_DATA 
    REGIONAL_SALES       SALES_AGG
    TRUSTED_COMPARTMENT  SALES
  3. Utilice el procedimiento DBMS_CLOUD_LINK.DESCRIBE para obtener más información sobre un juego de datos registrado.
    SELECT DBMS_CLOUD_LINK.DESCRIBE('FOREST','TREE_DATA') FROM DUAL;
    
    DBMS_CLOUD_LINK.DESCRIBE('FOREST','TREE_DATA')
    ---------------------------------------------------
    Urban tree data including county, species and height
  4. Utilizar el juego de datos registrado en una consulta.
    SELECT * FROM FOREST.TREE_DATA@cloud$link;
    Nota

    Puede tardar hasta 10 minutos después de registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER para que el juego de datos sea visible y accesible.
Los enlaces en la nube soportan sinónimos privados y públicos. Por ejemplo, puede definir y utilizar un sinónimo para FOREST.TREE_DATA@cloud$link:
CREATE SYNONYM S1 for FOREST.TREE_DATA@cloud$link;
CREATE PUBLIC SYNONYM S2 for FOREST.TREE_DATA@cloud$link;

SELECT * FROM S1;

SELECT * FROM S2;

Consulte CREATE SYNONYM para obtener más información.

Usar opciones de consumidor de enlaces en la nube

Puede definir la asignación de nombre de servicio que se va a utilizar para acceder a los datos de una base de datos de consumidor y puede activar el almacenamiento en caché en un consumidor de juego de datos para los resultados de una consulta o para un fragmento de consulta que acceda a los datos de Cloud Link.

Definir asignación de nombre de servicio de base de datos para consumidores de enlaces en la nube

Puede definir la asignación de nombre de servicio que se utilizará cuando los consumidores de enlaces en la nube accedan a los datos de un propietario de juego de datos.

Los enlaces en la nube se basan en recursos de base de datos en la instancia de Autonomous Database que es el productor de juegos de datos, o los recursos de una clonación de refrescamiento, para acceder a los datos compartidos. Por defecto, la conectividad remota para que los consumidores accedan a los datos de enlaces en la nube utiliza el servicio de base de datos MEDIUM.

Utilice DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING para definir la asignación de servicio de base de datos para un consumidor. En este procedimiento, debe proporcionar un ID de base de datos o la palabra clave ANY para especificar la asignación de servicio al consumidor. Por ejemplo, en la siguiente figura se muestra una asignación para el consumidor A al servicio HIGH, el consumidor B al servicio MEDIUM, el consumidor C al servicio LOW y una asignación para ANY al servicio TP, lo que significa que todos los demás consumidores acceden a los enlaces de nube mediante el servicio TP.



Consulte Nombres de servicio de base de datos para Autonomous Database para obtener más información sobre las características de los servicios de base de datos.

Realice los siguientes pasos para definir el servicio de base de datos que se utilizará para un consumidor de enlaces en la nube:

  1. Obtenga el ID de la base de datos para la que desea definir una asignación de servicio.

    En la base de datos del consumidor, ejecute GET_DATABASE_ID para obtener el ID de base de datos del consumidor. Por ejemplo:

    SELECT DBMS_CLOUD_LINK.GET_DATABASE_ID FROM DUAL:

    Consulte GET_DATABASE_ID Function para obtener más información.

  2. En la instancia de Autonomous Database del propietario del juego de datos, especifique una asignación de servicio.

    Realice este paso en la instancia de Autonomous Database del propietario del juego de datos (es decir, en la base de datos del productor).

    BEGIN
       DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING(
        database_id      => 'database_id', 
        service_name     => 'HIGH');
    END;
    /

    Donde el valor del parámetro database_id es el ID de base de datos que ha obtenido en el paso 1.

    Especifique el valor ANY para que database_id utilice el service_name especificado con todas las bases de datos de consumidores que no tengan un service_name asociado a su database_id. Es decir, cualquier database_id cuyo service_name no se haya definido con DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING.

    Consulte ADD_SERVICE_MAPPING Procedure para obtener más información.

    Solo el usuario ADMIN y los esquemas con el rol PDB_DBA pueden ejecutar DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING.

  3. Verifique los ID de base de datos y la asignación de servicios enumerando las asignaciones de servicio de enlaces en la nube.

    Por ejemplo:

    SELECT * FROM  DBA_CLOUD_LINK_SERVICE_MAPPINGS;

    Consulte DBA_CLOUD_LINK_SERVICE_MAPPINGS View para obtener más información.

Notas para configurar y cambiar asignaciones de servicio:

  • Las asignaciones de servicio se aplican en el momento en que se establecen las conexiones. Si se cambian las asignaciones de servicio de un consumidor concreto, las nuevas asignaciones se aplican solo para las nuevas sesiones del consumidor.

  • Cualquier asignación de servicio configurada en un propietario de juego de datos para un consumidor específico se respeta incluso si el acceso del consumidor se descarga a una clonación de refrescamiento. La clonación de refrescamiento se debe refrescar hasta un punto en el tiempo posterior al momento en que se configuraron las asignaciones de servicio en el propietario del juego de datos. Tenga en cuenta que la descarga en una clonación de refrescamiento se configura con el argumento offload_targets durante el registro del juego de datos.

    Consulte Registro de un Juego de Datos con Destinos de Descarga para el Acceso al Juego de Datos para obtener más información.

  • Utilice el procedimiento DBMS_CLOUD_LINK_ADMIN.REMOVE_SERVICE_MAPPING para eliminar una asignación de servicio para un database_id especificado.

    Después de ejecutar DBMS_CLOUD_LINK_ADMIN.REMOVE_SERVICE_MAPPING, un consumidor utiliza el servicio de base de datos MEDIUM por defecto o service_name que especifica si ejecuta DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING con el valor database_id ANY. Consulte REMOVE_SERVICE_MAPPING Procedure para obtener más información.

Definir asignación de nombre de servicio de base de datos para consumidores de enlaces de nube en región remota

Se puede acceder a un juego de datos registrado en una región de origen con enlaces en la nube desde una región remota al crear una clonación de refrescamiento entre regiones en la región remota.

En este caso, las asignaciones de servicio para los consumidores de la región remota se deben agregar dos veces, en la base de datos de origen y en la clonación de refrescamiento de la región remota.

Realice los siguientes pasos para definir las asignaciones de servicio para los consumidores de enlaces en la nube en una región remota.

  1. Cree una clonación de refrescamiento entre regiones de la base de datos origen (la clonación de refrescamiento es una clonación del propietario del juego de datos de enlaces en la nube en la región remota).
  2. Registre el juego de datos.

    Consulte Registro de un juego de datos para obtener más información.

  3. Agregue las asignaciones de servicio en el propietario del juego de datos.
  4. Refresque la clonación de refrescamiento.
  5. En la clonación de refrescamiento remota, registre el juego de datos con los mismos argumentos que utilizó para registrar el juego de datos en la región de origen (es decir, utilice los mismos argumentos que utilizó en el paso 2).
  6. En la clonación de refrescamiento remota, agregue las asignaciones de servicio utilizando los mismos argumentos que utilizó en la región de origen (es decir, utilice los mismos argumentos que utilizó en el paso 3).

Cuando un consumidor de la región remota accede a los datos de enlaces de nube, el acceso utilizará las mismas asignaciones de servicio que ha agregado en la base de datos del propietario del juego de datos de la región de origen.

Activación del almacenamiento en caché para un consumidor de enlaces en la nube

Puede activar el almacenamiento en caché en un consumidor de juegos de datos para los resultados de una consulta o para un fragmento de consulta que acceda a los datos de Cloud Link.

Para activar el almacenamiento en caché en un consumidor de juego de datos, utilice la indicación RESULT_CACHE con la opción SHELFLIFE. Con la opción SHELFLIFE, proporciona un valor que indica la duración, en segundos, de que se almacena en caché un resultado de consulta. Una vez transcurrido el intervalo SHELFLIFE, el resultado almacenado en caché se marca como no válido. Siempre que el resultado en caché sea válido, una consulta recupera los datos en caché de la caché en la base de datos de consumidor, lo que evita una ida y vuelta a la base de datos del propietario del juego de datos.

Utilice la indicación RESULT_CACHE con la opción SHELFLIFE cuando el juego de datos sea estático o cuando el consumidor pueda tolerar resultados obsoletos. El valor de SHELFLIFE permite al consumidor del juego de datos de Cloud Link controlar el tiempo, en segundos, cuando los datos de la caché son válidos (el grado aceptable de caducidad).

Si el resultado de la consulta es grande y no cabe en la memoria, puede utilizar la indicación RESULT_CACHE con la opción SHELFLIFE y la opción TEMP para indicar que el resultado se debe escribir en el disco en el tablespace temporal.

Para almacenar en caché los datos de Cloud Link con la indicación RESULT_CACHE:

  1. En una consulta, especifique la indicación RESULT_CACHE con la opción SHELFLIFE.

    Por ejemplo:

    SELECT /*+ RESULT_CACHE (SHELFLIFE=120) */ * FROM FOREST.TREE_DATA@cloud$link;

    Este valor RESULT_CACHE especifica un valor SHELFLIFE de 120. Esto indica que el resultado se debe almacenar en caché en la memoria durante 120 segundos. Después de 120 segundos, el resultado almacenado en caché se marca como no válido.

    El Valor SHELFLIFE debe ser un entero positivo. El valor máximo de SHELFLIFE es 4294967295.

  2. Si el resultado de la consulta es grande y no cabe en la memoria, utilice las opciones SHELFLIFE y TEMP para indicar que el resultado se debe escribir en el disco del tablespace temporal.
    SELECT /*+ RESULT_CACHE (TEMP=true SHELFLIFE=360) */ * FROM FOREST.TREE_DATA@cloud$link;

Consulte RESULT_CACHE_MODE para obtener más información sobre el uso de la caché de resultados con Autonomous Database.

Consulte RESULT_CACHE Hint para obtener más información sobre RESULT_CACHE con SHELFLIFE.

Consulte DBMS_RESULT_CACHE para obtener información sobre los procedimientos para gestionar la caché de resultados y para invalidar objetos en la caché de resultados.

Supervisión y visualización de información de enlaces de nube

Autonomous Database proporciona vistas que permiten supervisar y auditar enlaces en la nube.

Ver Descripción
Vistas V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS

Se utiliza para realizar un seguimiento del acceso a cada juego de datos registrado en la instancia de Autonomous Database. Estas vistas realizan un seguimiento del tiempo transcurrido, el tiempo de CPU, el número de filas recuperadas y la información adicional sobre los juegos de datos registrados. Puede utilizar la información de estas vistas para auditar el acceso y el uso del juego de datos de enlaces en la nube.

Vistas DBA_CLOUD_LINK_REGISTRATIONS y ALL_CLOUD_LINK_REGISTRATIONS

Se utiliza para mostrar los detalles de los juegos de datos registrados en una instancia de Autonomous Database.

Vistas DBA_CLOUD_LINK_ACCESS y ALL_CLOUD_LINK_ACCESS

Se utiliza para recuperar los detalles de los juegos de datos registrados a los que puede acceder una base de datos.

DBA_CLOUD_LINK_AUTHORIZATIONS Vista

Proporciona información sobre qué bases de datos están autorizadas para acceder a qué juegos de datos. Esto se aplica a los juegos de datos donde el parámetro auth_required es TRUE.

Vistas DBA_CLOUD_LINK_PRIVS y USER_CLOUD_LINK_PRIVS

Proporciona información sobre los privilegios específicos del enlace en la nube, REGISTER, READ o AUTHORIZE, otorgados a todos los usuarios o al usuario actual.

DBA_CLOUD_LINK_SERVICE_MAPPINGS Vista

Muestra los detalles de todas las asignaciones de servicio para las bases de datos de consumidores de enlaces en la nube. Cada asignación de servicio consta de un ID de base de datos de Cloud Link y un servicio de base de datos.

Definición de una política de base de datos privada virtual para proteger un juego de datos registrado

Al definir políticas de base de datos privada virtual (VPD) para un juego de datos registrado, puede proporcionar un control de acceso de enlace en la nube detallado para que solo un subjuego de datos (filas) esté visible para sitios remotos específicos.

Oracle Virtual Private Database (VPD) es una función de seguridad que permite controlar el acceso a los datos de forma dinámica a nivel de fila para usuarios y aplicaciones mediante la aplicación de filtros en el mismo juego de datos.

Cualquier usuario al que se le conceda acceso para leer enlaces en la nube puede acceder y utilizar juegos de datos registrados si están dentro del ámbito especificado cuando se registra el juego de datos y si se define el parámetro necesario de autorización adicional para el juego de datos, el acceso es desde una base de datos autorizada. Cada acceso remoto se realiza en el contexto de la instancia remota de Autonomous Database que accede al juego de datos registrado (en la base de datos donde se registró el juego de datos).

Utilice la función DBMS_CLOUD_LINK.GET_DATABASE_ID en el sistema remoto para obtener el ID único de la base de datos. Al definir una política de VPD en la base de datos que registró un juego de datos, ahora puede utilizar el identificador de la base de datos remota como regla SYS_CONTEXT para proporcionar un control más detallado. Puede definir reglas para bases de datos remotas que accedan a su juego de datos registrado y limitar el acceso más allá de lo posible especificando un ámbito de enlace en la nube.

Considere un ejemplo en el que REGIONAL_SALES.SALES_AGG está disponible en el nivel de arrendamiento. Si desea restringir el acceso a todas las bases de datos excepto a una base de datos específica, lo que solo permite el acceso completo a la base de datos especificada, puede agregar una política de VPD en el juego de datos registrado.

Por ejemplo:

  1. Obtenga el ID de base de datos único de Cloud Link para la instancia de Autonomous Database en la que desea proporcionar acceso completo.
    DECLARE
         DB_ID NUMBER;
     BEGIN
         DB_ID := DBMS_CLOUD_LINK.GET_DATABASE_ID;
         DBMS_OUTPUT.PUT_LINE('Database ID:' || DB_ID);
     END;
     /
  2. Cree la política de VPD en la base de datos que registró el juego de datos al permitir solo el acceso completo a la única base de datos específica cuyo identificador obtuvo en la base de datos en cuestión en el paso 1.
    CREATE OR REPLACE FUNCTION vpd_policy_sales(
         owner IN VARCHAR2, 
         object IN VARCHAR2)
         RETURN VARCHAR2 IS
    BEGIN
      IF SYS_CONTEXT('USERENV', 'CLOUD_LINK_DATABASE_ID')  <> '12121212163948244901' THEN
        RETURN 'time_id >= trunc(sysdate,''year'')';  
      ELSE
        RETURN '';
      END IF;
    END;
    /

    Consulte DBMS_RLS para obtener más información.

  3. Registre la política de VPD para el juego de datos registrado a fin de limitar el acceso completo solo a la base de datos identificada en el paso 1.
    
    BEGIN
      DBMS_RLS.ADD_POLICY(object_schema => 'CLOUDLINK',
                object_name => 'SALES_VIEW_AGG',
                policy_name => 'THIS_YEAR',
                function_schema => 'ADMIN',
                policy_function => 'VPD_POLICY_SALES',
                statement_types => 'SELECT',
                policy_type => DBMS_RLS.SHARED_CONTEXT_SENSITIVE);
    END;
    /

    Consulte DBMS_RLS para obtener más información.

Notas para enlaces de nube

Proporciona notas y restricciones para usar enlaces en la nube.

  • Hay un límite de 4096 en el número de conjuntos de datos que puede registrar.

    Cada instancia de Autonomous Database no puede registrar más de 4096 juegos de datos. Este límite se aplica a todas las instancias de Autonomous Database, independientemente del número de ECPU (OCPU si la base de datos utiliza OCPU) o del tamaño de almacenamiento de la instancia. El límite es un valor fijo y la configuración del recuento de ECPU en un valor mayor no le permite registrar más juegos de datos.

  • Puede registrar un objeto en otro esquema si tiene el privilegio READ WITH GRANT OPTION en el objeto.

  • Para registrar conjuntos de datos o ver y acceder a conjuntos de datos remotos, debe haber otorgado el privilegio adecuado para registrar o leer conjuntos de datos. Esto también es cierto para ADMIN; sin embargo, ADMIN puede otorgarse este privilegio a sí mismo.

  • Para utilizar DBMS_CLOUD_LINK.REGISTER o DBMS_CLOUD_LINK.UPDATE_REGISTRATION, debe tener el privilegio de ejecución en el paquete DBMS_CLOUD_LINK, además del privilegio de registro asignado con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER. Solo el usuario ADMIN y los esquemas con PDB_DBA tienen este privilegio por defecto.

  • Si borra y vuelve a crear una tabla registrada, debe volver a registrar la tabla para el acceso remoto.

  • Solo el usuario ADMIN y los usuarios con el rol PDB_DBA tienen privilegios para acceder a las siguientes vistas:

    • DBA_CLOUD_LINK_ACCESS

    • DBA_CLOUD_LINK_REGISTRATIONS

    • DBA_CLOUD_LINK_AUTHORIZATIONS

    • DBA_CLOUD_LINK_PRIVS

    Consulte DBMS_CLOUD_LINK Vistas para obtener más información.

  • Para acceder a los datos registrados y remotos es necesario que la base de datos remota esté abierta. Si la base de datos remota está cerrada o en modo restringido, no podrá acceder a los datos y se devolverá un error de Oracle.

  • Hay un límite de un máximo de cuatro enlaces de base de datos abiertos por sesión. Si se supera este límite, puede llegar a ORA-02020 o ORA-12545.

  • Si la caché de resultados está activada, al igual que el comportamiento por defecto en Autonomous Database con la carga de trabajo de almacén de datos, debe asegurarse de que la caché de resultados no se utilice cuando se necesiten datos en tiempo real.

  • Al actualizar el tipo de licencia de Gratuito a De pago, debe volver a registrar los juegos de datos de enlaces en la nube. Consulte Actualización de la instancia de Siempre gratis a una instancia de Pago con Autonomous Database para obtener más información.

  • La conectividad remota de enlaces en la nube utiliza por defecto el servicio de base de datos MEDIUM. Puede cambiar el valor por defecto con DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING mediante ANY como valor para DATABASE_ID. Puede cambiar el servicio de base de datos para un consumidor con DBMS_CLOUD_LINK_ADMIN.ADD_SERVICE_MAPPING especificando DATABASE_ID del consumidor. Consulte Definición de asignación de nombre de servicio de base de datos para consumidores de enlaces en la nube para obtener más información.

    Puede ver las conexiones remotas como usuario C##DATA$SHARE en V$SESSION y las vistas de enlaces en la nube V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS Views proporcionan más detalles sobre las conexiones remotas.

  • Todas las interfaces distinguen entre mayúsculas y minúsculas, a menos que se indique lo contrario, de la siguiente manera:

    • Todo lo que escriba que exista en la base de datos, por ejemplo, nombres de usuario y nombres de tabla, mayúsculas y minúsculas, es significativo y debe introducirse con letras mayúsculas.
    • Las variables predefinidas, por ejemplo, los valores de ámbito predefinidos, se deben introducir en mayúsculas.
    • Todo lo que especifique para la configuración de enlaces en la nube, por ejemplo, espacios de nombres o nombres de tablas en un espacio de nombres, se debe especificar según se introduzca. Por ejemplo, si define un espacio de nombres como trees, debe incluir el espacio de nombres entre comillas dobles, como "trees", al acceder a él con SQL.
  • Puede compartir enlaces en la nube cuando un juego de datos reside en una instancia de Autonomous Database en modo de solo lectura. Consulte Uso de enlaces en la nube desde una instancia de Autonomous Database de solo lectura para obtener más información.

  • Puede tardar hasta 10 minutos después de crear una clonación de refrescamiento para que la clonación de refrescamiento esté visible como destino de descarga. Esto significa que puede que tenga que esperar hasta 10 minutos después de crear una clonación de refrescamiento para que la clonación de refrescamiento esté disponible para el registro de descarga de enlaces en la nube.

    Consulte Registro de un juego de datos con destinos de descarga para el acceso al juego de datos y Creación de una clonación de refrescamiento para una instancia de Autonomous Database para obtener más información.

Uso de enlaces en la nube desde una instancia de Autonomous Database de solo lectura

Puede compartir enlaces en la nube cuando un juego de datos reside en una instancia de Autonomous Database de solo lectura.

Para compartir enlaces en la nube desde una instancia de Autonomous Database que está en modo de solo lectura:
  1. Cambiar el modo de base de datos al modo de lectura/escritura.
  2. Con la base de datos en modo de lectura/escritura, realice los pasos necesarios para registrar un juego de datos.
    1. Otorgar acceso a enlaces de nube para usuarios de base de datos
    2. Registro o anulación del registro de un juego de datos
  3. Después de registrar uno o más juegos de datos, cambie la base de datos al modo de solo lectura.