Criar Links de Banco de Dados para um Oracle Database que não seja um Autonomous Database

Você pode criar links de banco de dados de um Autonomous Database para um banco de dados Oracle que esteja em um ponto final privado ou em um ponto final público (acessível publicamente).

Observação

Consulte Criar Links de Banco de Dados do Autonomous Database para Outro Autonomous Database se o destino do seu link de banco de dados for outro Autonomous Database.

Criar Links de Banco de dados do Autonomous Database para um Oracle Database de Acesso Público com uma Wallet (mTLS)

Você pode criar links de banco de dados de um Autonomous Database para um banco de dados Oracle de destino que esteja em um ponto final público.

Para usar links de banco de dados com o Autonomous Database, o banco de dados de destino deve ser configurado para usar TCP/IP com autenticação SSL (TCPS). Os Autonomous Databases usam TCP/IP com autenticação SSL (TCPS) por padrão, para que você não precise fazer nenhuma configuração adicional no seu banco de dados de destino para estabelecer link com outro Autonomous Database. Outros bancos de dados Oracle devem ser configurados para usar TCP/IP com autenticação SSL (TCPS). Consulte Configurando Autenticação da Camada de Sockets Seguros para obter mais informações.

Para criar links de banco de dados para um destino público, o Oracle Database de destino deve estar acessível. Alguns bancos de dados podem limitar o acesso (por exemplo, usando Listas de Controle de Acesso). Certifique-se de ativar o banco de dados de destino para permitir o acesso do banco de dados de origem para que o link do banco de dados funcione. Se você limitar o acesso às ACLs (Listas de Controle de Acesso), poderá localizar o endereço IP de saída do seu Autonomous Database de origem e permitir que esse endereço IP se conecte ao seu banco de dados de destino.

Consulte How to Create a Database Link from Your Autonomous Database to a Database Cloud Service Instance para obter mais informações.

Para criar links de banco de dados para um banco de dados Oracle de destino com uma wallet (mTLS):

  1. Copie sua wallet do banco de dados de destino, cwallet.sso, contendo os certificados do banco de dados de destino para o Object Store.

    Observe o seguinte para o arquivo de wallet:

    • O arquivo da wallet, juntamente com o ID de usuário e a senha do Banco de Dados, fornecem acesso aos dados no Oracle Database de destino. Armazene os arquivos da wallet em um local seguro. Só compartilhe os arquivos da wallet com usuários autorizados.

    • Não renomeie o arquivo da wallet. O arquivo da wallet no serviço Object Storage deve ser nomeado cwallet.sso.

  2. Crie credenciais para acessar o Object Store em que você armazena o arquivo da wallet cwallet.sso. Consulte Procedimento CREATE_CREDENTIAL para obter informações sobre os parâmetros de nome de usuário e senha para diferentes serviços de armazenamento de objetos.

    Não será necessário criar uma credencial para acessar o Oracle Cloud Infrastructure Object Store se você ativar as credenciais do controlador de recursos. Consulte Usar o Controlador de Recursos para Acessar Recursos da Oracle Cloud Infrastructure para obter mais informações.

  3. Crie um diretório no Autonomous Database para o arquivo de wallet cwallet.sso.

    Por exemplo:

    CREATE DIRECTORY dblink_wallet_dir AS 'directory_path_of_your_choice';
                

    Consulte Criar Diretório no Autonomous Database para obter informações sobre como criar diretórios.

  4. Use DBMS_CLOUD.GET_OBJECT para fazer upload da wallet do banco de dados de destino para o diretório criado na etapa anterior, DBLINK_WALLET_DIR.

    Por exemplo:

    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;
    /

    Neste exemplo, namespace-string é o namespace do Oracle Cloud Infrastructure Object Storage e bucketname é o nome do bucket. Consulte Noções Básicas de Namespaces do serviço Object Storage para obter mais informações.

    Observação

    O credential_name que você usa nesta etapa são as credenciais do Object Store. Na próxima etapa, você cria as credenciais para acessar o banco de dados de destino.

    Não será necessário criar uma credencial para acessar o Oracle Cloud Infrastructure Object Store se você ativar as credenciais do controlador de recursos. Consulte Usar o Controlador de Recursos para Acessar Recursos da Oracle Cloud Infrastructure para obter mais informações.

  5. Na instância do Autonomous Database, crie credenciais para acessar o banco de dados de destino. As credenciais username e password especificadas com DBMS_CLOUD.CREATE_CREDENTIAL são as credenciais do banco de dados de destino que você usa para criar o link do banco de dados.
    Observação

    É necessário fornecer o parâmetro credential_name.

    Por exemplo:

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

    Os caracteres no parâmetro username devem ter todas as letras maiúsculas.

    Observação

    Você pode usar uma credencial de segredo do vault para a credencial do banco de dados de destino em um link de banco de dados. Consulte Usar Credenciais do Segredo do Vault para obter mais informações.

    Esta operação armazena as credenciais no banco de dados em um formato criptografado. Você pode usar qualquer nome para o nome da credencial.

  6. Crie o link do banco de dados para o banco de dados de destino usando DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por exemplo:

    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;
    /

    Usuários diferentes de ADMIN precisam de privilégios para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Se o arquivo da wallet no diretório especificado com directory_name não for cwallet.sso, o procedimento reportará um erro como: ORA-28759: failure to open file.

  7. Use o vínculo de banco de dados criado para acessar dados no banco de dados de destino.

    Por exemplo:

    SELECT * FROM employees@SALESLINK;
                

