Creación de enlaces de base de datos a una instancia de Oracle Database que no sea Autonomous Database

Puede crear enlaces de base de datos desde una instancia de Autonomous Database a una base de datos Oracle que esté en un punto final privado o en un punto final público (acceso público).

Nota

Consulte Creación de enlaces de base de datos de Autonomous Database a otra instancia de Autonomous Database si el destino del enlace de base de datos es otra instancia de Autonomous Database.

Creación de enlaces de base de datos de Autonomous Database a una instancia de Oracle Database con acceso público con una cartera (mTLS)

Puede crear enlaces de base de datos desde una instancia de Autonomous Database a una base de datos Oracle de destino que esté en un punto final público.

Para utilizar enlaces de base de datos con Autonomous Database, la base de datos de destino debe estar configurada para utilizar la autenticación TCP/IP con SSL (TCPS). Las bases de datos de Autonomous Database utilizan la autenticación TCP/IP con SSL (TCPS) por defecto, por lo que no necesita realizar ninguna configuración adicional en la base de datos de destino para enlazar a otra instancia de Autonomous Database. Se deben configurar otras bases de datos Oracle para utilizar TCP/IP con autenticación SSL (TCPS). Para obtener más información, consulte Configuración de la autenticación de la capa de conexión segura.

Para crear enlaces de base de datos a un destino público, se puede acceder a Oracle Database de destino. Algunas bases de datos pueden limitar el acceso (por ejemplo, mediante listas de control de acceso). Asegúrese de activar la base de datos de destino para permitir el acceso desde la base de datos de origen para que el enlace de base de datos funcione. Si limita el acceso con listas de control de acceso (ACL), puede buscar la dirección IP de salida de la instancia de Autonomous Database de origen y permitir que esa dirección IP se conecte a la base de datos de destino.

Consulte Cómo crear un enlace de base de datos de Autonomous Database a una instancia de Database Cloud Service para obtener más información.

Para crear enlaces de base de datos a una base de datos Oracle de destino con una cartera (mTLS):

  1. Copie la cartera de la base de datos de destino, cwallet.sso, que contiene los certificados de la base de datos de destino en el almacén de objetos.

    Tenga en cuenta lo siguiente para el archivo de cartera:

    • El archivo de cartera, junto con el identificador de usuario y la contraseña de la base de datos, proporcionan acceso a los datos de Oracle Database de destino. Almacene los archivos de cartera en una ubicación segura. Comparta los archivos de cartera solo con usuarios autorizados.

    • No cambie el nombre del archivo de cartera. El archivo de cartera de Object Storage debe tener el nombre cwallet.sso.

  2. Cree credenciales para acceder al almacén de objetos en el que almacena el archivo de cartera cwallet.sso. Consulte Procedimiento CREATE_CREDENTIAL para obtener información sobre los parámetros de nombre de usuario y contraseña para diferentes servicios de almacenamiento de objetos.

    La creación de una credencial para acceder al almacén de objetos de Oracle Cloud Infrastructure no es necesaria si activa las credenciales de la entidad de recurso. Consulte Uso de la principal de recurso para acceder a los recursos de Oracle Cloud Infrastructure para obtener más información.

  3. Crear un directorio en Autonomous Database para el archivo de cartera cwallet.sso.

    Por ejemplo:

    CREATE DIRECTORY dblink_wallet_dir AS 'directory_path_of_your_choice';
                

    Consulte Creación de directorios en Autonomous Database para obtener información sobre la creación de directorios.

  4. Utilice DBMS_CLOUD.GET_OBJECT para cargar la cartera de la base de datos de destino en el directorio creado en el paso anterior, DBLINK_WALLET_DIR.

    Por ejemplo:

    BEGIN 
        DBMS_CLOUD.GET_OBJECT(
            credential_name => 'DEF_CRED_NAME',
            object_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/cwallet.sso',
            directory_name => 'DBLINK_WALLET_DIR'); 
    END;
    /

    En este ejemplo, namespace-string es el espacio de nombres de almacenamiento de objetos de Oracle Cloud Infrastructure, y bucketname es el nombre del cubo. Consulte Descripción de los espacios de nombres de Object Storage para obtener más información.

    Nota

    El valor credential_name que utilice en este paso son las credenciales del almacén de objetos. En el siguiente paso, creará las credenciales para acceder a la base de datos de destino.

    La creación de una credencial para acceder al almacén de objetos de Oracle Cloud Infrastructure no es necesaria si activa las credenciales de la entidad de recurso. Consulte Uso de la principal de recurso para acceder a los recursos de Oracle Cloud Infrastructure para obtener más información.

  5. En la instancia de Autonomous Database, cree credenciales para acceder a la base de datos de destino. Los valores username y password que especifique con DBMS_CLOUD.CREATE_CREDENTIAL son las credenciales de la base de datos de destino que se utilizan para crear el enlace de base de datos.
    Nota

    Es necesario proporcionar el parámetro credential_name.

    Por ejemplo:

    BEGIN
        DBMS_CLOUD.CREATE_CREDENTIAL(
            credential_name => 'DB_LINK_CRED',
            username => 'NICK',
            password => 'password');
    END;
    /

    Los caracteres del parámetro username deben estar todos en mayúsculas.

    Nota

    Puede utilizar una credencial secreta de almacén para la credencial de base de datos de destino en un enlace de base de datos. Consulte Uso de credenciales secretas de almacén para obtener más información.

    Esta operación almacena las credenciales en la base de datos en un formato cifrado. Puede utilizar cualquier nombre para el nombre de credencial.

  6. Crear el enlace de base de datos a la base de datos de destino mediante DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por ejemplo:

    BEGIN
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
            db_link_name => 'SALESLINK',
            hostname => 'adb.eu-frankfurt-1.oraclecloud.com', 
            port => '1522',
            service_name => 'example_medium.adb.example.oraclecloud.com',
            ssl_server_cert_dn => 'CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
            credential_name => 'DB_LINK_CRED',
            directory_name => 'DBLINK_WALLET_DIR');
    END;
    /

    Los usuarios que no sean ADMIN requieren privilegios para ejecutar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Si el archivo de cartera del directorio especificado con directory_name no es cwallet.sso, el procedimiento informa de un error como: ORA-28759: failure to open file.

  7. Utilice el enlace de base de datos creado para acceder a los datos de la base de datos de destino.

    Por ejemplo:

    SELECT * FROM employees@SALESLINK;
                

