Resumo de Subprogramas DBMS_CLOUD_ADMIN

Esta seção abrange os subprogramas DBMS_CLOUD_ADMIN fornecidos com o Autonomous Database.

Subprograma Descrição

ATTACH_FILE_SYSTEM Procedimento

Este procedimento anexa um sistema de arquivos em um diretório no banco de dados.

Procedimento CANCEL_WORKLOAD_CAPTURE

Este procedimento cancela a captura da carga de trabalho atual.

CREATE_DATABASE_LINK Procedimento

Esse procedimento cria um link de banco de dados para um banco de dados de destino. Há opções para criar um link de banco de dados com outra instância do Autonomous Database, com um Oracle Database que não seja um Autonomous Database ou com um não Oracle Database usando conectividade heterogênea gerenciada pela Oracle.

DETACH_FILE_SYSTEM Procedimento

Este procedimento desanexa um sistema de arquivos de um diretório do banco de dados.

DISABLE_APP_CONT Procedimento

Este procedimento desativa a continuidade do aplicativo de banco de dados para a sessão associada ao nome de serviço especificado no Autonomous Database.

Procedimento DISABLE_EXTERNAL_AUTHENTICATION

Este procedimento desativa a autenticação externa da instância do Autonomous Database.

Procedimento DISABLE_OPERATOR_ACCESS

Revoga imediatamente o acesso do Cloud Operator na instância do Banco de Dados Autonomous Database.

Procedimento DISABLE_PRINCIPAL_AUTH

Este procedimento revoga a autenticação baseada no controlador para o provedor especificado e se aplica ao usuário ADMIN ou ao usuário especificado.

Procedimento DISABLE_RESOURCE_PRINCIPAL

Este procedimento desativa as credenciais do controlador de recursos para o banco de dados ou para o esquema especificado. Com um nome de usuário especificado, diferente de ADMIN, o procedimento revoga o acesso do esquema especificado à credencial do controlador de recursos.

DROP_DATABASE_LINK Procedimento

Esse procedimento elimina um link de banco de dados.

ENABLE_APP_CONT Procedimento

Este procedimento ativa a continuidade do aplicativo de banco de dados para a sessão associada ao nome de serviço especificado no Autonomous Database.

ENABLE_AWS_ARN Procedimento

Este procedimento permite que um usuário crie credenciais do AWS ARN no Autonomous Database.

ENABLE_EXTERNAL_AUTHENTICATION Procedimento

Este procedimento permite que um usuário faça log-on no Autonomous Database usando o esquema de autenticação externa especificado.

ENABLE_FEATURE Procedimento

Este procedimento ativa o recurso especificado na instância do Autonomous Database.

Procedimento ENABLE_OPERATOR_ACCESS

Concede ao Operador da Nuvem acesso a uma instância do Autonomous Database por um número especificado de horas.

ENABLE_PRINCIPAL_AUTH Procedimento

Este procedimento ativa a autenticação do controlador do provedor especificado e se aplica ao usuário ADMIN ou ao usuário especificado.

ENABLE_RESOURCE_PRINCIPAL Procedimento

Este procedimento ativa a credencial do controlador de recursos e cria a credencial OCI$RESOURCE_PRINCIPAL. Com um nome de usuário especificado, diferente de ADMIN, o procedimento concede ao esquema especificado acesso à credencial do controlador de recursos.

Procedimento FINISH_WORKLOAD_CAPTURE

Este procedimento interrompe a captura da carga de trabalho e faz upload dos arquivos de captura para o armazenamento de objetos.

Procedimento PREPARE_REPLAY

Este procedimento prepara a repetição para o clone atualizável.

Procedimento PURGE_FLASHBACK_ARCHIVE Esse procedimento limpa dados históricos do Flashback Data Archive.

REPLAY_WORKLOAD Procedimento

Este procedimento é sobrecarregado. Ele inicia a reprodução da carga de trabalho.

Procedimento SET_FLASHBACK_ARCHIVE_RETENTION

Esse procedimento permite que os usuários ADMIN modifiquem o período de retenção do Flashback Time Travel flashback_archive.

Procedimento START_WORKLOAD_CAPTURE

Este procedimento inicia uma captura de carga de trabalho.

ATTACH_FILE_SYSTEM Procedimento

Este procedimento anexa um sistema de arquivos no banco de dados.

O procedimento DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM anexa um sistema de arquivos no banco de dados e armazena informações sobre o sistema de arquivos na view DBA_CLOUD_FILE_SYSTEMS.

Sintaxe

DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name         IN VARCHAR2,
    file_system_location     IN VARCHAR2,
    directory_name           IN VARCHAR2,
    description              IN VARCHAR2 DEFAULT NULL,
    params                   IN CLOB DEFAULT NULL
);

Parâmetros

Parâmetro Descrição

file_system_name

Especifica o nome do sistema de arquivos.

Este parâmetro é obrigatório.

file_system_location

Especifica o local do sistema de arquivos.

O valor fornecido com file_system_location consiste em um FQDN (Nome de Domínio Totalmente Qualificado) e um caminho de arquivo no formato: FQDN:file_path.

Por exemplo:

  • FQDN: myhost.sub000445.myvcn.oraclevcn.com

    Para o Oracle Cloud Infrastructure File Storage, defina o FQDN em Mostrar Opções Avançadas ao criar um sistema de arquivos. Consulte Criando Sistemas de Arquivos para obter mais informações.

  • Caminho do Arquivo: /results

Este parâmetro é obrigatório.

directory_name

Especifica o nome do diretório para o sistema de arquivos anexado. O diretório deve existir.

Este parâmetro é obrigatório.

description

(Opcional) Fornece uma descrição da tarefa.

params

Uma string JSON que fornece um parâmetro adicional para o sistema de arquivos.

  • nfs_version: Especifica a versão do NFS a ser usada quando o NFS está anexado (NFSv3 ou NFSv4). Valores válidos: 3, 4.

    Valor padrão: 3

Exemplos de:

Anexe a um sistema de arquivos NFSv3:

BEGIN
   DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name      => 'FSS',
    file_system_location  => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
    directory_name        => 'FSS_DIR',
    description           => 'Source NFS for sales data'
  );
END;
/     

Anexe a um sistema de arquivos NFSv4:

BEGIN
   DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name      => 'FSS',
    file_system_location  => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
    directory_name        => 'FSS_DIR',  
    description           => 'Source NFS for sales data',
    params                => JSON_OBJECT('nfs_version' value 4)
);                                                      
END;                                                        
/

Observações de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Você deve ter o privilégio WRITE no objeto de diretório no banco de dados para anexar um sistema de arquivos usando DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM.

  • O procedimento DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM só pode anexar um Serviço de Armazenamento de Arquivos privado em bancos de dados com Pontos Finais Privados ativados.

    Consulte OCI File Storage Service e Configurar Acesso à Rede com Pontos Finais Privados para obter mais informações.

  • O procedimento DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM procura o nome do host do Sistema de Arquivos de Rede na rede virtual na nuvem (VCN) do cliente. O erro "ORA-20000: Mounting NFS fails" será retornado se o nome do host especificado no local não puder ser localizado.

  • O Oracle Cloud Infrastructure File Storage usa NFSv3 para compartilhar

  • Se você anexar a sistemas que não são do Oracle Cloud Infrastructure File Storage, o procedimento suportará NFSv3 e NFSv4

  • Se você tiver um servidor NFS anexado que use NFSv3 e a versão do NFS for atualizada para NFSv4 no servidor NFS, execute DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM e, em seguida, DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (usando o parâmetro params com nfs_version definido como 4). Isso anexa NFS ao protocolo de correspondência para que o Autonomous Database possa acessar o Servidor NFSv4. Sem desanexar e depois reanexar, o servidor NFS ficará inacessível e você poderá ver um erro como: "Protocol not supported".

Procedimento CANCEL_WORKLOAD_CAPTURE

Este procedimento cancela qualquer captura de carga de trabalho em andamento no banco de dados.

Sintaxe

Este procedimento cancela a captura da carga de trabalho atual e ativa a atualização no clone atualizável.


DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE;

Exemplo

BEGIN
   DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE;
END;
/

Nota de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

CREATE_DATABASE_LINK Procedimento

Esse procedimento cria um link de banco de dados para um banco de dados de destino no esquema que chama a API.

Os formulários sobrecarregados suportam o seguinte:

  • Quando você usa o parâmetro gateway_params, isso permite criar um link de banco de dados com conectividade heterogênea gerenciada pela Oracle na qual o link é para um banco de dados não Oracle suportado.

  • Quando você usa o parâmetro rac_hostnames, isso permite criar um link de banco de dados de um Autonomous Database em um ponto final privado para um banco de dados Oracle RAC de destino. Nesse caso, você usa o parâmetro rac_hostnames para especificar os nomes de host de um ou mais nós individuais do banco de dados Oracle RAC de destino.

Sintaxe

DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
       db_link_name         IN VARCHAR2,
       hostname             IN VARCHAR2,
       port                 IN NUMBER,
       service_name         IN VARCHAR2,
       ssl_server_cert_dn   IN VARCHAR2 DEFAULT,
       credential_name      IN VARCHAR2 DEFAULT,
       directory_name       IN VARCHAR2 DEFAULT,
       gateway_link         IN BOOLEAN DEFAULT,
       public_link          IN BOOLEAN DEFAULT,
       private_target       IN BOOLEAN DEFAULT
       gateway_params       IN CLOB DEFAULT);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
       db_link_name         IN VARCHAR2,
       rac_hostnames        IN CLOB,
       port                 IN NUMBER,
       service_name         IN VARCHAR2,
       ssl_server_cert_dn   IN VARCHAR2 DEFAULT,
       credential_name      IN VARCHAR2 DEFAULT,
       directory_name       IN VARCHAR2 DEFAULT,
       gateway_link         IN BOOLEAN DEFAULT,
       public_link          IN BOOLEAN DEFAULT,
       private_target       IN BOOLEAN DEFAULT);