Para as credenciais criadas na Etapa 5, as credenciais do banco de dados de destino, se a senha do usuário de destino for alterada, você poderá atualizar a credencial que contém as credenciais do usuário de destino da seguinte forma:

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

Em que senha é a Nova Senha.

Após essa operação, os links de banco de dados existentes que usam essa credencial continuam funcionando sem precisar eliminar e recriar os links de banco de dados.

Observação

Você pode criar links para o Big Data Service usando o DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Consulte Consultar Dados do Hadoop (HDFS) do Big Data Service no Autonomous Database para obter mais informações.

Para obter informações adicionais, consulte:

Criar Links de Banco de dados do Autonomous Database para um Oracle Database em um Ponto Final Privado

Você pode criar links de banco de dados de um Autonomous Database para um Oracle Database de destino que esteja em um ponto final privado.

Dependendo do tipo e da configuração do banco de dados Oracle de destino:

Consulte How to Create a Database Link from Your Autonomous Database to a Database Cloud Service Instance para obter mais informações.

Tópicos

Pré-requisitos para Links de Bancos de Dados do Autonomous Database para Bancos de Dados do Oracle em um Ponto Final Privado

Lista os pré-requisitos para criar links de banco de dados de um Autonomous Database para um banco de dados Oracle de destino que esteja em um ponto final privado.