Para las credenciales creadas en el paso 5, las credenciales de la base de datos de destino, si la contraseña del usuario de destino cambia, puede actualizar la credencial que contiene las credenciales del usuario de destino de la siguiente forma:

BEGIN
    DBMS_CLOUD.UPDATE_CREDENTIAL (
        credential_name => 'DB_LINK_CRED',
        attribute => 'PASSWORD',
        value => 'password' );
END;
/

Donde password es la nueva contraseña.

Después de esta operación, los enlaces de base de datos existentes que utilizan esta credencial siguen funcionando sin tener que borrar y recrear los enlaces de base de datos.

Nota

Puede crear enlaces a Big Data Service mediante DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Consulte Consulta de datos de Hadoop (HDFS) de Big Data Service desde Autonomous Database para obtener más información.

Para obtener información adicional, consulte:

Creación de enlaces de base de datos de Autonomous Database a una instancia de Oracle Database en un punto final privado

Puede crear enlaces de base de datos desde una instancia de Autonomous Database a una instancia de Oracle Database de destino que esté en un punto final privado.

Según el tipo y la configuración de la base de datos Oracle de destino:

Consulte Cómo crear un enlace de base de datos de Autonomous Database a una instancia de Database Cloud Service para obtener más información.

Temas

Requisitos para enlaces de base de datos de Autonomous Database a bases de datos Oracle en un punto final privado

Muestra los requisitos para crear enlaces de base de datos desde una instancia de Autonomous Database a una base de datos Oracle de destino que esté en un punto final privado.