Parâmetros

Parâmetro Descrição

db_link_name

o nome do link de banco de dados a ser criado.

hostname

O nome do host do banco de dados de destino.

Especificar localhost para hostname como não é permitido.

Quando você especificar uma conexão com conectividade heterogênea gerenciada pela Oracle fornecendo o parâmetro gateway_params, observe o seguinte:

  • Quando o valor db_type for google_bigquery, hostname não será usado e você poderá fornecer um valor como example.com.

  • Quando o valor db_type é snowflake, hostname é o identificador da conta do Snowflake. Para localizar seu identificador da conta do Snowflake, consulte Formatos de Identificador de Conta por Plataforma e Região da Nuvem.

Use esse parâmetro ou rac_hostnames, não use ambos.

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

rac_hostnames

Especifica nomes de host para o banco de dados Oracle RAC de destino. O valor é um array JSON que especifica um ou mais nomes de host individuais para os nós do banco de dados Oracle RAC de destino. Vários nomes de host podem ser especificados em JSON, separados por um ",". Por exemplo:

'["sales1-svr1.domain", "sales1-svr2.domain",
      "sales1-svr3.domain"]'

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, IP do SCAN ou nome de host do 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 Oracle RAC de destino, o Autonomous Database tentará estabelecer conexão automaticamente usando outro nome de host da lista.

Use esse parâmetro ou hostname, não use ambos.

Não é permitido especificar localhost para um valor rac_hostname.

port

Especifica a porta das conexões com o banco de dados de destino.

Quando você especificar uma conexão com conectividade heterogênea gerenciada pela Oracle usando o parâmetro gateway_params, defina a porta com base no valor db_type:

  • awsredshift: use a porta 5439
  • azure: use a porta 1433
  • db2: use a porta 2500 para Db2 versões >= 11.5.6
  • db2: use a porta 5000 para Db2 versões <= 11.5.5
  • google_analytics: use a porta 443
  • google_bigquery: use a porta 443
  • google_drive: use a porta 443
  • hive: use a porta 433
  • mongodb: use a porta 27017
  • mysql: use a porta 3306
  • mysql_community: use a porta 3306
  • postgres: use a porta 5432
  • salesforce: use a porta 19937
  • servicenow: use a porta 443
  • sharepoint: use a porta 443
  • snowflake: use a porta 443
  • youtube: use a porta 443

Consulte Tipos e Portas de Banco de Dados de Conectividade Heterogênica Gerenciada pela Oracle para obter mais informações.

service_name

O service_name com o qual estabelecer um link. Para um Autonomous Database de destino, localize o nome do serviço por um dos seguintes métodos:

  • Procure no arquivo tnsnames.ora no wallet.zip que você baixa de um Autonomous Database para sua conexão.

  • Clique em Conexão do banco de dados na Console do Oracle Cloud Infrastructure. Na área Strings de Conexão, cada string de conexão inclui uma entrada service_name com a string de conexão do serviço correspondente. Quando conexões TLS Mútua (mTLS) e TLS forem permitidas, em autenticação TLS, selecione TLS para exibir os nomes TNS e as strings de conexão para conexões com autenticação TLS. Consulte Exibir Nomes de TNS e Strings de Conexão de uma Instância do Autonomous Database para obter mais informações.

  • Consulte a view V$SERVICES. Por exemplo:

    SELECT name FROM V$SERVICES;

Quando você especifica uma conexão com uma conectividade heterogênea gerenciada pela Oracle usando o parâmetro gateway_params, service_name é o nome do banco de dados não Oracle.

ssl_server_cert_dn

O valor DN encontrado no certificado do servidor.

A conectividade heterogênea gerenciada pela Oracle é pré-configurada com uma wallet que contém a maioria dos certificados SSL comuns de raiz confiável e intermediários. O ssl_server_cert_dn deve ser NULL quando você fornecer o parâmetro gateway_params ou não incluir o parâmetro ssl_server_cert_dn (o valor padrão é NULL).

Link de Ponto Final Público para um Destino do Autonomous Database sem uma Wallet:

Para estabelecer conexão com um destino do Autonomous Database em um ponto final público sem uma wallet (TLS):

  • O parâmetro directory_name deve ser NULL.
  • O parâmetro ssl_server_cert_dn deve ser NULL ou não incluir esse parâmetro (o valor padrão é NULL).

Link de Ponto Final Privado sem uma Wallet:

Para estabelecer conexão com um Oracle Database em um ponto final privado sem uma wallet:

  • O banco de dados de destino deve estar em um ponto final privado.
  • O parâmetro directory_name deve ser NULL.
  • O parâmetro ssl_server_cert_dn deve ser NULL ou não incluir esse parâmetro (o padrão é NULL).
  • O parâmetro private_target deve ser TRUE.
credential_name

O nome de uma credencial armazenada criada com DBMS_CLOUD.CREATE_CREDENTIAL. Essa é as credenciais para acessar o banco de dados de destino.

directory_name

O diretório do arquivo cwallet.sso. O valor padrão desse parâmetro é 'data_pump_dir'.

A conectividade heterogênea gerenciada pela Oracle é pré-configurada com uma wallet que contém a maioria dos certificados SSL comuns de raiz confiável e intermediários. O parâmetro directory_name não é obrigatório quando você fornece o parâmetro gateway_params.

Link de Ponto Final Público para um Destino do Autonomous Database sem uma Wallet:

Para estabelecer conexão com um Autonomous Database em um ponto final público sem uma wallet (TLS):

  • O parâmetro directory_name deve ser NULL.
  • O parâmetro ssl_server_cert_dn deve ser NULL ou não incluir esse parâmetro (o valor padrão é NULL).

Além disso, para estabelecer conexão com um Autonomous Database com TCP, o parâmetro ssl_server_cert_dn deve ser NULL ou não incluir esse parâmetro (o valor padrão é NULL).

Link de Ponto Final Privado sem uma Wallet:

Para estabelecer conexão com um Oracle Database de destino em um ponto final privado sem uma wallet:

  • O banco de dados de destino deve estar em um ponto final privado.
  • O parâmetro directory_name deve ser NULL.
  • O parâmetro ssl_server_cert_dn deve ser NULL ou não incluir esse parâmetro (o valor padrão é NULL).
  • O parâmetro private_target deve ser TRUE.
gateway_link

Indica se o link de banco de dados foi criado para outro Oracle Database ou para um Oracle Database Gateway.

Se gateway_link for definido como FALSE, isso especificará um link de banco de dados para outro Autonomous Database ou para outro Oracle Database.

Se gateway_link for definido como TRUE, isso especificará um link de banco de dados para um sistema não Oracle. Isso cria um descritor de conexão na definição de link de banco de dados que especifica (HS=OK).

Quando gateway_link é definido como TRUE e gateway_params é NULL, isso especifica um link de banco de dados para um gateway Oracle gerenciado pelo cliente.

O valor padrão desse parâmetro é FALSE.

public_link

Indica se o link de banco de dados é criado como link público.

Para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK com esse parâmetro definido como TRUE, o usuário que chama o procedimento deve ter o privilégio EXECUTE na credencial associada ao link de banco de dados público e deve ter o privilégio de sistema CREATE PUBLIC DATABASE LINK. O privilégio EXECUTE na credencial pode ser concedido pelo usuário ADMIN ou pelo proprietário da credencial.

O valor padrão desse parâmetro é FALSE.

private_target

Quando um link de banco de dados acessar um nome de host que precisa ser resolvido em um servidor DNS da VCN, especifique o parâmetro private_target com o valor TRUE.

Quando private_target é TRUE, o parâmetro hostname deve ser um único nome de host (em um ponto final privado, o uso de um endereço IP, um IP SCAN ou um nome de host SCAN não é suportado).

O valor padrão desse parâmetro é FALSE.

gateway_params

db_type Esse parâmetro especifica o tipo de banco de dados de destino para conectividade heterogênea gerenciada pela Oracle para conexão com bancos de dados não Oracle. O valor db_type é:

  • awsredshift
  • azure

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for azure.

  • db2
  • google_analytics
  • google_bigquery

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for google_bigquery.

  • google_drive

    * Consulte as Notas de Uso para obter gateway_params com suporte adicional quando db_type for google_drive.

  • hive

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for hive.

  • mongodb
  • mysql
  • postgres
  • salesforce

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for salesforce.

  • servicenow

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for servicenow.

  • sharepoint

    * Consulte Observações de Uso para obter suporte adicional gateway_params quando db_type for sharepoint.

  • snowflake

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for snowflake.

  • youtube

    * Consulte Notas de Uso para obter gateway_params adicional suportado quando db_type for youtube.

  • NULL

    Quando gateway_params é NULL e gateway_link é definido como TRUE, isso especifica um link de banco de dados para um gateway Oracle gerenciado pelo cliente.

Especifique o parâmetro com o formato json_object.

Por exemplo:

gateway_params => json_object('db_type' value 'awsredshift')