Para criar um link de banco de dados para um banco de dados Oracle de destino em um ponto final privado:

  • O banco de dados de destino deve estar acessível pela VCN do Oracle Cloud Infrastructure do banco de dados de origem. Por exemplo, você pode estabelecer conexão com o banco de dados de destino quando:

    • O banco de dados de destino está em um ponto final privado.

    • Tanto o banco de dados de origem quanto o de destino estão na mesma VCN do Oracle Cloud Infrastructure.

    • O banco de dados de origem e o banco de dados de destino estão em diferentes VCNs do Oracle Cloud Infrastructure pareadas.

    • O banco de dados de destino é um banco de dados on-premises conectado à VCN do Oracle Cloud Infrastructure do banco de dados de origem usando FastConnect ou VPN.

  • Há duas opções para especificar o banco de dados de destino: use o parâmetro hostname ou o parâmetro rac_hostnames:

    • Para um destino em um ponto final privado, o DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK suporta a especificação de um único nome de host com o parâmetro hostname. Em um ponto final privado, não há suporte para o uso de um endereço IP, IP SCAN ou nome de host SCAN (quando o destino está em um ponto final público, o CREATE_DATABASE_LINK suporta o uso de um endereço IP, um IP SCAN ou um nome de host SCAN).

    • Quando o destino for um banco de dados Oracle RAC, use o parâmetro rac_hostnames para especificar um ou mais nomes de host com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Isso permite que você aproveite os recursos de alta disponibilidade do Oracle RAC. O uso de um endereço IP, um IP SCAN ou um nome de host SCAN no valor rac_hostnames não é suportado.

      Quando você especifica uma lista de nomes de host no parâmetro rac_hostnames, CREATE_DATABASE_LINK usa todos os nomes de host especificados como endereços na string de conexão. Se um dos hosts especificados não estiver disponível no banco de dados do Oracle RAC de destino, o Autonomous Database tentará estabelecer conexão automaticamente usando outro nome de host na lista.
  • As seguintes regras de entrada e saída devem ser definidas para o ponto final privado:

    • Defina uma regra de saída na lista de segurança de sub-rede ou no grupo de segurança de rede do banco de dados de origem para que o tráfego em TCP seja permitido para o endereço IP e o número da porta do banco de dados de destino.

    • Defina uma regra de entrada na lista de segurança de sub-rede ou no grupo de segurança de rede do banco de dados de destino de forma que o tráfego por TCP seja permitido do endereço IP do banco de dados de origem para a porta de destino.

    Consulte Configurar o Acesso à Rede com Pontos Finais Privados para obter informações sobre como configurar pontos finais privados com regras de entrada e saída.

Observação

Quando sua instância do Autonomous Database estiver configurada com um ponto final privado, defina o parâmetro de banco de dados ROUTE_OUTBOUND_CONNECTIONS como 'PRIVATE_ENDPOINT' para especificar que todos os links de banco de dados de saída estão sujeitos às regras de saída da VCN do ponto final privado da instância do Autonomous Database. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações.

Criar Links de Banco de Dados para Bancos de Dados Oracle em um Ponto Final Privado sem uma Wallet

Use DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK para criar links de banco de dados de um Autonomous Database para um banco de dados Oracle de destino que esteja em um ponto final privado e se conecte sem uma wallet (TCP).

Observação

Esta opção se destina a bancos de dados Oracle de destino que estão em um ponto final privado e não têm SSL/TCPS configurado.

Execute as etapas de pré-requisito, conforme necessário. Consulte Pré-requisitos para Links de Banco de Dados do Autonomous Database para um Autonomous Database de Destino em um Ponto Final Privado para obter detalhes.