Para crear un enlace de base de datos a una base de datos Oracle de destino en un punto final privado:

  • The target database must be accessible from the source database's Oracle Cloud Infrastructure VCN. Por ejemplo, se puede conectar a la base de datos de destino cuando:

    • La base de datos de destino está en un punto final privado.

    • Tanto la base de datos de origen como la base de datos de destino están en la misma VCN de Oracle Cloud Infrastructure.

    • La base de datos de origen y la base de datos de destino están emparejadas en distintas Oracle Cloud Infrastructure VCN.

    • La base de datos destino es una base de datos local que está conectada a la VCN de Oracle Cloud Infrastructure de la base de datos origen mediante FastConnect o VPN.

  • Hay dos opciones para especificar la base de datos de destino, utilice el parámetro hostname o el parámetro rac_hostnames:

    • Para un destino en un punto final privado, DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK soporta la especificación de un único nombre de host con el parámetro hostname. En un punto final privado, no está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN (cuando el destino está en un punto final público, CREATE_DATABASE_LINK soporta el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN).

    • Cuando el destino es una base de datos Oracle RAC, utilice el parámetro rac_hostnames para especificar uno o más nombres de host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Esto le permite aprovechar las capacidades de alta disponibilidad de Oracle RAC. No está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN en el valor rac_hostnames.

      Al especificar una lista de nombres de host en el parámetro rac_hostnames, CREATE_DATABASE_LINK utiliza todos los nombres de host especificados como direcciones en la cadena de conexión. Si uno de los hosts especificados no está disponible en la base de datos Oracle RAC de destino, Autonomous Database intenta conectarse automáticamente mediante otro nombre de host de la lista.
  • Se deben definir las siguientes reglas de entrada y salida para el punto final privado:

    • Defina una regla de salida en la lista de seguridad de subred o el grupo de seguridad de red de la base de datos origen para que se permita el tráfico a través de TCP a la dirección IP y el número de puerto de la base de datos destino.

    • Defina una regla de entrada en la lista de seguridad de subred o el grupo de seguridad de red de la base de datos de destino para que se permita el tráfico a través de TCP desde la dirección IP de la base de datos de origen al puerto de destino.

    Consulte Configure Network Access with Private Endpoints para obtener información sobre la configuración de puntos finales privados con reglas de entrada y salida.

Nota

Cuando la instancia de Autonomous Database esté configurada con un punto final privado, defina el parámetro de base de datos ROUTE_OUTBOUND_CONNECTIONS en 'PRIVATE_ENDPOINT' para especificar que todos los enlaces de base de datos salientes estén sujetos a las reglas de salida de la VCN del punto final privado de la instancia de Autonomous Database. Consulte Seguridad mejorada para conexiones de salida con puntos finales privados para obtener más información.

Crear enlaces de base de datos a bases de datos Oracle en un punto final privado sin una cartera

Utilice DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK para crear enlaces de base de datos desde una instancia de Autonomous Database a una base de datos Oracle de destino que esté en un punto final privado y se conecte sin una cartera (TCP).

Nota

Esta opción es para bases de datos Oracle de destino que estén en un punto final privado y no tengan SSL/TCPS configurado.

Realice los pasos previos necesarios según sea preciso. Consulte Requisitos para enlaces de base de datos de Autonomous Database a una Autonomous Database de destino en un punto final privado para obtener más información.

Para crear un enlace de base de datos a una base de datos destino en un punto final privado mediante una conexión TCP segura sin una cartera:

  1. En Autonomous Database, cree credenciales para acceder a la base de datos de destino. Los valores username y password que especifique con DBMS_CLOUD.CREATE_CREDENTIAL son las credenciales de la base de datos de destino que se utilizan en el enlace de base de datos (donde se accede a la base de datos de destino a través de la VCN).

    Por ejemplo:

    BEGIN
         DBMS_CLOUD.CREATE_CREDENTIAL(
             credential_name => 'PRIVATE_ENDPOINT_CRED',
             username => 'NICK',
             password => 'password'
             );
    END;
    /

    Los caracteres del parámetro username deben estar todos en mayúsculas.

    Nota

    Puede utilizar una credencial secreta de almacén para la credencial de base de datos de destino en un enlace de base de datos. Consulte Uso de credenciales secretas de almacén para obtener más información.

    Esta operación almacena las credenciales en la base de datos en un formato cifrado. Puede utilizar cualquier nombre para el nombre de credencial.

  2. Crear el enlace de base de datos a la base de datos de destino mediante DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por ejemplo:

    BEGIN
         DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
             db_link_name => 'PRIVATE_ENDPOINT_LINK', 
             hostname => 'exampleHostname',
             port => '1522',
             service_name => 'exampleServiceName',
             ssl_server_cert_dn => NULL,
             credential_name => 'PRIVATE_ENDPOINT_CRED',
             directory_name => NULL,
             private_target => TRUE);
    END;
    /

    Para un destino en un punto final privado, DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK soporta la especificación de un único nombre de host con el parámetro hostname. En un punto final privado, no está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN (cuando el destino está en un punto final público, CREATE_DATABASE_LINK soporta el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN).

    Cuando el destino es una base de datos Oracle RAC, utilice el parámetro rac_hostnames para especificar uno o más nombres de host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Esto le permite aprovechar las capacidades de alta disponibilidad de Oracle RAC. No está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN en el valor rac_hostnames.

    Por ejemplo, con una base de datos Oracle RAC de destino, utilice el parámetro rac_hostnames:

    BEGIN
         DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
             db_link_name => 'PRIVATE_ENDPOINT_LINK', 
             rac_hostnames => '["sales1-svr1.example.adb.us-ashburn-1.oraclecloud.com", 
                                "sales1-svr2.example.adb.us-ashburn-1.oraclecloud.com", 
                                "sales1-svr3.example.adb.us-ashburn-1.oraclecloud.com"]', 
             port => '1522',
             service_name => 'exampleServiceName',
             ssl_server_cert_dn => NULL,
             credential_name => 'PRIVATE_ENDPOINT_CRED',
             directory_name => NULL,
             private_target => TRUE);
    END;
    /

    DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK no soporta un valor de localhost para hostname o en el parámetro rac_hostnames.

    Los usuarios que no sean ADMIN requieren privilegios para ejecutar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Como se muestra en el ejemplo, para crear un enlace de base de datos con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK a una base de datos de destino en un punto final privado mediante una conexión TCP segura sin una cartera, se necesitan todas las siguientes opciones:

    • El parámetro directory_name debe ser NULL.

    • El parámetro ssl_server_cert_dn debe ser NULL.

    • El parámetro private_target debe ser TRUE.

      Nota

      Si define ROUTE_OUTBOUND_CONNECTIONS en PRIVATE_ENDPOINT, no es necesario definir el parámetro private_target en TRUE en esta API. Consulte Seguridad mejorada para conexiones de salida con puntos finales privados para obtener más información.
  3. Utilice el enlace de base de datos creado para acceder a los datos de la base de datos de destino.

    Por ejemplo:

    SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;
                  