Consulte Tipos e Portas de Banco de Dados de Conectividade Heterogênica Gerenciada pela Oracle para obter os valores obrigatórios de port para cada tipo de banco de dados.

Quando gateway_params for NULL e private_target for TRUE, se directory_name for NULL, um link de banco de dados baseado em TCP será criado.

Quando gateway_params for NULL e private_target for TRUE, se directory_name for NULL, um link de banco de dados baseado em TCPS será criado.

enable_ssl:

Para um banco de dados em um ponto final privado, o parâmetro gateway_params suporta o parâmetro enable_ssl opcional. Defina esse parâmetro como true para oferecer suporte a conexões SSL/TLS para um banco de dados de destino remoto em um ponto final privado. Por padrão, enable_ssl é false.

Por exemplo:

gateway_params => JSON_OBJECT(
     'db_type' value 'snowflake',
     'enable_ssl' value true)

Observações de Uso

  • Quando você especifica o parâmetro gateway_params, para alguns valores db_type, parâmetros gateway_params adicionais são suportados:

    db_type Valores gateway_params Adicionais
    azure

    Quando o valor db_type é azure, há dois parâmetros opcionais, auth_method e domain para suportar a autenticação NTLM/AD.

    Quando NTLMv2 estiver configurado, defina auth_method=10 e domain como o valor de domínio do Windows.

    Para usar uma senha do Azure Active Directory, defina auth_method=13. Não use auth_method=13 para acessar um Banco de Dados local da Oracle.

    Consulte Método de Autenticação do Microsoft SQL Server para obter mais informações.

    google_analytics

    Quando db_type for google_analytics, a credencial especificada deverá ser uma credencial OAuth do Google (gcp_oauth2). Consulte CREATE_CREDENTIAL Procedures para obter mais informações.

    google_bigquery

    Quando db_type for google_bigquery, a credencial especificada deverá ser uma credencial OAuth do Google (gcp_oauth2) Consulte Procedimento CREATE_CREDENTIAL para obter mais informações.

    Quando db_type é google_bigquery, o parâmetro project é válido. Esse parâmetro especifica o nome do projeto para google_bigquery e é obrigatório.

    O nome da tabela especificado quando você usa SELECT com o Google BigQuery deve estar entre aspas. Por exemplo:

    SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
    google_drive

    Para db_type google_drive, a credencial fornecida com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve ser um tipo de credencial OAuth usando o parâmetro params com valores de gcp_oauth2 especificados (client_id, client_secret e refresh_token).

    Para se conectar ao Google Drive e obter dados, você deve fornecer os parâmetros de gateway directory_name e file_name. Esses parâmetros especificam um arquivo de modelo (arquivo REST automático) que mapeia a resposta JSON para o modelo relacional. O arquivo de modelo especifica os pontos finais, o mapeamento de tabela e o código de resposta HTTP para processar a resposta JSON. Consulte Sintaxe de arquivo de modelo e Arquivo de modelo de exemplo para obter mais informações.

    Ao usar o parâmetro gateway_params com db_type google_drive, você deve fornecer o parâmetro gateway_params db_type com o valor 'google_drive' e os parâmetros directory_name e file_name, juntamente com as credenciais do tipo OAuth:

    O parâmetro directory_name especifica o diretório com o arquivo de configuração REST. Você poderia criar esse diretório da seguinte forma:

    create or replace directory google_drive_dir as 'GOOGLE_DRIVE_DIR';

    Obtenha e faça download do arquivo REST automático para o diretório especificado. Por exemplo:

    exec DBMS_CLOUD.get_object('google_drive_dir_cred',
         'https://objectstorage.<...>/google_drive.rest','GOOGLE_DRIVE_DIR');

    Defina o valor file_name como o nome do arquivo REST automático que você baixou, "google_drive.rest". Em seguida, você pode usar o arquivo de configuração REST com o OAuth 2.0.

    hive

    Quando db_type é hive, o parâmetro http_path é válido. Esse parâmetro especifica o valor HttpPath, se necessário, para estabelecer conexão com a instância do Hive.

    salesforce

    Quando db_type é salesforce, o parâmetro: security_token é válido. Um token de segurança é um código alfanumérico que faz distinção entre maiúsculas e minúsculas. É necessário fornecer um valor security_token para acessar o Salesforce. Por exemplo:

    gateway_params => JSON_OBJECT(
         'db_type' value 'salesforce',
         'security_token' value 'security_token_value' )

    Consulte Redefinir Seu Token de Segurança para obter mais informações.

    servicenow

    Para estabelecer conexão com ServiceNow e obter dados, forneça os parâmetros de gateway directory_name e file_name. Esses parâmetros especificam um arquivo de modelo (arquivo de configuração REST) que mapeia a resposta JSON para o modelo relacional. O arquivo de modelo especifica os pontos finais, o mapeamento de tabela e o código de resposta HTTP para processar a resposta JSON. Consulte Sintaxe de arquivo de modelo e Arquivo de modelo de exemplo para obter mais informações.

    Quando você usa o parâmetro gateway_params com db_type servicenow, há duas opções suportadas:

    • Autenticação Básica: você deve fornecer o parâmetro gateway_params db_type com o valor 'servicenow' e fornecer os parâmetros directory_name e file_name juntamente com as credenciais do tipo de nome de usuário/senha.

    • Autenticação OAuth 2.0: você deve fornecer o parâmetro gateway_params db_type com o valor 'servicenow' e os parâmetros directory_name, file_name e token_uri, juntamente com as credenciais do tipo OAuth.

    O parâmetro directory_name especifica o diretório com o arquivo de configuração REST ServiceNow. Você poderia criar esse diretório da seguinte forma:

    create or replace directory servicenow_dir as 'SERVICENOW_DIR';

    Obtenha e faça download do arquivo de configuração REST ServiceNow para o diretório especificado. Por exemplo:

    exec DBMS_CLOUD.get_object('servicenow_dir_cred',
         'https://objectstorage.<...>/servicenow.rest','SERVICENOW_DIR');

    Defina o valor file_name como o nome do arquivo de configuração REST que você baixou, "servicenow.rest".

    Em seguida, você pode usar o arquivo de configuração REST ServiceNow com autenticação básica ou OAuth2.0.

    Em seguida, você pode usar o arquivo de configuração REST ServiceNow com autenticação básica ou OAuth2.0. Consulte HETEROGENEOUS_CONNECTIVITY_INFO View para obter amostras.

    sharepoint

    Quando você usa o parâmetro gateway_params com db_type sharepoint, especifique também valores para auth_uri, scope, service_url e token_uri.

    Para db_type sharepoint, a credencial fornecida com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve ser do tipo OAuth usando o parâmetro params com os valores gcp_oauth2 especificados (client_id, client_secret e refresh_token). Consulte Procedimento CREATE_CREDENTIAL para obter mais informações. Gere o refresh_token para tenant_id.sharepoint.com/.default offline_access. Consulte o seguinte para obter mais informações: Determinar o escopo e autenticação OAuth 2.0.

    Defina valores para gateway_params para db_type sharepoint:

    snowflake

    Quando db_type é SNOWFLAKE, os parâmetros opcionais: role, schema e warehouse são válidos. Esses valores especificam um esquema, atribuição ou valor de depósito diferente do padrão. Por exemplo:

    gateway_params => JSON_OBJECT(
         'db_type' value 'snowflake',
         'role' value 'ADMIN',
         'schema' value 'PUBLIC',
         'warehouse' value 'TEST' )
    youtube

    Para estabelecer conexão com o Youtube e obter dados, forneça os parâmetros de gateway directory_name e file_name. Esses parâmetros especificam um arquivo de modelo (arquivo de configuração REST) que mapeia a resposta JSON para o modelo relacional. O arquivo de modelo especifica os pontos finais, o mapeamento de tabela e o código de resposta HTTP para processar a resposta JSON. Consulte Sintaxe de arquivo de modelo e Arquivo de modelo de exemplo para obter mais informações.

    Quando você usa o parâmetro gateway_params com db_type youtube, a credencial especificada deve ser uma credencial OAuth do Google (gcp_oauth2). Consulte Procedimento CREATE_CREDENTIAL para obter mais informações.

    Autenticação OAuth 2.0: você deve fornecer o parâmetro gateway_params db_type com o valor youtube e os parâmetros directory_name e file_name, juntamente com as credenciais do tipo OAuth.

    O parâmetro directory_name especifica o diretório com o arquivo de configuração REST ServiceNow. Você poderia criar esse diretório da seguinte forma:

    create or replace directory youtube_dir as 'YOUTUBE_DIR';

    Obtenha e faça download do arquivo de configuração REST ServiceNow para o diretório especificado. Por exemplo:

    exec DBMS_CLOUD.get_object('youtube_dir_cred',
         'https://objectstorage.<...>/youtube.rest','YOUTUBE_DIR');

    Defina o valor file_name como o nome do arquivo de configuração REST que você baixou, "youtube.rest".

    Em seguida, você pode usar o arquivo de configuração REST ServiceNow com o OAuth2.0. Consulte HETEROGENEOUS_CONNECTIVITY_INFO View para obter amostras.

  • Para executar DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK com um usuário diferente de ADMIN, conceda privilégios EXECUTE e CREATE DATABASE LINK a esse usuário. Por exemplo, execute o seguinte comando como ADMIN para conceder privilégios a adb_user:

    GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO adb_user;
    GRANT CREATE DATABASE LINK TO adb_user;

    Além disso, quando você cria um Link de Banco de Dados em um esquema diferente do esquema ADMIN, por exemplo, em um esquema chamado adb_user, o esquema adb_user deve possuir a credencial que você usa com DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  • Somente um arquivo de wallet é válido por diretório especificado com o parâmetro directory_name. Você só pode fazer upload de um cwallet.sso de cada vez para o diretório escolhido para arquivos de wallet. Isso significa que, com um cwallet.sso em um diretório, 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, crie diretórios adicionais e coloque cada cwallet.sso em um diretório diferente.

    Consulte Criar Diretório no Autonomous Database para obter informações sobre a criação de diretórios.

  • Para criar um link de banco de dados para um Autonomous Database, defina GLOBAL_NAMES como FALSE no banco de dados de origem (não Autonomous Database).

    SQL> ALTER SYSTEM SET GLOBAL_NAMES = FALSE;
     
    System altered.
    
    SQL> SHOW PARAMETER GLOBAL_NAMES
    NAME                     TYPE        VALUE
    ----------------------   ----------- -----------
    global_names             boolean     FALSE
    
  • Quando o parâmetro private_target é TRUE, o parâmetro hostname especifica um host privado na VCN.