Para criar um link de banco de dados para um banco de dados de destino em um ponto final privado usando uma conexão TCP segura sem uma wallet:

  1. No Autonomous Database, crie credenciais para acessar o banco de dados de destino. As credenciais username e password que você especifica com DBMS_CLOUD.CREATE_CREDENTIAL são as credenciais do banco de dados de destino usado no link do banco de dados (em que o banco de dados de destino é acessado por meio da VCN).

    Por exemplo:

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

    Os caracteres no parâmetro username devem ter todas as letras maiúsculas.

    Observação

    Você pode usar uma credencial de segredo do vault para a credencial do banco de dados de destino em um link de banco de dados. Consulte Usar Credenciais do Segredo do Vault para obter mais informações.

    Esta operação armazena as credenciais no banco de dados em um formato criptografado. Você pode usar qualquer nome para o nome da credencial.

  2. Crie o link do banco de dados para o banco de dados de destino usando DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por exemplo:

    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 um destino em um ponto final privado, o DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK suporta a especificação de um único nome de host com o parâmetro hostname. Em um ponto final privado, não há suporte para o uso de um endereço IP, IP SCAN ou nome de host SCAN (quando o destino está em um ponto final público, o CREATE_DATABASE_LINK suporta o uso de um endereço IP, um IP SCAN ou um nome de host SCAN).

    Quando o destino for um banco de dados Oracle RAC, use o parâmetro rac_hostnames para especificar um ou mais nomes de host com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Isso permite que você aproveite os recursos de alta disponibilidade do Oracle RAC. O uso de um endereço IP, um IP SCAN ou um nome de host SCAN no valor rac_hostnames não é suportado.

    Por exemplo, com um banco de dados Oracle RAC de destino, use o 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 não suporta um valor localhost para o parâmetro hostname ou no parâmetro rac_hostnames.

    Usuários diferentes de ADMIN precisam de privilégios para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Conforme mostrado no exemplo, para criar um link de banco de dados com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK para um banco de dados de destino em um ponto final privado usando uma conexão TCP segura sem uma wallet, todas as seguintes opções são necessárias:

    • O parâmetro directory_name deve ser NULL.

    • O parâmetro ssl_server_cert_dn deve ser NULL.

    • O parâmetro private_target deve ser TRUE.

      Observação

      Se você definir ROUTE_OUTBOUND_CONNECTIONS como PRIVATE_ENDPOINT, não será necessário definir o parâmetro private_target como TRUE nesta API. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações.
  3. Use o link de banco de dados criado para acessar dados no banco de dados de destino.

    Por exemplo:

    SELECT * FROM employees@PRIVATE_ENDPOINT_LINK;
                  
Observação

Para as credenciais criadas na Etapa 1, as credenciais do Oracle Database, se a senha do usuário de destino for alterada, você poderá atualizar a credencial que contém as credenciais do usuário de destino da seguinte forma:
BEGIN
     DBMS_CLOUD.UPDATE_CREDENTIAL (
         credential_name => 'DB_LINK_CRED',
         attribute => 'PASSWORD',
         value => 'password');
END;
/

Em que senha é a Nova Senha.

Após essa operação, os links de banco de dados existentes que usam essa credencial continuam funcionando sem precisar eliminar e recriar os links de banco de dados.

Consulte CREATE_DATABASE_LINK Procedures para obter informações adicionais.

Criar Links de Bancos de Dados do Autonomous Database para Bancos de Dados da Oracle em um Ponto Final Privado com uma Wallet (mTLS)

Você pode criar links de banco de dados de um Autonomous Database para um banco de dados Oracle de destino que esteja em um ponto final privado.

Observação

Esta opção se destina a bancos de dados Oracle de destino que têm SSL/TCPS configurado e que estão em um ponto final privado.

Se o banco de dados Oracle de destino não tiver SSL/TCPS configurado, você terá duas opções:

Execute as etapas de pré-requisito, conforme necessário. Consulte Pré-requisitos para Links de Banco de Dados do Autonomous Database para um Autonomous Database de Destino em um Ponto Final Privado para obter detalhes.