Nota

Para las credenciales que cree en el paso 1, las credenciales de Oracle Database, si la contraseña del usuario de destino cambia, puede actualizar la credencial que contiene las credenciales del usuario de destino de la siguiente forma:
BEGIN
     DBMS_CLOUD.UPDATE_CREDENTIAL (
         credential_name => 'DB_LINK_CRED',
         attribute => 'PASSWORD',
         value => 'password');
END;
/

Donde password es la nueva contraseña.

Después de esta operación, los enlaces de base de datos existentes que utilizan esta credencial siguen funcionando sin tener que borrar y recrear los enlaces de base de datos.

Consulte Procedimiento CREATE_DATABASE_LINK para obtener información adicional.

Creación de enlaces de base de datos de Autonomous Database a bases de datos Oracle en un punto final privado con una cartera (mTLS)

Puede crear enlaces de base de datos desde una instancia de Autonomous Database a una base de datos Oracle de destino que esté en un punto final privado.

Nota

Esta opción es para bases de datos Oracle de destino que tienen SSL/TCPS configurado y que están en un punto final privado.

Si la base de datos Oracle de destino no tiene SSL/TCPS configurado, tiene dos opciones:

Realice los pasos previos necesarios según sea preciso. Consulte Requisitos para enlaces de base de datos de Autonomous Database a una Autonomous Database de destino en un punto final privado para obtener más información.