Exemplos

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
     credential_name => 'DB_LINK_CRED',
     username => 'adb_user',
     password => 'password');
  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');
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'AWS_REDSHIFT_LINK_CRED',
    username => 'NICK',
    password => 'password'
  );
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'AWSREDSHIFT_LINK', 
          hostname => 'example.com', 
          port => '5439',
          service_name => 'example_service_name',
          ssl_server_cert_dn => NULL,
          credential_name => 'AWS_REDSHIFT_LINK_CRED',
          gateway_params => JSON_OBJECT('db_type'  value 'awsredshift'));
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'PRIVATE_ENDPOINT_CRED',
    username => 'db_user',
    password => 'password'
  );
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'PRIVATE_ENDPOINT_DB_LINK', 
          hostname => 'exampleHostname', 
          port => '1521',
          service_name => 'exampleServiceName',
          credential_name => 'PRIVATE_ENDPOINT_CRED',
          ssl_server_cert_dn => NULL,
          directory_name => NULL,
          private_target => TRUE);
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'GOOGLE_BIGQUERY_CRED',
    params => JSON_OBJECT( 'gcp_oauth2' value JSON_OBJECT(
          'client_id' value 'client_id',
          'client_secret' value 'client_secret', 
          'refresh_token' value 'refresh_token' )));

DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'GOOGLE_BIGQUERY_LINK', 
          hostname => 'example.com', 
          port => '443',
          service_name => 'example_service_name',
          credential_name => 'GOOGLE_BIGQUERY_CRED',
          gateway_params => JSON_OBJECT(
                     'db_type' value 'google_bigquery',
                     'project' value 'project_name1' ));
END;
/

O nome da tabela especificado quando você usa SELECT com o Google BigQuery ou o Google Analytics deve estar entre aspas. Por exemplo:

SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK

Use o parâmetro rac_hostnames com um banco de dados Oracle RAC de destino em um ponto final privado.

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
     credential_name => 'DB_LINK_CRED1',
     username => 'adb_user',
     password => 'password');
      DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
     db_link_name => 'SALESLINK', 
     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 => 'CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
     credential_name => 'DB_LINK_CRED1',
     directory_name => 'EXAMPLE_WALLET_DIR',
     private_target => TRUE);
END;
/

DETACH_FILE_SYSTEM Procedimento

Este procedimento desanexa um sistema de arquivos do banco de dados.

O procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM desanexa um sistema de arquivos do banco de dados. Além disso, o procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM também remove as informações sobre o sistema de arquivos da view DBA_CLOUD_FILE_SYSTEMS.

Sintaxe

DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM(
    file_system_name         IN VARCHAR2
);

Parâmetros

Parâmetro Descrição

file_system_name

Especifica o nome do sistema de arquivos.

Este parâmetro é obrigatório.

Por exemplo:

BEGIN
   DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
    file_system_name      => 'FSS'                                       
  );                                                                          
END;                                                                          
/     

Observações de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Você deve ter o privilégio WRITE no objeto de diretório no banco de dados para desanexar um sistema de arquivos de um diretório usando o procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM.

  • O procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM só pode desanexar um Serviço de Armazenamento de Arquivos privado em bancos de dados com Pontos Finais Privados ativados.

    Consulte OCI File Storage Service e Configurar Acesso à Rede com Pontos Finais Privados para obter mais informações.

  • O procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM procura o nome do host do Sistema de Arquivos de Rede na rede virtual na nuvem (VCN) do cliente. O erro "ORA-20000: Mounting NFS fails" será retornado se o nome do host especificado no local não puder ser localizado.

DISABLE_APP_CONT Procedimento

Este procedimento desativa a continuidade do aplicativo de banco de dados para a sessão associada ao nome de serviço especificado no Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_APP_CONT(
    service_name      IN VARCHAR2);

Parâmetros

Parâmetro Descrição

service_name

O service_name para o serviço do Autonomous Database.

Para encontrar nomes de serviço:

  • Procure no arquivo tnsnames.ora no wallet.zip que você baixa de um Autonomous Database para sua conexão.

  • Clique em Conexão do banco de dados na Console do Oracle Cloud Infrastructure. Na área strings de conexão, cada string de conexão inclui uma entrada service_name que contém a string de conexão do serviço correspondente. Quando conexões TLS Mútua (mTLS) e TLS forem permitidas, em autenticação TLS, selecione TLS para exibir os nomes TNS e as strings de conexão para conexões com autenticação TLS. Consulte Exibir Nomes de TNS e Strings de Conexão de uma Instância do Autonomous Database para obter mais informações.

  • Consulte a view V$SERVICES. Por exemplo:

    SELECT name FROM V$SERVICES;

Observações de Uso

Consulte Visão Geral do continuidade de aplicativos para obter mais informações sobre continuidade de aplicativos.

Exemplo

BEGIN
    DBMS_CLOUD_ADMIN.DISABLE_APP_CONT(
        service_name => 'nv123abc1_adb1_high.adb.oraclecloud.com' );
END;
/

Verifique o valor da seguinte forma:

SELECT name, failover_type FROM DBA_SERVICES;

NAME                                                    FAILOVER_TYPE
------------------------------------------------------- --------------
nv123abc1_adb1_high.adb.oraclecloud.com      

Procedimento DISABLE_EXTERNAL_AUTHENTICATION

Desativa a autenticação do usuário com esquemas de autenticação externos para o banco de dados.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;

Exceções

Exceção Erro Descrição
invalid_ext_auth ORA-20004

Consulte a mensagem de acompanhamento para obter uma explicação detalhada.

Exemplo

BEGIN 
   DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/

PL/SQL procedure successfully completed.

Procedimento DISABLE_FEATURE

Este procedimento desativa o recurso especificado na instância do Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name    IN  VARCHAR2);

Parâmetros

Parâmetro Descrição

feature_name

Especifica o tipo de recurso a ser desativado. Os valores suportados são:

  • 'AUTO_DST_UPGRADE': Desativar o recurso AUTO DST.

  • 'AUTO_DST_UPGRADE_EXCL_DATA': Desative o recurso AUTO DST EXCL DATA.

  • 'ORAMTS': Desative o recurso OraMTS.

  • 'OWM': Desativar o Oracle Workspace Manager.

  • 'WORKLOAD_AUTO_REPLAY': Desativa o recurso de repetição automática da carga de trabalho.

Este parâmetro é obrigatório.

Exemplos

BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'ORAMTS');   
END;
/
BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'AUTO_DST_UPGRADE');   
END;
/
BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'AUTO_DST_UPGRADE_EXCL_DATA');   
END;
/
BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'OWM');   
END;
/
BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'WORKLOAD_AUTO_REPLAY');   
END;
/

Observações de Uso

  • Para desativar os recursos OraMTS, AUTO_DST_UPGRADE, AUTO_DST_UPGRADE_EXCL_DATA, OWM ou WORKLOAD_AUTO_REPLAY da sua instância do Autonomous Database, faça log-in como usuário ADMIN ou tenha o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Quando AUTO_DST_UPGRADE e AUTO_DST_UPGRADE_EXCL_DATA estão desativados, se novas versões de fuso horário estiverem disponíveis, a instância do Autonomous Database não fará upgrade para usar os arquivos de fuso horário disponíveis mais recentes.

  • Consulte dba_cloud_config para verificar se AUTO_DST_UPGRADE está desativado.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    0 rows selected.
  • Consulte dba_cloud_config para verificar se AUTO_DST_UPGRADE_EXCL_DATA está desativado.
    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade_excl_data';
    
    0 rows selected.  

Procedimento DISABLE_OPERATOR_ACCESS

Esse procedimento revoga imediatamente o acesso do Cloud Operator na instância do Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_OPERATOR_ACCESS;

Exemplo

BEGIN 
    DBMS_CLOUD_ADMIN.DISABLE_OPERATOR_ACCESS;   
END;
/

Procedimento DISABLE_PRINCIPAL_AUTH

Este procedimento chama a autenticação baseada no controlador de um provedor especificado no Autonomous Database e se aplica ao usuário ADMIN ou ao usuário especificado.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_PRINCIPAL_AUTH(
       provider    IN VARCHAR2,
       username    IN VARCHAR2 DEFAULT 'ADMIN' );

Parâmetros

Parâmetro Descrição

provider