Para criar um link de banco de dados para um banco de dados Oracle de destino em um ponto final privado usando a autenticação TCP/IP com SSL (TCPS):

  1. Copie sua wallet do banco de dados de destino, cwallet.sso, contendo os certificados do banco de dados de destino para o Object Store.
    Observação

    O arquivo da wallet, juntamente com o ID de usuário e a senha do Banco de Dados, fornecem acesso aos dados no banco de dados Oracle de destino. Armazene os arquivos da wallet em um local seguro. Só compartilhe os arquivos da wallet com usuários autorizados.
  2. Crie credenciais para acessar o Object Store no qual você armazena o cwallet.sso. Consulte Procedimento CREATE_CREDENTIAL para obter informações sobre os parâmetros de nome de usuário e senha para diferentes serviços de armazenamento de objetos.
  3. Crie um diretório no Autonomous Database para o arquivo de wallet cwallet.sso.

    Por exemplo:

    CREATE DIRECTORY wallet_dir AS 'directory_path_of_your_choice';
                  

    Consulte Criar Diretório no Autonomous Database para obter informações sobre como criar diretórios.

  4. Use DBMS_CLOUD.GET_OBJECT para fazer upload da wallet do banco de dados de destino para o diretório criado na etapa anterior, WALLET_DIR.

    Por exemplo:

    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;
    /

    Neste exemplo, namespace-string é o namespace do Oracle Cloud Infrastructure Object Storage e bucketname é o nome do bucket. Consulte Noções Básicas de Namespaces do serviço Object Storage para obter mais informações.

    Observação

    O credential_name que você usa nesta etapa são as credenciais do Object Store. Na próxima etapa, você cria as credenciais para acessar o banco de dados de destino.
  5. No Autonomous Database, crie credenciais para acessar o banco de dados de destino. As credenciais username e password que você especifica com DBMS_CLOUD.CREATE_CREDENTIAL são as credenciais do banco de dados de destino usado no link do banco de dados (em que o banco de dados de destino é acessado por meio da VCN).
    Observação

    É necessário fornecer o parâmetro credential_name.

    Por exemplo:

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

    Os caracteres no parâmetro username devem ter todas as letras maiúsculas.

    Observação

    Você pode usar uma credencial de segredo do vault para a credencial do banco de dados de destino em um link de banco de dados. Consulte Usar Credenciais do Segredo do Vault para obter mais informações.

    Esta operação armazena as credenciais no banco de dados em um formato criptografado. Você pode usar qualquer nome para o nome da credencial.

  6. Crie o link do banco de dados para o banco de dados de destino usando DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Por exemplo:

    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;
    /
    Observação

    Se você definir ROUTE_OUTBOUND_CONNECTIONS como PRIVATE_ENDPOINT, não será necessário definir o parâmetro private_target como TRUE nesta API. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações.

    Para um destino em um ponto final privado, o DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK suporta a especificação de um único nome de host com o parâmetro hostname. Em um ponto final privado, não há suporte para o uso de um endereço IP, IP SCAN ou nome de host SCAN (quando o destino está em um ponto final público, o CREATE_DATABASE_LINK suporta o uso de um endereço IP, um IP SCAN ou um nome de host SCAN).

    Quando o destino for um banco de dados Oracle RAC, use o parâmetro rac_hostnames para especificar um ou mais nomes de host com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Isso permite que você aproveite os recursos de alta disponibilidade do Oracle RAC. O uso de um endereço IP, um IP SCAN ou um nome de host SCAN no valor rac_hostnames não é suportado.

    Por exemplo, com um banco de dados Oracle RAC de destino, use o 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 não suporta um valor localhost para o parâmetro hostname ou no parâmetro rac_hostnames.

    Usuários diferentes de ADMIN precisam de privilégios para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  7. Use o link de banco de dados criado para acessar dados no banco de dados de destino.

    Por exemplo:

    SELECT * FROM employees@PEDBLINK1;
                  
Observação

Para as credenciais criadas na Etapa 5, as credenciais do Oracle Database, se a senha do usuário de destino for alterada, você poderá atualizar a credencial que contém as credenciais do usuário de destino da seguinte forma:
BEGIN
    DBMS_CLOUD.UPDATE_CREDENTIAL (
        credential_name => 'DB_LINK_CRED',
        attribute => 'PASSWORD',
        value => 'password');
END;
/

Em que senha é a Nova Senha.

Após essa operação, os links de banco de dados existentes que usam essa credencial continuam funcionando sem precisar eliminar e recriar os links de banco de dados.

Consulte CREATE_DATABASE_LINK Procedures para obter informações adicionais.

Observações do Link de Banco de Dados com um Oracle Database de Destino

Fornece observações para criar links de banco de dados para um banco de dados Oracle de destino (quando o destino não é um Autonomous Database)