Para crear un enlace de base de datos a una base de datos Oracle destino en un punto final privado mediante la autenticación TCP/IP con SSL (TCPS):

  1. Copie la cartera de la base de datos de destino, cwallet.sso, que contiene los certificados de la base de datos de destino en el almacén de objetos.
    Nota

    El archivo de cartera, junto con el ID de usuario y la contraseña de la base de datos, proporcionan acceso a los datos de la base de datos Oracle de destino. Almacene los archivos de cartera en una ubicación segura. Comparta los archivos de cartera solo con usuarios autorizados.
  2. Crear credenciales para acceder al almacén de objetos en el que almacena cwallet.sso. Consulte Procedimiento CREATE_CREDENTIAL para obtener información sobre los parámetros de nombre de usuario y contraseña para diferentes servicios de almacenamiento de objetos.
  3. Crear un directorio en Autonomous Database para el archivo de cartera cwallet.sso.

    Por ejemplo:

    CREATE DIRECTORY wallet_dir AS 'directory_path_of_your_choice';
                  

    Consulte Creación de directorios en Autonomous Database para obtener información sobre la creación de directorios.

  4. Utilice DBMS_CLOUD.GET_OBJECT para cargar la cartera de la base de datos de destino en el directorio creado en el paso anterior, WALLET_DIR.

    Por ejemplo:

    BEGIN 
        DBMS_CLOUD.GET_OBJECT(
            credential_name => 'DEF_CRED_NAME',
            object_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/cwallet.sso',
            directory_name => 'WALLET_DIR'); 
    END;
    /

    En este ejemplo, namespace-string es el espacio de nombres de almacenamiento de objetos de Oracle Cloud Infrastructure, y bucketname es el nombre del cubo. Consulte Descripción de los espacios de nombres de Object Storage para obtener más información.

    Nota

    El valor credential_name que utilice en este paso son las credenciales del almacén de objetos. En el siguiente paso, creará las credenciales para acceder a la base de datos de destino.
  5. En Autonomous Database, cree credenciales para acceder a la base de datos de destino. Los valores username y password que especifique con DBMS_CLOUD.CREATE_CREDENTIAL son las credenciales de la base de datos de destino que se utilizan en el enlace de base de datos (donde se accede a la base de datos de destino a través de la VCN).
    Nota

    Es necesario proporcionar el parámetro credential_name.

    Por ejemplo:

    BEGIN
       DBMS_CLOUD.CREATE_CREDENTIAL(
          credential_name => 'DB_LINK_CRED',
          username => 'NICK',
          password => 'password');
    END;
    /

    Los caracteres del parámetro username deben estar todos en mayúsculas.

    Nota

    Puede utilizar una credencial secreta de almacén para la credencial de base de datos de destino en un enlace de base de datos. Consulte Uso de credenciales secretas de almacén para obtener más información.

    Esta operación almacena las credenciales en la base de datos en un formato cifrado. Puede utilizar cualquier nombre para el nombre de credencial.

  6. Crear el enlace de base de datos a la base de datos de destino mediante DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por ejemplo:

    BEGIN
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
            db_link_name => 'PEDBLINK1', 
            hostname => 'example1.adb.ap-osaka-1.oraclecloud.com',
            port => '1522',
            service_name => 'example_high.adb.oraclecloud.com',
            ssl_server_cert_dn => 'ssl_server_cert_dn',
            credential_name => 'DB_LINK_CRED',
            directory_name => 'WALLET_DIR',
            private_target => TRUE);
    END;
    /
    Nota

    Si define ROUTE_OUTBOUND_CONNECTIONS en PRIVATE_ENDPOINT, no es necesario definir el parámetro private_target en TRUE en esta API. Consulte Seguridad mejorada para conexiones de salida con puntos finales privados para obtener más información.

    Para un destino en un punto final privado, DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK soporta la especificación de un único nombre de host con el parámetro hostname. En un punto final privado, no está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN (cuando el destino está en un punto final público, CREATE_DATABASE_LINK soporta el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN).

    Cuando el destino es una base de datos Oracle RAC, utilice el parámetro rac_hostnames para especificar uno o más nombres de host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Esto le permite aprovechar las capacidades de alta disponibilidad de Oracle RAC. No está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN en el valor rac_hostnames.

    Por ejemplo, con una base de datos Oracle RAC de destino, utilice el parámetro rac_hostnames:

    BEGIN
        DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
            db_link_name => 'PEDBLINK1', 
            rac_hostnames => '["sales1-svr1.example.adb.us-ashburn-1.oraclecloud.com",
                               "sales1-svr2.example.adb.us-ashburn-1.oraclecloud.com",
                               "sales1-svr3.example.adb.us-ashburn-1.oraclecloud.com"]',
            port => '1522',
            service_name => 'example_high.adb.oraclecloud.com',
            ssl_server_cert_dn => 'ssl_server_cert_dn',
            credential_name => 'DB_LINK_CRED',
            directory_name => 'WALLET_DIR',
            private_target => TRUE);
    END;
    /

    DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK no soporta un valor de localhost para hostname o en el parámetro rac_hostnames.

    Los usuarios que no sean ADMIN requieren privilegios para ejecutar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  7. Utilice el enlace de base de datos creado para acceder a los datos de la base de datos de destino.

    Por ejemplo:

    SELECT * FROM employees@PEDBLINK1;
                  
Nota

Para las credenciales que cree en el paso 5, las credenciales de Oracle Database, si la contraseña del usuario de destino cambia, puede actualizar la credencial que contiene las credenciales del usuario de destino de la siguiente forma:
BEGIN
    DBMS_CLOUD.UPDATE_CREDENTIAL (
        credential_name => 'DB_LINK_CRED',
        attribute => 'PASSWORD',
        value => 'password');