Especifica o tipo de provedor.

Valores válidos:

  • AWS
  • AZURE
  • GCP
  • OCI

username

Especifica o usuário cuja autenticação baseada no controlador será desativada.

Um valor nulo é válido para username. Se username não for especificado, o procedimento se aplicará ao usuário "ADMIN".

Observações de Uso

  • Quando o valor do provedor é AZURE e o username é ADMIN, o procedimento desativa a autenticação baseada no controlador do serviço do Azure no Autonomous Database e exclui o aplicativo Azure na instância do Autonomous Database.

  • Quando o valor do provedor é AZURE e username é um usuário diferente de ADMIN, o procedimento chama os privilégios do usuário especificado. O usuário ADMIN e outros usuários com permissão para usar o controlador de serviços do Azure podem continuar usando ADMIN.AZURE$PA e o aplicativo criado para a instância do Autonomous Database permanece na instância.

Exemplos

BEGIN 
     DBMS_CLOUD_ADMIN.DISABLE_PRINCIPAL_AUTH(
       provider => 'AZURE',
       username => 'SCOTT');
END;
/
BEGIN 
     DBMS_CLOUD_ADMIN.DISABLE_PRINCIPAL_AUTH(
       provider => 'GCP');
END;
/

Procedimento DISABLE_RESOURCE_PRINCIPAL

Desative a credencial do controlador de recursos para o banco de dados ou para o esquema especificado.

Sintaxe

DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL(
   username         IN VARCHAR2);

Parâmetro

Parâmetro Descrição

username

Especifica um nome de usuário opcional. O nome do esquema de banco de dados para remover o acesso do controlador de recursos.

Se você não fornecer um username, o username será definido como ADMIN e o comando removerá a credencial OCI$RESOURCE_PRINCIPAL.

Exceções

Exceção Erro Descrição
resource principal is already disabled ORA-20031

Se você tentar desativar o controlador de recursos quando ele já estiver desativado.

Observações de Uso

  • O controlador de recursos não está disponível com clones atualizáveis.

  • Configure um grupo dinâmico e políticas para o grupo dinâmico antes de chamar DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

    Consulte os seguintes tópicos para obter mais informações sobre como criar políticas, criar um grupo dinâmico e criar regras:

  • Verifique se uma credencial do controlador de recursos está ativada consultando uma das views: DBA_CREDENTIALS ou ALL_TAB_PRIVS.

    Por exemplo, à medida que o usuário ADMIN consulta a view DBA_CREDENTIALS:

    SELECT owner, credential_name FROM dba_credentials 
            WHERE credential_name = 'OCI$RESOURCE_PRINCIPAL' AND owner = 'ADMIN'; 
    
    OWNER  CREDENTIAL_NAME
    -----  ----------------------
    ADMIN  OCI$RESOURCE_PRINCIPAL 
    

    Por exemplo, como consulta de usuário não ADMIN, a view ALL_TAB_PRIVS:

    SELECT grantee, table_name, grantor, FROM ALL_TAB_PRIVS 
              WHERE  grantee = 'ADB_USER';
    
    GRANTEE   TABLE_NAME GRANTOR
    --------- -------------------------------------
    ADB_USER  OCI$RESOURCE_PRINCIPAL ADMIN

Exemplo

EXEC DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL();

PL/SQL procedure successfully completed. 

SQL> select owner, credential_name from dba_credentials where credential_name = 'OCI$RESOURCE_PRINCIPAL'; 

No rows selected.

DROP_DATABASE_LINK Procedimento

Esse procedimento elimina um link de banco de dados.

Sintaxe

DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name      IN VARCHAR2,
        public_link       IN BOOLEAN DEFAULT);

Parâmetros

Parâmetro Descrição

db_link_name

o nome do link de banco de dados a ser eliminado.

public_link

Para executar DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK com public_link definido como TRUE, você deve ter o privilégio de sistema DROP PUBLIC DATABASE LINK.

O valor padrão desse parâmetro é FALSE.

Exemplos

BEGIN
    DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name => 'SALESLINK' );
END;
/
BEGIN
    DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name => 'SALESLINK' 
        public_link => TRUE );
END;
/

Observações de Uso

Depois que terminar de usar um link de banco de dados e executar DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK, para garantir a segurança do seu banco de dados Oracle, remova todos os arquivos de wallet armazenados. Por exemplo:

  • Remova o arquivo da wallet no Armazenamento de Objetos.

  • Use DBMS_CLOUD.DELETE_FILE para remover o arquivo de wallet do diretório data_pump_dir ou do diretório definido pelo usuário no qual o upload do arquivo de wallet foi feito.

ENABLE_APP_CONT Procedimento

Este procedimento ativa a continuidade do aplicativo de banco de dados para a sessão associada ao nome de serviço especificado no Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_APP_CONT(
    service_name      IN VARCHAR2);

Parâmetros

Parâmetro Descrição

service_name

O service_name para o serviço do Autonomous Database.

Para encontrar nomes de serviço:

  • Procure no arquivo tnsnames.ora no wallet.zip que você baixa de um Autonomous Database para sua conexão.

  • Clique em Conexão do banco de dados na Console do Oracle Cloud Infrastructure. Na área strings de conexão, cada string de conexão inclui uma entrada service_name que contém a string de conexão do serviço correspondente. Quando conexões TLS Mútua (mTLS) e TLS forem permitidas, em autenticação TLS, selecione TLS para exibir os nomes TNS e as strings de conexão para conexões com autenticação TLS. Consulte Exibir Nomes de TNS e Strings de Conexão de uma Instância do Autonomous Database para obter mais informações.

  • Consulte a view V$SERVICES. Por exemplo:

    SELECT name FROM V$SERVICES;

Observações de Uso

Consulte Visão Geral do continuidade de aplicativos para obter mais informações sobre continuidade de aplicativos.

Exemplo

BEGIN
    DBMS_CLOUD_ADMIN.ENABLE_APP_CONT(
        service_name => 'nvthp2ht_adb1_high.adb.oraclecloud.com'
    );
END;
/

Verifique o valor da seguinte forma:

SELECT name, failover_type FROM DBA_SERVICES;

NAME                                                    FAILOVER_TYPE
------------------------------------------------------- -------------
nvthp2ht_adb1_high.adb.oraclecloud.com                 TRANSACTION

ENABLE_AWS_ARN Procedimento

Este procedimento permite que uma instância do Autonomous Database use ARNs (Amazon Resource Names) para acessar recursos da AWS.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_AWS_ARN(
       username     IN VARCHAR2 DEFAULT NULL,
       grant_option IN BOOLEAN DEFAULT FALSE);

Parâmetros

Parâmetro Descrição

username

Nome do usuário que terá permissão para usar ARNs (Amazon Resource Names).

Um valor nulo é válido para username. Se username não for especificado, o procedimento se aplicará ao usuário "ADMIN".

grant_option

Quando username é fornecido, se grant_option for TRUE, o username especificado poderá permitir que outros usuários utilizem nomes de recursos da Amazon.

Exemplo

BEGIN
    DBMS_CLOUD_ADMIN.ENABLE_AWS_ARN(
        username => 'adb_user'); 
END;
/

Nota de Uso

  • Você deve ser o usuário ADMIN para executar o procedimento DBMS_CLOUD_ADMIN.ENABLE_AWS_ARN.

Consulte Usar ARNs (Amazon Resource Names) para Acessar Recursos da AWS para obter mais informações.

ENABLE_EXTERNAL_AUTHENTICATION Procedimento

Permite que os usuários façam log-in no banco de dados com esquemas de autenticação externa.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
   type         IN VARCHAR2,
   force        IN BOOLEAN DEFAULT FALSE,
   params       IN CLOB DEFAULT NULL
);

Parâmetro

Parâmetro Descrição

type

Especifica o tipo de autenticação externa. Valores válidos: ou .

  • 'OCI_IAM'
  • 'AZURE_AD'
  • 'CMU'
  • 'KERBEROS'

force

(Opcional) Substitua um esquema de autenticação externa ativado no momento. Os valores válidos são TRUE ou FALSE.

O valor padrão é FALSE.

params

Uma string JSON que fornece parâmetros adicionais para a autenticação externa.

Parâmetros CMU:

  • location_uri: especifica o URI de armazenamento na nuvem do bucket no qual os arquivos necessários para a CMU são armazenados.

    Se você especificar location_uri, haverá um objeto de diretório de nome fixo CMU_WALLET_DIR criado no banco de dados no caminho 'cmu_wallet' para salvar os arquivos de configuração de CMU. Nesse caso, você não precisa fornecer o parâmetro directory_name.

  • credential_name: especifica as credenciais usadas para fazer download dos arquivos de configuração de CMU do Armazenamento de Objetos para o objeto de diretório.

    O valor padrão é NULL, que permite fornecer um URL Público, Pré-autenticado ou pré-inscrito para bucket ou subpasta de Armazenamento de Objetos.

  • directory_name: especifica o nome do diretório no qual os arquivos de configuração necessários para CMU são armazenados. Se directory_name for informado, copie os arquivos de configuração de CMU dsi.ora e cwallet.sso para esse objeto de diretório.