Observações para links de banco de dados para outros bancos de dados Oracle:

  • Se você estiver usando links de banco de dados entre o Autonomous Database e outros Bancos de Dados Oracle, talvez seja necessário aplicar o Patch 33843368 no Oracle Database que não seja um Autonomous Database. Isso se aplica aos casos em que a instância do Autonomous Database é a origem ou o destino do link de banco de dados.

    Consulte a Base de Conhecimento do My Oracle Support: Patch Requirement for Database Links Between ADB-S And Other Oracle Databases(Doc ID 2874244.1) para obter mais detalhes.

  • Apenas um arquivo de wallet é válido por diretório para uso com links de banco de dados. Você só pode fazer upload de um cwallet.sso por vez para o diretório escolhido para arquivos da wallet (por exemplo, DBLINK_WALLET_DIR). Isso significa que, com um cwallet.sso em DBLINK_WALLET_DIR, você só pode criar links de banco de dados para os bancos de dados cuja wallet nesse diretório é válida. Para usar vários arquivos cwallet.sso com links de banco de dados, você precisa criar diretórios adicionais e colocar cada cwallet.sso em um diretório diferente. Quando você criar links de banco de dados com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK, especifique o diretório que contém a wallet com o parâmetro directory_name.

    Consulte Criar Diretório no Autonomous Database para obter informações sobre como criar diretórios.

  • As versões de banco de dados Oracle de destino suportadas para links de banco de dados para outro Oracle Database são: 19c, 12.2.0 e 12.1.0.

    Observação

    Para obter informações completas sobre as versões compatíveis, consulte Client Server Interoperability Support Matrix for Different Oracle Versions (ID de documento 207303.1)
  • O Autonomous Database define o parâmetro SEC_CASE_SENSITIVE_LOGON como true e esse valor não pode ser alterado. Se o seu banco de dados de destino não for um Autonomous Database, defina o parâmetro SEC_CASE_SENSITIVE_LOGON como true no banco de dados de destino. Se o SEC_CASE_SENSITIVE_LOGON for definido como false no banco de dados de destino, o erro ORA-28040: No matching authentication protocol será gerado.

  • Para listar os links do banco de dados, use a view ALL_DB_LINKS. Consulte ALL_DB_LINKS para obter mais informações.

  • O arquivo da wallet, juntamente com o ID de usuário e a senha do Banco de Dados, fornecem acesso aos dados no banco de dados Oracle de destino. Armazene os arquivos da wallet em um local seguro. Só compartilhe os arquivos da wallet com usuários autorizados.

  • Quando a instância do Autonomous Database está em um ponto final privado, há duas opções para especificar o banco de dados de destino: use o parâmetro hostname ou o parâmetro rac_hostnames:

    • Para um destino em um ponto final privado, o DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK suporta a especificação de um único nome de host com o parâmetro hostname. Em um ponto final privado, não há suporte para o uso de um endereço IP, IP SCAN ou nome de host SCAN (quando o destino está em um ponto final público, o CREATE_DATABASE_LINK suporta o uso de um endereço IP, um IP SCAN ou um nome de host SCAN).

    • Quando o destino for um banco de dados Oracle RAC, use o parâmetro rac_hostnames para especificar um ou mais nomes de host com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Isso permite que você aproveite os recursos de alta disponibilidade do Oracle RAC. O uso de um endereço IP, um IP SCAN ou um nome de host SCAN no valor rac_hostnames não é suportado.

      Quando você especifica uma lista de nomes de host no parâmetro rac_hostnames, CREATE_DATABASE_LINK usa todos os nomes de host especificados como endereços na string de conexão. Se um dos hosts especificados não estiver disponível no banco de dados do Oracle RAC de destino, o Autonomous Database tentará estabelecer conexão automaticamente usando outro nome de host na lista.
    • DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK não suporta um valor localhost para o parâmetro hostname ou no parâmetro rac_hostnames.

  • Quando private_target => TRUE, a criação de links de banco de dados entre realms, em que o banco de dados de origem e o banco de dados de destino estão em diferentes realms do Oracle Cloud Infrastructure, não é suportada.