END;
/

Donde password es la nueva contraseña.

Después de esta operación, los enlaces de base de datos existentes que utilizan esta credencial siguen funcionando sin tener que borrar y recrear los enlaces de base de datos.

Consulte Procedimiento CREATE_DATABASE_LINK para obtener información adicional.

Notas sobre el enlace de base de datos con una instancia de Oracle Database de destino

Proporciona notas para crear enlaces de base de datos a una base de datos Oracle de destino (cuando el destino no es una instancia de Autonomous Database)

Notas sobre enlaces de base de datos a otras bases de datos Oracle:

  • Si utiliza enlaces de base de datos entre Autonomous Database y otras bases de datos Oracle, puede que necesite aplicar el parche 33843368 en Oracle Database que no sea una instancia de Autonomous Database. Esto se aplica a los casos en los que la instancia de Autonomous Database es el origen o el destino del enlace de base de datos.

    Consulte la base de conocimientos de My Oracle Support: Requisito de parches para enlaces de base de datos entre ADB-S y otras bases de datos Oracle (ID de documento 2874244.1) para obtener más información.

  • Solo se puede utilizar un archivo de cartera por directorio para el uso con enlaces de base de datos. Solo puede cargar un archivo cwallet.sso a la vez en el directorio que seleccione para los archivos de cartera (por ejemplo, DBLINK_WALLET_DIR). Esto significa que con cwallet.sso en DBLINK_WALLET_DIR solo puede crear enlaces de base de datos a las bases de datos para las que la cartera de ese directorio sea válida. Para utilizar varios archivos cwallet.sso con enlaces de base de datos, debe crear directorios adicionales y colocar cada archivo cwallet.sso en un directorio diferente. Al crear enlaces de base de datos con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK, especifique el directorio que contiene la cartera con el parámetro directory_name.

    Consulte Creación de directorios en Autonomous Database para obtener información sobre la creación de directorios.

  • Las versiones de la base de datos Oracle de destino soportadas para los enlaces de base de datos a otra instancia de Oracle Database son: 19c, 12.2.0 y 12.1.0.

    Nota

    Para obtener información completa sobre las versiones soportadas, consulte Client Server Interoperability Support Matrix for Diferentes versiones de Oracle (ID de documento 207303.1)
  • Autonomous Database define el parámetro SEC_CASE_SENSITIVE_LOGON en true y este valor no se puede cambiar. Si la base de datos de destino no es una instancia de Autonomous Database, debe definir el parámetro SEC_CASE_SENSITIVE_LOGON en true en la base de datos de destino. Si SEC_CASE_SENSITIVE_LOGON está definido en false en la base de datos de destino, se emite el error ORA-28040: No matching authentication protocol.

  • Para mostrar los enlaces de base de datos, utilice la vista ALL_DB_LINKS. Consulte ALL_DB_LINKS para obtener más información.

  • El archivo de cartera, junto con el identificador de usuario y la contraseña de la base de datos, proporcionan acceso a los datos de la base de datos Oracle de destino. Almacene los archivos de cartera en una ubicación segura. Comparta los archivos de cartera solo con usuarios autorizados.

  • Cuando la instancia de Autonomous Database está en un punto final privado, hay dos opciones para especificar la base de datos de destino: utilice el parámetro hostname o el parámetro rac_hostnames:

    • Para un destino en un punto final privado, DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK soporta la especificación de un único nombre de host con el parámetro hostname. En un punto final privado, no está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN (cuando el destino está en un punto final público, CREATE_DATABASE_LINK soporta el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN).

    • Cuando el destino es una base de datos Oracle RAC, utilice el parámetro rac_hostnames para especificar uno o más nombres de host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Esto le permite aprovechar las capacidades de alta disponibilidad de Oracle RAC. No está soportado el uso de una dirección IP, una IP de SCAN o un nombre de host de SCAN en el valor rac_hostnames.

      Al especificar una lista de nombres de host en el parámetro rac_hostnames, CREATE_DATABASE_LINK utiliza todos los nombres de host especificados como direcciones en la cadena de conexión. Si uno de los hosts especificados no está disponible en la base de datos Oracle RAC de destino, Autonomous Database intenta conectarse automáticamente mediante otro nombre de host de la lista.
    • DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK no soporta un valor de localhost para hostname o en el parámetro rac_hostnames.