Parâmetros KERBEROS:

  • location_uri: especifica o URI de armazenamento na nuvem do bucket no qual os arquivos necessários para o Kerberos são armazenados.

    Se você especificar location_uri, haverá um objeto de diretório de nome fixo KERBEROS_DIR criado no banco de dados para salvar os arquivos de configuração do Kerberos. Nesse caso, você não precisa fornecer o parâmetro directory_name.

  • credential_name: especifica a credencial usada para fazer download de arquivos de configuração do Kerberos do local do Armazenamento de Objetos para o objeto de diretório.

    O valor padrão é NULL, que permite fornecer um URL Público, Pré-autenticado ou pré-inscrito para bucket ou subpasta de Armazenamento de Objetos.

  • directory_name: especifica o nome do diretório no qual os arquivos necessários para o Kerberos são armazenados. Se directory_name for fornecido, copie os arquivos de configuração do Kerberos para este objeto de diretório.
  • kerberos_service_name: especifica um nome a ser usado como o nome do serviço Kerberos. Esse parâmetro é opcional.

    Valor padrão: Quando não especificado, o valor kerberos_service_name é definido como GUID da instância do Autonomous Database.

Parâmetros AZURE_AD:

  • tenant_id: ID do Tenant da Conta do Azure. O Id do Tenant especifica o registro do aplicativo Azure AD da instância do Autonomous Database.
  • application_id: ID do Aplicativo Azure criado no Azure AD para designar mapeamentos de atribuições/esquema para autenticação externa na instância do Autonomous Database.
  • application_id_uri: URI exclusivo designado ao Aplicativo Azure.

    Esse é o identificador da instância do Autonomous Database. O nome deve ser qualificado por domínio (isso suporta acesso a recursos entre tenancies).

    O tamanho máximo desse parâmetro é de 256 caracteres.

Exceções

Exceção Erro Descrição
invalid_ext_auth ORA-20004

Consulte a mensagem de acompanhamento para obter uma explicação detalhada.

Observações de Uso

  • Com type OCI_IAM, se o controlador de recursos não estiver ativado na instância do Autonomous Database, essa rotina o ativará com DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

  • Este procedimento define os parâmetros de sistema IDENTITY_PROVIDER_TYPE e IDENTITY_PROVIDER_CONFIG como obrigatórios para que os usuários acessem a instância com autenticação e autorização do Oracle Cloud Infrastructure Identity and Access Management.

Exemplos

Ativar Autenticação OCI_IAM

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'OCI_IAM',
     force=> TRUE );
END;
/

PL/SQL procedure successfully completed.

Ativar Autenticação CMU para o Microsoft Active Directory

Você informa um nome de diretório que contém os arquivos de configuração de CMU por meio do argumento JSON params.

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'CMU',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'CMU_DIR'); // CMU_DIR directory object already exists
END;
/

PL/SQL procedure successfully completed.

Você informa um URI de localização apontando para um local de Armazenamento de Objetos que contém arquivos de configuração de CMU por meio do argumento JSON params.

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
       type     => 'CMU',
       params   => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
                               'credential_name' value 'my_credential_name')
   );
END;
/

PL/SQL procedure successfully completed.

Ativar Autenticação do Azure AD

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'AZURE_AD',
     force => TRUE,
     params   => JSON_OBJECT( 'tenant_id' VALUE '....',
                              'application_id' VALUE '...',
                              'application_id_uri' VALUE '.....' ));
END;
/

PL/SQL procedure successfully completed.

Ativar Autenticação do Kerberos

Você informa um nome de diretório que contém arquivos de configuração do Kerberos por meio do argumento JSON params.

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR'); // KERBEROS_DIR directory object already exists
END;
/

PL/SQL procedure successfully completed.

Você informa um URI de localização apontando para um local de Armazenamento de Objetos que contém arquivos de configuração do Kerberos por meio do argumento JSON params:

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
                           'credential_name' value 'my_credential_name');
END;
/

Você informa um nome de serviço com o kerberos_service_name no argumento JSON params:

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR', // KERBEROS_DIR directory object already exists
                           'kerberos_service_name' value 'oracle' ));
END;
/

Depois que o Kerberos for ativado na sua instância do Autonomous Database, use a seguinte consulta para exibir o nome do serviço Kerberos:

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

ENABLE_FEATURE Procedimento

Este procedimento ativa o recurso especificado na instância do Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
    feature_name     IN VARCHAR2,
    params           IN  CLOB   DEFAULT NULL);

Parâmetros

Parâmetro Descrição

feature_name

Nome do recurso a ser ativado. Os valores suportados são:

  • 'AUTO_DST_UPGRADE': Ativar o recurso AUTO DST.

  • 'AUTO_DST_UPGRADE_EXCL_DATA': Ativa o recurso AUTO DST EXCL DATA.

  • 'JAVAVM': Ative o recurso JAVAVM.

  • 'OLAP': Ative o recurso OLAP. O OLAP exige que o Java esteja ativado. Quando você ativa o OLAP, o Java é ativado automaticamente junto com o recurso OLAP.

  • 'ORAMTS': Ative o recurso OraMTS.

  • 'OWM': Ativar o Oracle Workspace Manager.

  • 'WORKLOAD_AUTO_REPLAY': Ative o recurso de repetição automática da carga de trabalho.

Este parâmetro é obrigatório.

params

Uma string JSON que fornece parâmetros adicionais para alguns recursos.

Para o recurso OraMTS, o parâmetro params é:
  • location_uri: o location_uri aceita um valor string. O valor especifica o URL HTTPS para o servidor OraMTS em uma rede do cliente.

Para o recurso WORKLOAD_AUTO_REPLAY, os parâmetros params são:

  • target_db_ocid: Um valor string. O valor especifica o OCID de um banco de dados clone atualizável de destino no qual a carga de trabalho capturada é reproduzida. O clone atualizável deve ter o nível de patch Antecipado definido.

    Este parâmetro é obrigatório.

  • capture_duration: Um valor number. O valor especifica a duração em minutos para a qual a carga de trabalho é capturada no banco de dados de produção. O valor deve estar no intervalo entre 1 e 720 minutos.

    Este parâmetro é obrigatório.

  • capture_day: Um valor string. O valor especifica o dia da semana em que a captura da carga de trabalho no banco de dados de produção deve começar.

    Esse parâmetro é opcional.

  • capture_time: Um valor no formato HH24:MM. O valor especifica a hora do dia em que a captura da carga de trabalho no banco de dados de produção deve começar.

    Esse parâmetro é opcional.

Por padrão, a captura da carga de trabalho é iniciada quando você ativa WORKLOAD_AUTO_REPLAY. Se os capture_day e capture_time opcionais forem especificados, a captura e a repetição ocorrerão no timestamp especificado. Por exemplo, se capture_day for segunda-feira e capture_time for 15:00, a primeira captura acontecerá às 3PM na próxima segunda-feira. O dia da semana e a hora também são usados para programar a repetição posterior no clone atualizável.

Exemplo para Ativar o Recurso JAVAVM:

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE (
        feature_name => 'JAVAVM' );
END;
/

Exemplo para ativar recurso de horário de verão automático:

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE (
        feature_name => 'AUTO_DST_UPGRADE' );
END;
/

Exemplo para Ativar o Recurso de Dados Auto DST EXCL:

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE (
        feature_name => 'AUTO_DST_UPGRADE_EXCL_DATA' );
END;
/

Exemplo para Ativar o Recurso OraMTS:

BEGIN 
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
        feature_name => 'ORAMTS',   
        params       => JSON_OBJECT('location_uri' VALUE 'https://mymtsserver.mycorp.com')
   );
END;
/

Exemplo para Ativar o Recurso OWM:

BEGIN 
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
        feature_name => 'OWM' );
END;
/

Exemplo para Ativar Recurso de Repetição Automática da Carga de Trabalho

BEGIN 
   DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
        feature_name => 'WORKLOAD_AUTO_REPLAY',
        params       => JSON_OBJECT('target_db_ocid' VALUE 'OCID1.autonomousdatabase.REGION..ID1', 'capture_duration' VALUE 120, 'capture_day' VALUE 'MONDAY', 'capture_time' VALUE '15:00'));
END;
/

Um valor de erro ORA-20000: Invalid argument for target_db_ocid pode indicar que o OCID fornecido não é um clone atualizável. Nesse caso, você precisa fornecer um OCID com um valor para um clone atualizável.

Observações de Uso

  • Você deve fazer log-in como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN para executar DBMS_CLOUD_ADMIN.ENABLE_FEATURE.

  • Depois de executar DBMS_CLOUD_ADMIN.ENABLE_FEATURE com o valor 'JAVAVM' de feature_name, reinicie a instância do Autonomous Database para instalar o Oracle Java.

    Depois que você reiniciar a instância do Autonomous Database, a instalação do Java continuará por algum tempo após a abertura do banco de dados.

    Consulte Verificar a Versão do Oracle Java para obter detalhes sobre como verificar o status da instalação do Java.

  • Depois de executar DBMS_CLOUD_ADMIN.ENABLE_FEATURE com o valor 'OWM' feature_name, reinicie a instância do Autonomous Database para ativar o Oracle Workspace Manager. da Oracle.

  • Para ativar os recursos AUTO_DST_UPGRADE, AUTO_DST_UPGRADE_EXCL_DATA, ORAMTS, JAVAVM, OWM ou WORKLOAD_AUTO_REPLAY para seu banco de dados, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Por padrão, AUTO_DST_UPGRADE e AUTO_DST_UPGRADE_EXCL_DATA ficam desativados. Você pode ativar uma ou outra dessas opções, mas não ambas.

  • Depois de ativar AUTO_DST_UPGRADE, na próxima vez que você reiniciar ou interromper e, em seguida, iniciar a instância do Autonomous Database, a instância será atualizada para usar os arquivos de fuso horário disponíveis mais recentes. Depois que AUTO_DST_UPGRADE for ativado, quando novos arquivos de fuso horário estiverem disponíveis, a instância continuará fazendo upgrade para a versão disponível mais recente em cada reinicialização subsequente ou interrupção e inicialização, até que o recurso seja desativado.

    Consulte dba_cloud_config para verificar se AUTO_DST_UPGRADE está ativado.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    PARAM_NAME       PARAM_VALUE
    ---------------- -------------- 
    auto_dst_upgrade enabled
  • Depois de ativar AUTO_DST_UPGRADE_EXCL_DATA, a instância do Autonomous Database fará upgrade para usar os arquivos de fuso horário disponíveis mais recentes. Depois que esse recurso é ativado, cada janela de manutenção subsequente atualiza a instância para usar a versão de fuso horário disponível mais recente. Esse recurso garante que os arquivos de fuso horário sejam atualizados para o banco de dados (a ativação de AUTO_DST_UPGRADE_EXCL_DATA não atualiza nenhuma linha afetada).

    Consulte dba_cloud_config para verificar se AUTO_DST_UPGRADE_EXCL_DATA está ativado.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade_excl_data';
    
    PARAM_NAME                    PARAM_VALUE
    --------------------------    -----------
    auto_dst_upgrade_excl_data    enabled

