Criar Links de Banco de Dados TLS de um Autonomous AI Database para outro Autonomous AI Database

Você pode criar links de banco de dados TLS de um Autonomous AI Database na Infraestrutura Dedicada do Exadata para um Autonomous AI Database de destino que esteja em um ponto final público.

Tópicos Relacionados

Criar Links de Banco de Dados TLS Unidirecionais de um Autonomous AI Database para outro Autonomous AI Database

Você pode criar links de banco de dados TLS unidirecionais de um Autonomous AI Database na Infraestrutura Dedicada do Exadata para um Autonomous AI Database acessível publicamente.

Para criar links de banco de dados para um destino público, o banco de dados de destino deve estar acessível. Alguns bancos de dados, incluindo Autonomous AI Databases, 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 com as ACLs (Listas de Controle de Acesso), poderá localizar o endereço IP de saída do seu Autonomous AI Database de origem e permitir que esse endereço IP se conecte ao seu banco de dados de destino. Quando o banco de dados de destino for outro Autonomous AI Database, você poderá adicionar o endereço IP de saída do banco de dados de origem à ACL do banco de dados de destino.

Consulte Obter Detalhes da Tenancy para obter informações sobre como localizar o endereço IP de saída.

Para criar um link de banco de dados para um Autonomous AI Database de destino sem uma wallet (TLS):

  1. Certifique-se de que conexões TLS unidirecionais estejam ativadas.

    Por padrão, conexões TLS unidirecionais são ativadas quando você provisiona um AVMC. Consulte Criar um Cluster de VMs Autonomous Exadata para obter mais informações.

    Observação:

    Em um Autonomous AI Database on Dedicated Exadata Infrastructure, as conexões sem wallet funcionam para TLS unidirecional instalando um certificado SSL personalizado emitido por uma CA pública. Para obter mais detalhes, consulte Preparar para Conexões sem Wallet TLS.
  2. Na instância do Autonomous AI Database na qual você está criando o link de banco de dados, crie credenciais para acessar o Autonomous AI Database de destino. As credenciais username e password especificadas com DBMS_CLOUD.CREATE_CREDENTIAL são as credenciais do banco de dados de destino (você usa essas credenciais para criar o link do banco de dados).

    Observação:

    É obrigatório fornecer o parâmetro credential_name.

    Por exemplo:

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

    Todos os caracteres do parâmetro username devem estar em letras maiúsculas.

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

  3. Crie um link de banco de dados para a instância de destino do Autonomous AI Database usando o 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 => '2484',
            service_name => 'example_medium.atpc.example.oraclecloud.com',
            credential_name => 'DB_LINK_CRED',
            directory_name => NULL);
    END;
    /

    Para criar um link de banco de dados com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK para um Autonomous AI Database de destino em um ponto final público usando uma conexão TCP segura sem uma wallet, o parâmetro directory_name deve ser NULL.

    O valor do parâmetro port deve ser definido como 2484 para conexões TLS. No entanto, se outro número de porta do listener SCAN tiver sido escolhido durante o provisionamento do AVMC, você deverá usar esse número de porta. Consulte Criar Cluster de VMs Autonomous Exadata para obter mais informações.

    O parâmetro ssl_server_cert_dn pode ser omitido ou, se incluído, especifique um valor NULL.

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

  4. Use o link 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 1, 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 password é a nova senha.

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

Para obter informações adicionais, consulte:

Criar Links de Banco de Dados mTLS de um Autonomous AI Database para outro Autonomous AI Database

Você pode criar links de banco de dados mTLS de um Autonomous AI Database na Infraestrutura Dedicada do Exadata para um Autonomous AI Database acessível publicamente.

Para criar links de banco de dados para um destino público, o banco de dados de destino deve estar acessível. Alguns bancos de dados, incluindo Autonomous AI Databases, 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 com as ACLs (Listas de Controle de Acesso), poderá localizar o endereço IP de saída do seu Autonomous AI Database de origem e permitir que esse endereço IP se conecte ao seu banco de dados de destino. Por exemplo, se o banco de dados de destino for outro Autonomous AI Database, você poderá adicionar o endereço IP de saída do banco de dados de origem à ACL do banco de dados de destino.

Consulte Obter Detalhes da Tenancy para obter informações sobre como localizar o endereço IP de saída.

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

  1. Certifique-se de que as conexões mTLS estejam ativadas.

    Por padrão, conexões TLS unidirecionais são ativadas para um AVMC. Você pode ativar a autenticação mTLS (TLS mútuo) marcando a caixa de seleção Ativar autenticação mTLS (TLS mútuo) ao provisionar o AVMC. Consulte Criar um Cluster de VMs Autonomous Exadata para obter mais informações.

  2. Copie a wallet do banco de dados de destino, cwallet.sso, que contém os certificados do banco de dados de destino para o Armazenamento de Objetos.

    Observe o seguinte para o arquivo de wallet:

    • O arquivo da wallet com o ID e a senha do usuário do Banco de Dados fornece 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 Object Storage deve ser chamado de cwallet.sso.

  3. Criar credenciais para acessar seu Armazenamento de Objetos no qual você armazena o arquivo de 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.
  4. Crie um diretório no Autonomous AI 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 AI Database para obter informações sobre como criar diretórios.

  5. 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 corresponde ao namespace do armazenamento de objetos do Oracle Cloud Infrastructure e bucketname corresponde ao nome do bucket. Consulte Noções Básicas de Namespaces do serviço Object Storage para obter mais informações.

  6. Na instância do Autonomous AI 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 de banco de dados.

    Observação:

    É obrigatório fornecer o parâmetro credential_name.

    Por exemplo:

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

    Todos os caracteres do parâmetro username devem estar em letras maiúsculas.

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

  7. Crie o link de 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 => '2484',
            service_name => 'example_medium.atpc.example.oraclecloud.com',
            ssl_server_cert_dn => 'CN=atpc.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 exigem privilégios para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    O valor do parâmetro port deve ser definido como 2484 para conexões TLS. No entanto, se outro número de porta do listener SCAN tiver sido escolhido durante o provisionamento do AVMC, você deverá usar esse número de porta. Consulte Criar Cluster de VMs Autonomous Exadata para obter mais informações.

    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.

  8. Use o link 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 password é a nova senha.

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

Para obter informações adicionais, consulte:

Observações do Link de Banco de Dados com um Destino que é um Autonomous AI Database

Fornece observações para criar links de banco de dados para um destino que seja outro Autonomous AI Database.

Observações para links de banco de dados com outro Autonomous AI Database:

  • Somente 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 de cada vez para o diretório escolhido para arquivos de wallet (por exemplo, DBLINK_WALLET_DIR). Isso significa que, com um cwallet.sso em DBLINK_WALLET_DIR, você só pode criar links para os bancos de dados para os quais a wallet nesse diretório é válida. Para usar vários arquivos cwallet.sso com links de banco de dados, crie diretórios adicionais e coloque 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 AI Database para obter informações sobre como criar diretórios.

  • Para listar os links do banco de dados, use a view ALL_DB_LINKS. Consulte ALL_DB_LINKS na Oracle Database 19c Database Reference ou Oracle Database 26ai Database Reference 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 Autonomous AI Database de destino. Armazene os arquivos da wallet em um local seguro. Só compartilhe os arquivos da wallet com usuários autorizados.

  • A entrada DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve mencionar o nome da verificação do Autonomous AI Database Dedicado de destino como o parâmetro 'hostname'.