Procedimento ENABLE_OPERATOR_ACCESS

O Oracle Cloud Operations não acessa sua instância do Autonomous Database e o acesso não é permitido por padrão. Quando o acesso for necessário para solucionar ou mitigar um problema, você poderá permitir que um operador de nuvem acesse os esquemas de banco de dados por um tempo limitado.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS(
    auth_duration    IN  NUMBER  DEFAULT 1
);

Parâmetros

Parâmetro Descrição

auth_duration

Especifica o número de Horas para as quais o Cloud Operator recebe acesso.

Valores válidos: devem ser números inteiros no intervalo de 1 a 24.

Valor padrão: 1

Exemplo

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS(
       auth_duration => 12 );
END;
/

Observações de Uso

  • ORA-20000: Operator access is already enabled indica que o acesso do operador já foi concedido. Neste caso, existem duas opções:

    • Aguarde a expiração do acesso do operador e, em seguida, conceda o acesso do operador novamente com DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS

    • Desative explicitamente o acesso do operador com o Procedimento DISABLE_OPERATOR_ACCESS.
  • DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS permite acesso somente ao Cloud Operator e não permite acesso para nenhum outro usuário. Todas as operações executadas pelo Operador da Nuvem são armazenadas na view DBA_OPERATOR_ACCESS. Consulte Exibir Ações de Operações do Oracle Cloud Infrastructure para obter mais informações.

  • Você permite que um operador de nuvem acesse os esquemas do banco de dados executando o procedimento DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS. Isso significa que, se você arquivar uma solicitação de serviço com o Suporte do Oracle Cloud e os Operadores do Oracle Cloud precisarem acessar seus esquemas de banco de dados, você também deverá ativar o acesso do operador executandoDBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS.

ENABLE_PRINCIPAL_AUTH Procedimento

Este procedimento ativa a autenticação do controlador no Autonomous Database para o provedor especificado e se aplica ao usuário ADMIN ou ao usuário especificado.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH(
       provider    IN VARCHAR2,
       username    IN VARCHAR2 DEFAULT 'ADMIN',
       params      IN CLOB DEFAULT NULL);

Parâmetros

Parâmetro Descrição

provider

Especifica o tipo de provedor.

Valores válidos:

  • AWS: Ativar o uso de Amazon Resource Names (ARNs)
  • AZURE: Ativar o uso do Controlador de Serviços do Azure
  • GCP: Ativar o uso da Conta do Google Service
  • OCI: Ativar o uso do Controlador de Recursos

username

Nome do usuário que tem o uso da autenticação do controlador ativado.

Um valor nulo é válido para username. Se username não for especificado, o procedimento se aplicará ao usuário "ADMIN".

params

Especifica os parâmetros de configuração.

Quando o parâmetro provider é AWS, GCP ou OCI, params não é obrigatório. O valor padrão é NULL.

grant_option: Este parâmetro é válido para todos os provedores e é um valor booliano TRUE ou FALSE. O padrão é FALSE.

Quando TRUE e username são especificados, o usuário especificado pode usar ENABLE_PRINCIPAL_AUTH para ativar outros usuários.

Quando o parâmetro provider é AWS, estas opções também são válidas:

Quando o parâmetro provider é AZURE, essa opção também é válida:

  • azure_tenantid: com o valor do ID do tenant do Azure.

Observações de Uso

  • Quando o parâmetro provider é AZURE, o parâmetro params deve incluir o azure_tenantid nos seguintes casos:

    • Quando DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH é chamado pela primeira vez.

    • Quando DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH é chamado pela primeira vez depois que DBMS_CLOUD_ADMIN.DISABLE_PRINCIPAL_AUTH é chamado com o parâmetro provider AZURE e o username ADMIN.

  • Quando o parâmetro provider é AWS:

    • Depois que você ativa o ARN na instância do Autonomous Database executando DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH, a credencial chamada AWS$ARN está disponível para uso com qualquer API DBMS_CLOUD que use uma credencial como entrada.

Exemplos

BEGIN 
     DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH(
       provider => 'AZURE',
       username => 'SCOTT',
       params   => JSON_OBJECT('azure_tenantid' value 'azure_tenantid'));
END;
/
BEGIN
     DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH( 
     provider => 'GCP',
     username => 'SCOTT',
     params => JSON_OBJECT(
         'grant_option' value 'TRUE' ));
END;
/
BEGIN
     DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH( 
     provider => 'AWS',
     username => 'SCOTT',
     params => JSON_OBJECT(
         'aws_role_arn' value 'arn:aws:iam::123456:role/AWS_ROLE_ARN',
          'external_id_type' value 'TENANT_OCID'));
END;
/

ENABLE_RESOURCE_PRINCIPAL Procedimento

Ative a credencial do controlador de recursos para o banco de dados ou para o esquema especificado. Este procedimento cria a credencial OCI$RESOURCE_PRINCIPAL.

Sintaxe

DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(
   username         IN VARCHAR2,
   grant_option     IN BOOLEAN DEFAULT FALSE);

Parâmetro

Parâmetro Descrição

username

Especifica um nome de usuário opcional. O nome do esquema do banco de dados ao qual o acesso do controlador de recursos será concedido.

Se você não fornecer um username, o username será definido como ADMIN.

grant_option

Quando username é fornecido, se grant_option for TRUE, o username especificado poderá ativar o uso do controlador de recursos para outros usuários.

Exceções

Exceção Erro Descrição
resource principal is already enabled ORA-20031

Se você tentar ativar o controlador de recursos quando ele já estiver ativado.

Observações de Uso

  • Chame DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL com o ADMIN username ou sem argumentos antes de chamar DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL com um username para um esquema de usuário de banco de dados.

  • Configure um grupo dinâmico e políticas para o grupo dinâmico antes de chamar DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

    Consulte os seguintes tópicos para obter mais informações sobre políticas, criação de um grupo dinâmico e criação de regras:

  • A ativação do controlador de recursos com DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL é uma operação única. Não é necessário ativar o controlador de recursos novamente, a menos que você execute DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL para desativar o controlador de recursos.

  • O controlador de recursos não está disponível com clones atualizáveis.

Exemplo

EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL();

PL/SQL procedure successfully completed. 

SQL> select owner, credential_name from dba_credentials where credential_name = 'OCI$RESOURCE_PRINCIPAL'; 

OWNER    CREDENTIAL_NAME
-------  ---------------
ADMIN    OCI$RESOURCE_PRINCIPAL

Procedimento FINISH_WORKLOAD_CAPTURE

Este procedimento finaliza a captura de carga de trabalho atual, interrompe todas as solicitações de captura de carga de trabalho subsequentes para o banco de dados e faz upload dos arquivos de captura para o Object Storage.

Exemplo

BEGIN
    DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
END;
/

Observações de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Quando você passa o parâmetro duration para START_WORKLOAD_CAPTURE, a captura termina quando atinge o tempo especificado. No entanto, se você chamar FINISH_WORKLOAD_CAPTURE, isso interromperá a captura da carga de trabalho (possivelmente antes do tempo especificado com o parâmetro de duração).

    Você pode consultar a exibição DBA_CAPTURE_REPLAY_STATUS para verificar o status da carga de trabalho final. Consulte DBA_CAPTURE_REPLAY_STATUS View para obter mais informações.

Observação

Você deve se inscrever no evento Informações com.oraclecloud.databaseservice.autonomous.database.information para ser notificado sobre a conclusão de FINISH_WORKLOAD_CAPTURE, bem como o link do Object Storage para fazer download do arquivo de captura. Este URL de PAR está contido no campo captureDownloadURL do evento e é válido por 7 dias a partir da data de geração. Consulte Eventos de Informações no Autonomous Database para obter mais informações.

Procedimento PREPARE_REPLAY

O procedimento PREPARE_REPLAY prepara o clone atualizável para uma repetição.

Parâmetros

Parâmetro Descrição
capture_name Especifica o nome da captura da carga de trabalho.

Este parâmetro é obrigatório.

Sintaxe

DBMS_CLOUD_ADMIN.PREPARE_REPLAY(
        capture_name IN VARCHAR2);

Exemplo

BEGIN
    DBMS_CLOUD_ADMIN.PREPARE_REPLAY
      capture_name => 'cap_test1');
END;
/

Este exemplo prepara o clone atualizável para reproduzir a carga de trabalho indicada pelo parâmetro capture_name, que envolve atualizá-lo para o horário inicial da captura e, em seguida, desconectá-lo.

Nota de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

Procedimento PURGE_FLASHBACK_ARCHIVE

Esse procedimento permite que os usuários ADMIN expurguem dados históricos do Flashback Data Archive. Você pode expurgar todos os dados históricos do Flashback Data Archive flashback_archive ou dados seletivos com base em timestamps ou no Número de Alteração do Sistema.

Sintaxe

DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE( 
   scope      IN VARCHAR2, 
   before_scn IN INTEGER DEFAULT NULL, 
   before_ts  IN TIMESTAMP DEFAULT NULL); 
Parâmetro Descrição
scope Isso especifica o escopo para remover dados do arquivo de dados de flashback.
  • all implica PURGE ALL;before_scn e before_timestamp devem ser NULL.

  • scn implica que PURGE BEFORE SCN;before_scn deve ser não NULL e before_timestamp deve ser NULL.

  • TIMESTAMP implica PURGE BEFORE timestamp;before_scn deve ser NULL e before_timestamp deve ser não NULL.

before_scn Isso especifica o número de alteração do sistema antes do qual todos os dados são removidos do arquivo de flashback.
before_timestamp Isso especifica o timestamp antes do qual todos os dados são removidos do arquivo de flashback.

Exemplo

BEGIN
	DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE(
           scope => 'ALL'); // Purge all historical data from Flashback Data Archive flashback_archive
END;
/

REPLAY_WORKLOAD Procedimento

Este procedimento inicia uma repetição de carga de trabalho na instância do Autonomous Database. O formulário sobrecarregado permite reproduzir os arquivos de captura de uma instância do Autonomous Database, banco de dados local ou outros bancos de dados de serviço de nuvem.

Sintaxe


DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
        capture_name                  IN VARCHAR2,        
        replay_name                   IN VARCHAR2 DEFAULT NULL,
        capture_source_tenancy_ocid   IN VARCHAR2 DEFAULT NULL,
        capture_source_db_name        IN VARCHAR2 DEFAULT NULL);

DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
        location_uri      IN VARCHAR2,               
        credential_name   IN VARCHAR2 DEFAULT NULL,
        synchronization   IN BOOLEAN  DEFAULT TRUE,
        process_capture   IN BOOLEAN  DEFAULT TRUE);

Parâmetros

Parâmetro Descrição
CAPTURE_NAME Especifica o nome da captura da carga de trabalho.

Este parâmetro é obrigatório.

REPLAY_NAME Especifica o nome de repetição.

Se você não fornecer um valor REPLAY_NAME, o REPLAY_NAME será gerado automaticamente com o formato REPLAY_RANDOMNUMBER, por exemplo, REPLAY_1678329506.

CAPTURE_SOURCE_TENANCY_OCID Especifica o OCID da tenancy de origem da captura de carga de trabalho.

Se você não fornecer um valor CAPTURE_SOURCE_TENANCY_OCID, CAPTURE_SOURCE_TENANCY_OCID será definido como NULL.

Este parâmetro só é obrigatório ao executar a captura da carga de trabalho em um clone completo.

CAPTURE_SOURCE_DB_NAME Especifica o nome do banco de dados de origem da captura de carga de trabalho

Se você não fornecer um valor CAPTURE_SOURCE_DB_NAME, CAPTURE_SOURCE_DB_NAME será definido como NULL.

Este parâmetro só é obrigatório ao executar a captura da carga de trabalho em um clone completo.

LOCATION_URI Especifica o URI que aponta para um local de Armazenamento de Objetos que contém os arquivos capturados.

Este parâmetro é obrigatório.

CREDENTIAL_NAME Especifica a credencial para acessar o bucket de armazenamento de objetos.

Se você não fornecer um valor credential_name, as credenciais padrão do banco de dados serão usadas.

SYNCHRONIZATION Especifica o método de sincronização usado durante a reprodução da carga de trabalho.
  • TRUE especifica que a sincronização é baseada em SCN.

  • FALSE especifica que a sincronização é baseada em TIME.

Se você não fornecer um valor synchronization, synchronization será definido como TRUE.

PROCESS_CAPTURE Especifica se você precisa ou não especificar o valor process_capture. Ele só pode ser definido como FALSE quando você reproduz repetidamente a mesma carga de trabalho no banco de dados de destino.

Se você não fornecer um valor process_capture, process_capture será definido como TRUE.

Exemplo para reproduzir a carga de trabalho de um banco de dados local em uma instância do Autonomous Database:

BEGIN 
  DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
        location_uri    => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
        credential_name => 'CRED_TEST',
        synchronization => TRUE,
        process_capture => TRUE);    
END;
/

Quando você executa esse exemplo, ele:

  • Faz download dos arquivos de captura do local de Armazenamento de Objetos especificados em location_uri e processa os arquivos de captura com base no valor do parâmetro process_capture.

  • Reproduz a carga de trabalho capturada com base no valor do parâmetro synchronization.

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.

Consulte Navegar até o Oracle Cloud Infrastructure Object Storage e Criar um Bucket para obter mais informações sobre o serviço Object Storage.

Consulte Fazer Upload de Arquivos para o Bucket do Oracle Cloud Infrastructure Object Store para obter mais informações sobre o upload de arquivos para o Armazenamento de Objetos.

As credential_name que você usa nesta etapa são as credenciais do Armazenamento de Objetos.

Você não precisará criar uma credencial para acessar o Oracle Cloud Infrastructure Object Store se ativar credenciais do controlador de recursos. Consulte Usar o Controlador de Recursos para Acessar Recursos do Oracle Cloud Infrastructure para obter mais informações.

Exemplo para reproduzir a carga de trabalho de uma instância do Autonomous Database em outro Autonomous Database:

BEGIN 
  DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
        capture_name => 'CAP_TEST1');
END;
/

Quando você executa esse exemplo, ele:

  • Desconecta a instância atual do Autonomous Database.

  • Faz download dos arquivos de captura do Object Storage.

  • Repete a carga de trabalho capturada.

  • Carrega o relatório de repetição após uma repetição.

Observações de Uso para Repetir a Carga de Trabalho de um Banco de Dados Local ou Outro Cloud Service em outro Autonomous Database

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Antes de iniciar a reprodução, faça upload dos subdiretórios cap e capfiles, que contêm os arquivos de captura de carga de trabalho, para o local de armazenamento de objetos.

Observações de Uso para Repetir a Carga de Trabalho de uma instância do Autonomous Database em outro Autonomous Database

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Os arquivos de repetição são carregados automaticamente no Armazenamento de Objetos como um arquivo zip.

  • Você pode consultar a view DBA_CAPTURE_REPLAY_STATUS para verificar o status de repetição da carga de trabalho.

    Consulte DBA_CAPTURE_REPLAY_STATUS View para obter mais informações.

Observação

Você deve se inscrever no evento Informações com.oraclecloud.databaseservice.autonomous.database.information para ser notificado sobre o início e a conclusão do REPLAY_WORKLOAD, bem como o link do Object Storage para fazer download dos relatórios de repetição. Este URL de PAR está contido no campo replayDownloadURL do evento e é válido por 7 dias a partir da data de geração. Consulte Eventos de Informações no Autonomous Database para obter mais informações.

Procedimento SET_FLASHBACK_ARCHIVE_RETENTION

Esse procedimento permite que os usuários ADMIN modifiquem o período de retenção do Flashback Data Archive flashback_archive.

Sintaxe


DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION (
    retention_days INTEGER);
Parâmetro Descrição
retention_days Especifica o tempo em dias pelo qual os dados arquivados devem ser mantidos. O valor de retention_days deve ser maior que 0.

Exemplo

BEGIN
     DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION(
           retention_days => 90); // sets the retention time to 90 days
END;
/

Procedimento START_WORKLOAD_CAPTURE

Este procedimento inicia uma captura de carga de trabalho na instância do Autonomous Database.

Sintaxe

DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTURE(
        capture_name  IN VARCHAR2,
        duration      IN NUMBER   DEFAULT NULL);

Parâmetros

Parâmetro Descrição
capture_name Especifica o nome da captura da carga de trabalho.

Este parâmetro é obrigatório.

duration Especifica a duração em minutos para a qual você deseja executar a captura da carga de trabalho.
  • Se você não fornecer um valor duration, duration será definido como NULL.

  • Se definido como NULL, a carga de trabalho continuará até você executar o procedimento FINISH_WORKLOAD_CAPTURE.

Exemplo

BEGIN 
  DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTURE(
        capture_name => 'test');
END;
/

Observações de Uso

  • Para executar esse procedimento, você deve fazer log-in como o usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.

  • Para medir os impactos de uma alteração do sistema em uma carga de trabalho, é necessário garantir que os sistemas de captura e repetição estejam no mesmo estado lógico.

  • Antes de iniciar uma captura de carga de trabalho, considere provisionar um clone atualizável para garantir o mesmo ponto inicial para a repetição.

Observação

Você deve se inscrever no evento de Informações com.oraclecloud.databaseservice.autonomous.database.information para ser notificado no início de START_WORKLOAD_CAPTURE. Consulte Eventos de Informações no Autonomous Database para obter mais informações.