Riepilogo dei sottoprogrammi DBMS_CLOUD_ADMIN

In questa sezione vengono descritti i sottoprogrammi DBMS_CLOUD_ADMIN forniti con Autonomous Database.

Programma secondario descrizione;

ATTACH_FILE_SYSTEM Procedura

Questa procedura consente di allegare un file system in una directory del database.

CANCEL_WORKLOAD_CAPTURE Procedura

Questa procedura annulla l'acquisizione del carico di lavoro corrente.

CREATE_DATABASE_LINK Procedura

Questa procedura crea un database link a un database di destinazione. Esistono opzioni per creare un database link a un'altra istanza di Autonomous Database, a un'Oracle Database che non è un'Autonomous Database o a un'altra istanza non Oracle Database utilizzando la connettività eterogenea gestita da Oracle.

DETACH_FILE_SYSTEM Procedura

Questa procedura scollega un file system da una directory del database.

DISABLE_APP_CONT Procedura

Questa procedura disabilita la continuità dell'applicazione del database per la sessione associata al nome di servizio specificato in Autonomous Database.

DISABLE_EXTERNAL_AUTHENTICATION Procedura

Questa procedura disabilita l'autenticazione esterna per l'istanza di Autonomous Database.

DISABLE_OPERATOR_ACCESS Procedura

Revoca immediatamente l'accesso di Cloud Operator all'istanza del database Autonomous Database.

DISABLE_PRINCIPAL_AUTH Procedura

Questa procedura revoca l'autenticazione basata sul principal per il provider specificato e si applica all'utente ADMIN o all'utente specificato.

DISABLE_RESOURCE_PRINCIPAL Procedura

Questa procedura disabilita le credenziali del principal risorsa per il database o per lo schema specificato. Con un nome utente specificato, diverso da ADMIN, la procedura revoca l'accesso allo schema specificato alla credenziale del principal risorsa.

DROP_DATABASE_LINK Procedura

Questa procedura elimina un database link.

ENABLE_APP_CONT Procedura

Questa procedura abilita la continuità dell'applicazione del database per la sessione associata al nome di servizio specificato in Autonomous Database.

ENABLE_AWS_ARN Procedura

Questa procedura consente a un utente di creare le credenziali ARN AWS in Autonomous Database.

ENABLE_EXTERNAL_AUTHENTICATION Procedura

Questa procedura consente a un utente di collegarsi ad Autonomous Database utilizzando lo schema di autenticazione esterno specificato.

ENABLE_FEATURE Procedura

Questa procedura abilita la funzione specificata nell'istanza di Autonomous Database.

ENABLE_OPERATOR_ACCESS Procedura

Consente all'operatore cloud di accedere a un'istanza di Autonomous Database per un numero di ore specificato.

ENABLE_PRINCIPAL_AUTH Procedura

Questa procedura consente l'autenticazione del principal per il provider specificato e si applica all'utente ADMIN o all'utente specificato.

ENABLE_RESOURCE_PRINCIPAL Procedura

Questa procedura abilita la credenziale del principal risorsa e crea la credenziale OCI$RESOURCE_PRINCIPAL. Con un nome utente specificato, diverso da ADMIN, la procedura concede allo schema specificato l'accesso alla credenziale del principal risorsa.

FINISH_WORKLOAD_CAPTURE Procedura

Questa procedura arresta l'acquisizione del carico di lavoro e carica i file di acquisizione nello storage degli oggetti.

PREPARE_REPLAY Procedura

Questa procedura prepara la ripetizione per la copia aggiornabile.

PURGE_FLASHBACK_ARCHIVE Procedura Questa procedura rimuove i dati cronologici dall'archivio dati Flashback.

REPLAY_WORKLOAD Procedura

Questa procedura è sovraccaricata. Avvia la ripetizione del carico di lavoro.

SET_FLASHBACK_ARCHIVE_RETENTION Procedura

Questa procedura consente agli utenti ADMIN di modificare il periodo di conservazione per Flashback Time Travel flashback_archive.

START_WORKLOAD_CAPTURE Procedura

Questa procedura avvia un'acquisizione del carico di lavoro.

ATTACH_FILE_SYSTEM Procedura

Questa procedura allega un file system nel database.

La procedura DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM collega un file system nel database e memorizza le informazioni sul file system nella vista DBA_CLOUD_FILE_SYSTEMS.

Sintassi

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

Parametri

Parametro descrizione;

file_system_name

Specifica il nome del file system.

Questo parametro è obbligatorio.

file_system_location

Specifica la posizione del file system.

Il valore fornito con file_system_location è costituito da un nome dominio completamente qualificato (FQDN) e da un percorso file nel formato: FQDN:file_path.

Ad esempio:

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

    Per Oracle Cloud Infrastructure File Storage impostare il nome FQDN in Mostra opzioni avanzate quando si crea un file system. Per maggiori informazioni, vedere Creazione dei file system.

  • Percorso file: /results

Questo parametro è obbligatorio.

directory_name

Specifica la directory in cui si trova il file system allegato. La directory deve essere già stata creata.

Questo parametro è obbligatorio.

description

(Facoltativo) Fornisce la descrizione del task.

params

Stringa JSON che fornisce un parametro aggiuntivo per il file system.

  • nfs_version: specifica la versione NFS da utilizzare quando è collegato NFS (NFSv3 o NFSv4). Valori validi: 3, 4.

    Valore predefinito: 3

Esempi:

Collegare a un file system 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;
/     

Collegare a un file system 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;                                                        
/

Note per uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Per collegare un file system con DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM, è necessario disporre del privilegio WRITE sull'oggetto directory nel database.

  • La procedura DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM può solo collegare un servizio di storage di file privato nei database con endpoint privati abilitati.

    Per ulteriori informazioni, vedere OCI File Storage Service e Configure Network Access with Private Endpoints.

  • La procedura DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM esegue la ricerca del nome host del file system di rete nella rete cloud virtuale (VCN) del cliente. L'errore "ORA-20000: Mounting NFS fails" viene restituito se non è possibile individuare il nome host specificato nella posizione.

  • Oracle Cloud Infrastructure File Storage utilizza NFSv3 per condividere

  • Se ti colleghi a sistemi di storage di file non Oracle Cloud Infrastructure, la procedura supporta NFSv3 e NFSv4

  • Se si dispone di un server NFS collegato che utilizza NFSv3 e la versione NFS viene aggiornata a NFSv4 nel server NFS, è necessario eseguire DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM e quindi DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (utilizzando il parametro params con nfs_version impostato su 4). Ciò collega NFS con il protocollo corrispondente in modo che Autonomous Database possa accedere al server NFSv4. Senza scollegare e quindi ricollegare, il server NFS non sarà accessibile e potrebbe essere visualizzato un errore, ad esempio "Protocol not supported".

CANCEL_WORKLOAD_CAPTURE Procedura

Questa procedura annulla qualsiasi acquisizione del carico di lavoro in corso nel database.

Sintassi

Questa procedura annulla l'acquisizione del carico di lavoro corrente e abilita l'aggiornamento della copia aggiornabile.


DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE;

Esempio

BEGIN
   DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE;
END;
/

Nota per l'uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

CREATE_DATABASE_LINK Procedura

Questa procedura crea un database link a un database di destinazione nello schema che chiama l'API.

I moduli sovraccaricati supportano quanto segue:

  • Quando si utilizza il parametro gateway_params, è possibile creare un database link con connettività eterogenea gestita da Oracle in cui il collegamento è a un database non Oracle supportato.

  • Quando si utilizza il parametro rac_hostnames, questo consente di creare un database link da un Autonomous Database in un endpoint privato a un database Oracle RAC di destinazione. In questo caso, utilizzare il parametro rac_hostnames per specificare i nomi host di uno o più nodi singoli del database Oracle RAC di destinazione.

Sintassi

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

Parametri

Parametro descrizione;

db_link_name

Il nome del database link da creare.

hostname

Nome host per il database di destinazione.

Non è consentito specificare localhost per hostname.

Quando si specifica una connessione con una connettività eterogenea gestita da Oracle fornendo il parametro gateway_params, tenere presente quanto riportato di seguito.

  • Quando il valore db_type è google_bigquery, il valore hostname non viene utilizzato ed è possibile fornire un valore quale example.com.

  • Quando il valore db_type è snowflake, hostname è l'identificativo del conto Snowflake. Per trovare l'identificativo dell'account Snowflake, vedere Formati identificativi account per piattaforma cloud e area.

Utilizzare questo parametro o rac_hostnames, non utilizzare entrambi.

L'input DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve menzionare il nome di scansione dell'Autonomous Database dedicato di destinazione come parametro 'hostname'.

rac_hostnames

Specifica i nomi host per il database Oracle RAC di destinazione. Il valore è un array JSON che specifica uno o più singoli nomi host per i nodi del database Oracle RAC di destinazione. È possibile passare più nomi host in JSON, separati da un ",". Ad esempio:

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

Quando la destinazione è un database Oracle RAC, utilizzare il parametro rac_hostnames per specificare uno o più nomi host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Ciò consente di sfruttare le funzionalità ad alta disponibilità di Oracle RAC. L'uso di un indirizzo IP, di un IP SCAN o di un nome host SCAN nel valore rac_hostnames non è supportato.

Quando si specifica un elenco di nomi host nel parametro rac_hostnames, CREATE_DATABASE_LINK utilizza tutti i nomi host specificati come indirizzi nella stringa di connessione. Se uno degli host specificati non è disponibile nel database Oracle RAC di destinazione, Autonomous Database tenta automaticamente di connettersi utilizzando un altro nome host dalla lista.

Utilizzare questo parametro o hostname, non utilizzare entrambi.

Non è consentito specificare localhost per un valore rac_hostname.

port

Specifica la porta per le connessioni al database di destinazione.

Quando si specifica una connessione con la connettività eterogenea gestita da Oracle utilizzando il parametro gateway_params, impostare la porta in base al valore db_type:

  • awsredshift: utilizzare la porta 5439
  • azure: utilizzare la porta 1433
  • db2: utilizzare la porta 2500 per le versioni Db2 >= 11.5.6
  • db2: utilizzare la porta 5000 per Db2 versioni <= 11.5.5
  • google_analytics: utilizzare la porta 443
  • google_bigquery: utilizzare la porta 443
  • google_drive: utilizzare la porta 443
  • hive: utilizzare la porta 433
  • mongodb: utilizzare la porta 27017
  • mysql: utilizzare la porta 3306
  • mysql_community: utilizzare la porta 3306
  • postgres: utilizzare la porta 5432
  • salesforce: utilizzare la porta 19937
  • servicenow: utilizzare la porta 443
  • sharepoint: utilizzare la porta 443
  • snowflake: utilizzare la porta 443
  • youtube: utilizzare la porta 443

Per ulteriori informazioni, vedere Tipi e porte di database di connettività eterogenea gestiti da Oracle.

service_name

service_name per il database a cui collegarsi. Per un Autonomous Database di destinazione, trovare il nome del servizio in base a uno dei metodi riportati di seguito.

  • Cercare il file tnsnames.ora nel file wallet.zip scaricato da un Autonomous Database per la connessione.

  • Fare clic sulla connessione al database nella console di Oracle Cloud Infrastructure. Nell'area Stringhe di connessione, ogni stringa di connessione include una voce service_name con la stringa di connessione per il servizio corrispondente. Quando sono consentite entrambe le connessioni Mutual TLS (mTLS) e TLS, in Autenticazione TLS selezionare TLS per visualizzare i nomi TNS e le stringhe di connessione per le connessioni con autenticazione TLS. Per ulteriori informazioni, vedere Visualizzare i nomi TNS e le stringhe di connessione per un'istanza di Autonomous Database.

  • Query sulla vista V$SERVICES. Ad esempio:

    SELECT name FROM V$SERVICES;

Quando si specifica una connessione con la connettività eterogenea gestita da Oracle utilizzando il parametro gateway_params, service_name è il nome del database non Oracle.

ssl_server_cert_dn

Il valore DN trovato nel certificato del server.

La connettività eterogenea gestita da Oracle è preconfigurata con un wallet che contiene la maggior parte dei certificati SSL sicuri comuni e intermedi. Il valore ssl_server_cert_dn deve essere NULL quando si fornisce il parametro gateway_params o non si include il parametro ssl_server_cert_dn (il valore predefinito è NULL).

Collegamento dell'endpoint pubblico a una destinazione Autonomous Database senza un wallet:

Per connettersi a una destinazione Autonomous Database in un endpoint pubblico senza un wallet (TLS), effettuare le operazioni riportate di seguito.

  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Collegamento endpoint privato senza wallet:

Per connettersi a un Oracle Database su un endpoint privato senza un wallet, effettuare le operazioni riportate di seguito.

  • Il database di destinazione deve trovarsi in un endpoint privato.
  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (l'impostazione predefinita è NULL).
  • Il parametro private_target deve essere TRUE.
credential_name

Il nome di una credenziale memorizzata creata con DBMS_CLOUD.CREATE_CREDENTIAL. Queste sono le credenziali per accedere al database di destinazione.

directory_name

La directory del file cwallet.sso. Il valore predefinito per questo parametro è 'data_pump_dir'.

La connettività eterogenea gestita da Oracle è preconfigurata con un wallet che contiene la maggior parte dei certificati SSL sicuri comuni e intermedi. Il parametro directory_name non è obbligatorio quando si fornisce il parametro gateway_params.

Collegamento dell'endpoint pubblico a una destinazione Autonomous Database senza un wallet:

Per connettersi a un Autonomous Database su un endpoint pubblico senza un wallet (TLS):

  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Inoltre, per connettersi ad Autonomous Database con TCP, il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Collegamento endpoint privato senza wallet:

Per connettersi a un Oracle Database di destinazione su un endpoint privato senza un wallet, effettuare le operazioni riportate di seguito.

  • Il database di destinazione deve trovarsi in un endpoint privato.
  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).
  • Il parametro private_target deve essere TRUE.
gateway_link

Indica se il database link viene creato in un altro Oracle Database o in un Oracle Database Gateway.

Se gateway_link è impostato su FALSE, specifica un database link a un altro Autonomous Database o a un altro Oracle Database.

Se gateway_link è impostato su TRUE, questa opzione specifica un database link per un sistema non Oracle. Viene creato un descrittore di connessione nella definizione del database link che specifica (HS=OK).

Quando gateway_link è impostato su TRUE e gateway_params è NULL, specifica un database link a un gateway Oracle gestito dal cliente.

Il valore predefinito di questo parametro è FALSE.

public_link

Indica se il database link viene creato come database link pubblico.

Per eseguire DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK con questo parametro impostato su TRUE, l'utente che richiama la procedura deve disporre del privilegio EXECUTE sulla credenziale associata al database link pubblico e deve disporre del privilegio di sistema CREATE PUBLIC DATABASE LINK. Il privilegio EXECUTE sulla credenziale può essere concesso dall'utente ADMIN o dal proprietario della credenziale.

Il valore predefinito di questo parametro è FALSE.

private_target

Quando un database link accede a un nome host che deve essere risolto in un server DNS della VCN, specificare il parametro private_target con valore TRUE.

Quando private_target è TRUE, il parametro hostname deve essere un singolo nome host (in un endpoint privato non è supportato l'uso di un indirizzo IP, un IP SCAN o un nome host SCAN).

Il valore predefinito di questo parametro è FALSE.

gateway_params

db_type Questo parametro specifica il tipo di database di destinazione per la connettività eterogenea gestita da Oracle per la connessione a database non Oracle. Il valore db_type può essere uno dei seguenti:

  • awsredshift
  • azure

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è azure.

  • db2
  • google_analytics
  • google_bigquery

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è google_bigquery.

  • google_drive

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è google_drive.

  • hive

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è hive.

  • mongodb
  • mysql
  • postgres
  • salesforce

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è salesforce.

  • servicenow

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è servicenow.

  • sharepoint

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è sharepoint.

  • snowflake

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è snowflake.

  • youtube

    * Per ulteriori informazioni sul supporto gateway_params, vedere Note sull'uso se db_type è youtube.

  • NULL

    Quando gateway_params è NULL e gateway_link è impostato su TRUE, specifica un database link a un gateway Oracle gestito dal cliente.

Specificare il parametro con il form json_object.

Ad esempio:

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

Vedere Tipi e porte di database di connettività eterogenea gestiti da Oracle per i valori port richiesti per ogni tipo di database.

Se gateway_params è NULL e private_target è TRUE, se directory_name è NULL, viene creato un database link basato su TCP.

Se gateway_params è NULL e private_target è TRUE, se directory_name è NULL, viene creato un database link basato su TCPS.

enable_ssl:

Per un database in un endpoint privato, il parametro gateway_params supporta il parametro facoltativo enable_ssl. Impostare questo parametro su true per supportare le connessioni SSL/TLS per un database di destinazione remoto in un endpoint privato. L'impostazione predefinita enable_ssl è false.

Ad esempio:

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

Note per uso

  • Quando si specifica il parametro gateway_params, per alcuni valori db_type sono supportati parametri gateway_params aggiuntivi:

    db_type Valori gateway_params aggiuntivi
    azure

    Quando il valore db_type è azure, sono disponibili due parametri facoltativi, auth_method e domain, per supportare l'autenticazione NTLM/AD.

    Quando NTLMv2 è configurato, impostare auth_method=10 e domain sul valore del dominio Windows.

    Per utilizzare una password di Azure Active Directory, impostare auth_method=13. Non utilizzare auth_method=13 per accedere a un database Oracle in locale.

    Per ulteriori informazioni, vedere Metodo di autenticazione di Microsoft SQL Server.

    google_analytics

    Quando db_type è google_analytics, la credenziale specificata deve essere una credenziale Google OAuth (gcp_oauth2). Per ulteriori informazioni, vedere CREATE_CREDENTIAL Procedure.

    google_bigquery

    Se db_type è google_bigquery, la credenziale specificata deve essere una credenziale Google OAuth (gcp_oauth2) Per ulteriori informazioni, vedere Procedura CREATE_CREDENTIAL).

    Se db_type è google_bigquery, il parametro project è valido. Questo parametro specifica il nome del progetto per google_bigquery ed è obbligatorio.

    Il nome della tabella specificato quando si utilizza SELECT con Google BigQuery deve essere racchiuso tra virgolette. Ad esempio:

    SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
    google_drive

    Per db_type google_drive, la credenziale fornita con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve essere una credenziale di tipo OAuth che utilizza il parametro params con i valori gcp_oauth2 specificati (client_id, client_secret e refresh_token).

    Per connettersi a Google Drive e ottenere i dati è necessario fornire i parametri del gateway directory_name e file_name. Questi parametri specificano un file modello (file REST automatico) che mappa la risposta JSON al modello relazionale. Il file modello specifica gli endpoint, il mapping delle tabelle e il codice di risposta HTTP per l'elaborazione della risposta JSON. Per ulteriori informazioni, vedere Sintassi dei file modello e File modello di esempio.

    Quando si utilizza il parametro gateway_params con db_type google_drive, è necessario fornire il parametro gateway_params db_type con il valore 'google_drive' e i parametri directory_name e file_name, insieme alle credenziali di tipo OAuth:

    Il parametro directory_name specifica la directory con il file di configurazione REST. È possibile creare questa directory come indicato di seguito.

    create or replace directory google_drive_dir as 'GOOGLE_DRIVE_DIR';

    Ottenere e scaricare il file REST automatico nella directory specificata. Ad esempio:

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

    Impostare il valore file_name sul nome del file REST automatico scaricato, "google_drive.rest". Quindi è possibile utilizzare il file di configurazione REST con OAuth 2.0.

    hive

    Se db_type è hive, il parametro http_path è valido. Questo parametro specifica il valore HttpPath, se necessario, per connettersi all'istanza Hive.

    salesforce

    Se db_type è salesforce, il parametro security_token è valido. Un token di sicurezza è un codice alfanumerico con distinzione tra maiuscole e minuscole. Per accedere a Salesforce è necessario specificare un valore security_token. Ad esempio:

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

    Per ulteriori informazioni, vedere Reimposta il token di sicurezza.

    servicenow

    Per connettersi a ServiceNow e ottenere i dati, è necessario fornire i parametri gateway directory_name e file_name. Questi parametri specificano un file modello (file di configurazione REST) che esegue il mapping della risposta JSON al modello relazionale. Il file modello specifica gli endpoint, il mapping delle tabelle e il codice di risposta HTTP per l'elaborazione della risposta JSON. Per ulteriori informazioni, vedere Sintassi dei file modello e File modello di esempio.

    Quando si utilizza il parametro gateway_params con db_type servicenow, sono supportate due opzioni:

    • Autenticazione di base: è necessario fornire il parametro gateway_params db_type con il valore 'servicenow' e fornire i parametri directory_name e file_name insieme alle credenziali di tipo nome utente/password.

    • OAuth 2.0 Autenticazione: è necessario fornire il parametro gateway_params db_type con il valore 'servicenow' e i parametri directory_name, file_name e token_uri, insieme alle credenziali di tipo OAuth.

    Il parametro directory_name specifica la directory con il file di configurazione REST ServiceNow. È possibile creare questa directory come indicato di seguito.

    create or replace directory servicenow_dir as 'SERVICENOW_DIR';

    Ottenere e scaricare il file di configurazione REST ServiceNow nella directory specificata. Ad esempio:

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

    Impostare il valore file_name sul nome del file di configurazione REST scaricato, "servicenow.rest".

    Successivamente, puoi utilizzare il file di configurazione REST ServiceNow con l'autenticazione di base o OAuth2.0.

    Successivamente, puoi utilizzare il file di configurazione REST ServiceNow con l'autenticazione di base o OAuth2.0. Per esempi, vedere HETEROGENEOUS_CONNECTIVITY_INFO Visualizza.

    sharepoint

    Quando si utilizza il parametro gateway_params con db_type sharepoint, specificare anche i valori per auth_uri, scope, service_url e token_uri.

    Per db_type sharepoint, la credenziale fornita con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve essere una credenziale di tipo OAuth utilizzando il parametro params con i valori gcp_oauth2 specificati (client_id, client_secret e refresh_token). Per ulteriori informazioni, vedere CREATE_CREDENTIAL Procedura. Generare il file refresh_token per tenant_id.sharepoint.com/.default offline_access. Per ulteriori informazioni, vedere: Determinare l'ambito e OAuth 2.0, autenticazione.

    Impostare i valori per gateway_params per db_type sharepoint:

    snowflake

    Se db_type è SNOWFLAKE, i parametri facoltativi: role, schema e warehouse sono validi. Questi valori specificano un valore di schema, ruolo o warehouse diverso da quello predefinito. Ad esempio:

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

    Per connettersi a Youtube e ottenere i dati è necessario fornire i parametri del gateway directory_name e file_name. Questi parametri specificano un file modello (file di configurazione REST) che esegue il mapping della risposta JSON al modello relazionale. Il file modello specifica gli endpoint, il mapping delle tabelle e il codice di risposta HTTP per l'elaborazione della risposta JSON. Per ulteriori informazioni, vedere Sintassi dei file modello e File modello di esempio.

    Quando si utilizza il parametro gateway_params con db_type youtube, la credenziale specificata deve essere una credenziale Google OAuth (gcp_oauth2). Per ulteriori informazioni, vedere Procedura CREATE_CREDENTIAL.

    Autenticazione OAuth 2.0: è necessario fornire il parametro gateway_params db_type con il valore youtube e i parametri directory_name e file_name, insieme alle credenziali di tipo OAuth.

    Il parametro directory_name specifica la directory con il file di configurazione REST ServiceNow. È possibile creare questa directory come indicato di seguito.

    create or replace directory youtube_dir as 'YOUTUBE_DIR';

    Ottenere e scaricare il file di configurazione REST ServiceNow nella directory specificata. Ad esempio:

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

    Impostare il valore file_name sul nome del file di configurazione REST scaricato, "youtube.rest".

    È quindi possibile utilizzare il file di configurazione REST ServiceNow con OAuth2.0. Per esempi, vedere HETEROGENEOUS_CONNECTIVITY_INFO Visualizza.

  • Per eseguire DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK con un utente diverso da ADMIN, è necessario concedere i privilegi EXECUTE e CREATE DATABASE LINK a tale utente. Ad esempio, eseguire il comando seguente come ADMIN per concedere i privilegi a adb_user:

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

    Inoltre, quando si crea un database link in uno schema diverso dallo schema ADMIN, ad esempio in uno schema denominato adb_user, lo schema adb_user deve essere proprietario della credenziale utilizzata con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

  • Per ogni directory specificata con il parametro directory_name è valido un solo file wallet. È possibile caricare un solo file cwallet.sso alla volta nella directory scelta per i file wallet. Ciò significa che con un cwallet.sso in una directory è possibile creare solo database link ai database per i quali il wallet in tale directory è valido. Per utilizzare più file cwallet.sso con database link, è necessario creare directory aggiuntive e inserire ogni file cwallet.sso in una directory diversa.

    Per informazioni sulla creazione di directory, vedere Crea directory in Autonomous Database.

  • Per creare un database link a un Autonomous Database, impostare GLOBAL_NAMES su FALSE nel database di origine (non Autonomous Database).

    SQL> ALTER SYSTEM SET GLOBAL_NAMES = FALSE;
     
    System altered.
    
    SQL> SHOW PARAMETER GLOBAL_NAMES
    NAME                     TYPE        VALUE
    ----------------------   ----------- -----------
    global_names             boolean     FALSE
    
  • Quando il parametro private_target è TRUE, il parametro hostname specifica un host privato all'interno della VCN.

Esempi

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

Il nome della tabella specificato quando si utilizza SELECT con Google BigQuery o Google Analytics deve essere tra virgolette. Ad esempio:

SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK

Utilizzare il parametro rac_hostnames con un database Oracle RAC di destinazione in un endpoint privato.

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 Procedura

Questa procedura scollega un file system dal database.

La procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM scollega un file system dal database. Oltre a ciò, la procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM rimuove anche le informazioni sul file system dalla vista DBA_CLOUD_FILE_SYSTEMS.

Sintassi

DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM(
    file_system_name         IN VARCHAR2
);

Parametri

Parametro descrizione;

file_system_name

Specifica il nome del file system.

Questo parametro è obbligatorio.

Ad esempio:

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

Note per uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Per scollegare un file system da una directory mediante la procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM, è necessario disporre del privilegio WRITE sull'oggetto directory nel database.

  • La procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM può scollegare un servizio di storage di file privato solo nei database con endpoint privati abilitati.

    Per ulteriori informazioni, vedere OCI File Storage Service e Configure Network Access with Private Endpoints.

  • La procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM esegue la ricerca del nome host del file system di rete nella rete cloud virtuale (VCN) del cliente. L'errore "ORA-20000: Mounting NFS fails" viene restituito se non è possibile individuare il nome host specificato nella posizione.

DISABLE_APP_CONT Procedura

Questa procedura disabilita la continuità dell'applicazione del database per la sessione associata al nome di servizio specificato in Autonomous Database.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_APP_CONT(
    service_name      IN VARCHAR2);

Parametri

Parametro descrizione;

service_name

service_name per il servizio Autonomous Database.

Per trovare i nomi dei servizi:

  • Cercare il file tnsnames.ora nel file wallet.zip scaricato da un Autonomous Database per la connessione.

  • Fare clic sulla connessione al database nella console di Oracle Cloud Infrastructure. Nell'area stringhe di connessione, ogni stringa di connessione include una voce service_name che contiene la stringa di connessione per il servizio corrispondente. Quando sono consentite entrambe le connessioni Mutual TLS (mTLS) e TLS, in Autenticazione TLS selezionare TLS per visualizzare i nomi TNS e le stringhe di connessione per le connessioni con autenticazione TLS. Per ulteriori informazioni, vedere Visualizzare i nomi TNS e le stringhe di connessione per un'istanza di Autonomous Database.

  • Query sulla vista V$SERVICES. Ad esempio:

    SELECT name FROM V$SERVICES;

Note per uso

Per ulteriori informazioni sulla continuità di applicazione, vedere Panoramica sulla continuità di applicazione.

Esempio

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

Verificare il valore come indicato di seguito.

SELECT name, failover_type FROM DBA_SERVICES;

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

DISABLE_EXTERNAL_AUTHENTICATION Procedura

Disabilita l'autenticazione utente con schemi di autenticazione esterni per il database.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;

Eccezioni

Eccezione Errore descrizione;
invalid_ext_auth ORA-20004

Vedere il messaggio di accompagnamento per una spiegazione dettagliata.

Esempio

BEGIN 
   DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/

PL/SQL procedure successfully completed.

DISABLE_FEATURE Procedura

Questa procedura disabilita la funzione specificata nell'istanza di Autonomous Database.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name    IN  VARCHAR2);

Parametri

Parametro descrizione;

feature_name

Specifica il tipo di funzione da disabilitare. I valori supportati sono:

  • 'AUTO_DST_UPGRADE': disabilita la funzione AUTO DST.

  • 'AUTO_DST_UPGRADE_EXCL_DATA': disabilita la funzione AUTO DST EXCL DATA.

  • 'ORAMTS': disabilita la funzione OraMTS.

  • 'OWM': disabilita Oracle Workspace Manager.

  • 'WORKLOAD_AUTO_REPLAY': disabilita la funzione di ripetizione automatica del carico di lavoro.

Questo parametro è obbligatorio.

Esempi

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

Note per uso

  • Per disabilitare le funzioni OraMTS, AUTO_DST_UPGRADE, AUTO_DST_UPGRADE_EXCL_DATA, OWM o WORKLOAD_AUTO_REPLAY per l'istanza di Autonomous Database in uso, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Quando AUTO_DST_UPGRADE e AUTO_DST_UPGRADE_EXCL_DATA sono disabilitati, se sono disponibili nuove versioni del fuso orario, l'istanza di Autonomous Database non esegue l'upgrade per utilizzare i file più recenti del fuso orario disponibile.

  • Eseguire la query dba_cloud_config per verificare che AUTO_DST_UPGRADE sia disabilitato.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    0 rows selected.
  • Eseguire la query dba_cloud_config per verificare che AUTO_DST_UPGRADE_EXCL_DATA sia disabilitato.
    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade_excl_data';
    
    0 rows selected.  

DISABLE_OPERATOR_ACCESS Procedura

Questa procedura revoca immediatamente l'accesso di Cloud Operator sull'istanza di Autonomous Database.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_OPERATOR_ACCESS;

Esempio

BEGIN 
    DBMS_CLOUD_ADMIN.DISABLE_OPERATOR_ACCESS;   
END;
/

DISABLE_PRINCIPAL_AUTH Procedura

Questa procedura revoca l'autenticazione basata sul principal per un provider specificato in Autonomous Database e si applica all'utente ADMIN o all'utente specificato.

Sintassi

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

Parametri

Parametro descrizione;

provider

Specifica il tipo di provider.

Valori validi:

  • AWS
  • AZURE
  • GCP
  • OCI

username

Specifica l'utente per cui disabilitare l'autenticazione basata sul principal.

Un valore nullo è valido per username. Se username non viene specificato, la procedura viene applicata per l'utente "ADMIN".

Note per uso

  • Quando il valore del provider è AZURE e username è ADMIN, la procedura disabilita l'autenticazione del principal del servizio Azure basata su Autonomous Database ed elimina l'applicazione Azure nell'istanza di Autonomous Database.

  • Se il valore del provider è AZURE e username è un utente diverso dall'utente ADMIN, la procedura revoca i privilegi dell'utente specificato. L'utente ADMIN e gli altri utenti abilitati a utilizzare il principal del servizio di Azure possono continuare a utilizzare ADMIN.AZURE$PA e l'applicazione creata per l'istanza di Autonomous Database rimane nell'istanza.

Esempi

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

DISABLE_RESOURCE_PRINCIPAL Procedura

Disabilita la credenziale del principal risorsa per il database o per lo schema specificato.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL(
   username         IN VARCHAR2);

Parametro

Parametro descrizione;

username

Specifica un nome utente facoltativo. Nome dello schema di database per rimuovere l'accesso al principal risorsa.

Se non si fornisce un valore username, il valore username viene impostato su ADMIN e il comando rimuove le credenziali OCI$RESOURCE_PRINCIPAL.

Eccezioni

Eccezione Errore descrizione;
resource principal is already disabled ORA-20031

Se si tenta di disabilitare il principal risorsa quando è già disabilitato.

Note per uso

  • Il principal risorsa non è disponibile con le copie aggiornabili.

  • È necessario impostare un gruppo dinamico e criteri per il gruppo dinamico prima di chiamare DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

    Per ulteriori informazioni sulla creazione di criteri, sulla creazione di un gruppo dinamico e sulla creazione di regole, vedere:

  • Verificare che la credenziale di un principal risorsa sia abilitata eseguendo una query su una delle viste: DBA_CREDENTIALS o ALL_TAB_PRIVS.

    Ad esempio, quando l'utente ADMIN esegue una query sulla vista 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 
    

    Ad esempio, come utente non ADMIN eseguire una query sulla vista 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

Esempio

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 Procedura

Questa procedura elimina un database link.

Sintassi

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

Parametri

Parametro descrizione;

db_link_name

Il nome del database link da eliminare.

public_link

Per eseguire DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK con public_link impostato su TRUE, è necessario disporre del privilegio di sistema DROP PUBLIC DATABASE LINK.

Il valore predefinito di questo parametro è FALSE.

Esempi

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

Note per uso

Al termine, utilizzare un database link ed eseguire DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK per garantire la sicurezza del database Oracle, rimuovere i file wallet memorizzati. Ad esempio:

  • Rimuovere il file wallet nell'area di memorizzazione degli oggetti.

  • Utilizzare DBMS_CLOUD.DELETE_FILE per rimuovere il file wallet dalla directory data_pump_dir o dalla directory definita dall'utente in cui è stato caricato il file wallet.

ENABLE_APP_CONT Procedura

Questa procedura abilita la continuità dell'applicazione del database per la sessione associata al nome di servizio specificato in Autonomous Database.

Sintassi

DBMS_CLOUD_ADMIN.ENABLE_APP_CONT(
    service_name      IN VARCHAR2);

Parametri

Parametro descrizione;

service_name

service_name per il servizio Autonomous Database.

Per trovare i nomi dei servizi:

  • Cercare il file tnsnames.ora nel file wallet.zip scaricato da un Autonomous Database per la connessione.

  • Fare clic sulla connessione al database nella console di Oracle Cloud Infrastructure. Nell'area stringhe di connessione, ogni stringa di connessione include una voce service_name che contiene la stringa di connessione per il servizio corrispondente. Quando sono consentite entrambe le connessioni Mutual TLS (mTLS) e TLS, in Autenticazione TLS selezionare TLS per visualizzare i nomi TNS e le stringhe di connessione per le connessioni con autenticazione TLS. Per ulteriori informazioni, vedere Visualizzare i nomi TNS e le stringhe di connessione per un'istanza di Autonomous Database.

  • Query sulla vista V$SERVICES. Ad esempio:

    SELECT name FROM V$SERVICES;

Note per uso

Per ulteriori informazioni sulla continuità di applicazione, vedere Panoramica sulla continuità di applicazione.

Esempio

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

Verificare il valore come indicato di seguito.

SELECT name, failover_type FROM DBA_SERVICES;

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

ENABLE_AWS_ARN Procedura

Questa procedura consente a un'istanza di Autonomous Database di utilizzare i nomi delle risorse Amazon (ARN) per accedere alle risorse AWS.

Sintassi

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

Parametri

Parametro descrizione;

username

Nome dell'utente che consente di utilizzare i nomi delle risorse Amazon (ARN).

Un valore nullo è valido per username. Se username non viene specificato, la procedura viene applicata per l'utente "ADMIN".

grant_option

Quando viene fornito username, se grant_option è TRUE, il username specificato può abilitare l'uso dei nomi delle risorse Amazon (ARN) per altri utenti.

Esempio

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

Nota per l'uso

  • Per eseguire la procedura DBMS_CLOUD_ADMIN.ENABLE_AWS_ARN, è necessario essere l'utente ADMIN.

Per ulteriori informazioni, consulta la sezione relativa all'utilizzo dei nomi delle risorse Amazon (ARN) per accedere alle risorse AWS.

ENABLE_EXTERNAL_AUTHENTICATION Procedura

Consente agli utenti di eseguire il login al database con schemi di autenticazione esterni.

Sintassi

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

Parametro

Parametro descrizione;

type

Specifica il tipo di autenticazione esterna. Valori validi: o .

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

force

(Facoltativo) Eseguire l'override di uno schema di autenticazione esterno attualmente abilitato. I valori validi sono TRUE o FALSE.

Il valore predefinito è FALSE.

params

Stringa JSON che fornisce parametri aggiuntivi per l'autenticazione esterna.

Parametri CMU:

  • location_uri: specifica l'URI di storage cloud per il bucket in cui vengono memorizzati i file necessari per la utility CMU.

    Se si specifica location_uri, nel database viene creato un oggetto directory nome fisso CMU_WALLET_DIR nel percorso 'cmu_wallet' per salvare i file di configurazione CMU. In questo caso, non è necessario fornire il parametro directory_name.

  • credential_name: specifica le credenziali utilizzate per scaricare i file di configurazione CMU dall'area di memorizzazione degli oggetti all'oggetto directory.

    Il valore predefinito è NULL, che consente di fornire un URL pubblico, preautenticato o prefirmato per il bucket o la sottocartella dell'area di memorizzazione degli oggetti.

  • directory_name: specifica il nome della directory in cui sono memorizzati i file di configurazione richiesti per CMU. Se viene fornito directory_name, è necessario copiare i file di configurazione CMU dsi.ora e cwallet.sso in questo oggetto directory.

Parametri KERBEROS:

  • location_uri: specifica l'URI di storage cloud per il bucket in cui vengono memorizzati i file necessari per Kerberos.

    Se si specifica location_uri, nel database viene creato un oggetto directory nome fisso KERBEROS_DIR per salvare i file di configurazione Kerberos. In questo caso, non è necessario fornire il parametro directory_name.

  • credential_name: specifica la credenziale utilizzata per scaricare i file di configurazione Kerberos dalla posizione dell'area di memorizzazione degli oggetti all'oggetto directory.

    Il valore predefinito è NULL, che consente di fornire un URL pubblico, preautenticato o prefirmato per il bucket o la sottocartella dell'area di memorizzazione degli oggetti.

  • directory_name: specifica il nome della directory in cui vengono memorizzati i file richiesti per Kerberos. Se si specifica directory_name, si prevede di copiare i file di configurazione Kerberos in questo oggetto directory.
  • kerberos_service_name: specifica un nome da utilizzare come nome del servizio Kerberos. Si tratta di un parametro facoltativo.

    Valore predefinito: se non specificato, il valore kerberos_service_name viene impostato sul GUID dell'istanza di Autonomous Database.

Parametri AZURE_AD:

  • tenant_id: ID tenant dell'account Azure. ID tenant specifica la registrazione dell'applicazione Azure AD dell'istanza di Autonomous Database.
  • application_id: ID applicazione Azure creato in Azure AD per assegnare ruoli/mapping di schema per l'autenticazione esterna nell'istanza di Autonomous Database.
  • application_id_uri: URI univoco assegnato all'applicazione Azure.

    Si tratta dell'identificativo dell'istanza di Autonomous Database. Il nome deve essere qualificato per il dominio (supporta l'accesso alle risorse tra tenancy).

    La lunghezza massima per questo parametro è di 256 caratteri.

Eccezioni

Eccezione Errore descrizione;
invalid_ext_auth ORA-20004

Vedere il messaggio di accompagnamento per una spiegazione dettagliata.

Note per uso

  • Con type OCI_IAM, se il principal della risorsa non è abilitato nell'istanza di Autonomous Database, questa routine abilita il principal della risorsa con DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

  • Questa procedura imposta i parametri di sistema IDENTITY_PROVIDER_TYPE e IDENTITY_PROVIDER_CONFIG agli utenti necessari per accedere all'istanza con l'autenticazione e l'autorizzazione di Oracle Cloud Infrastructure Identity and Access Management.

Esempi

Abilita autenticazione OCI_IAM

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

PL/SQL procedure successfully completed.

Abilita autenticazione CMU per Microsoft Active Directory

Si passa un nome di directory contenente i file di configurazione CMU tramite l'argomento 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.

Si passa un URI di posizione che punta a una posizione di storage degli oggetti che contiene file di configurazione CMU tramite l'argomento 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.

Abilita autenticazione 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.

Abilitazione dell'autenticazione Kerberos

Si passa un nome di directory contenente i file di configurazione Kerberos tramite l'argomento 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.

Si passa in un URI di posizione che punta a una posizione di storage degli oggetti che contiene file di configurazione Kerberos tramite l'argomento 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;
/

Si passa un nome di servizio con kerberos_service_name nell'argomento 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;
/

Dopo aver abilitato Kerberos nell'istanza di Autonomous Database, utilizzare la query seguente per visualizzare il nome del servizio Kerberos:

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

ENABLE_FEATURE Procedura

Questa procedura abilita la funzione specificata nell'istanza di Autonomous Database.

Sintassi

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

Parametri

Parametro descrizione;

feature_name

Nome della funzione da abilitare. I valori supportati sono i seguenti:

  • 'AUTO_DST_UPGRADE': abilita la funzione AUTO DST.

  • 'AUTO_DST_UPGRADE_EXCL_DATA': abilita la funzione AUTO DST EXCL DATA.

  • 'JAVAVM': abilita la funzione JAVAVM.

  • 'OLAP': abilita la funzione OLAP. OLAP richiede che Java sia abilitato. Quando si abilita OLAP, Java viene abilitato automaticamente insieme alla funzione OLAP.

  • 'ORAMTS': abilitare la funzione OraMTS.

  • 'OWM': abilitare Oracle Workspace Manager.

  • 'WORKLOAD_AUTO_REPLAY': abilita la funzione di ripetizione automatica del carico di lavoro.

Questo parametro è obbligatorio.

params

Stringa JSON che fornisce parametri aggiuntivi per alcune funzioni.

Per la funzione OraMTS, il parametro params è:
  • location_uri: location_uri accetta un valore string. Il valore specifica l'URL HTTPS per il server OraMTS in una rete di clienti.

Per la funzione WORKLOAD_AUTO_REPLAY, i parametri params sono:

  • target_db_ocid: un valore string. Il valore specifica l'OCID di un database clone aggiornabile di destinazione in cui viene ripetuto il carico di lavoro acquisito. La copia aggiornabile deve avere il livello di patch Early impostato.

    Questo parametro è obbligatorio.

  • capture_duration: un valore number. Il valore specifica la durata in minuti per l'acquisizione del carico di lavoro nel database di produzione. Il valore deve essere compreso tra 1 e 720 minuti.

    Questo parametro è obbligatorio.

  • capture_day: un valore string. Il valore specifica il giorno della settimana in cui deve iniziare l'acquisizione del carico di lavoro nel database di produzione.

    Si tratta di un parametro facoltativo.

  • capture_time: un valore nel formato HH24:MM. Il valore specifica l'ora del giorno in cui deve iniziare l'acquisizione del carico di lavoro nel database di produzione.

    Si tratta di un parametro facoltativo.

Per impostazione predefinita, l'acquisizione del carico di lavoro viene avviata quando si abilita WORKLOAD_AUTO_REPLAY. Se vengono specificati i valori facoltativi capture_day e capture_time, l'acquisizione e la ripetizione vengono eseguite all'indicatore orario specificato. Ad esempio, se capture_day è lunedì e capture_time è 15:00, la prima acquisizione viene eseguita alle ore 3 del lunedì successivo. Il giorno della settimana e l'ora vengono utilizzati anche per pianificare la ripetizione successiva sulla copia aggiornabile.

Esempio per abilitare la funzione JAVAVM:

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

Esempio per abilitare la funzione DST automatica:

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

Esempio per abilitare la funzione dati ESCL DST automatica:

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

Esempio per abilitare la funzione OraMTS:

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

Esempio per abilitare la funzione OWM:

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

Esempio per abilitare la funzione di ripetizione automatica del carico di lavoro

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

Un valore di errore ORA-20000: Invalid argument for target_db_ocid potrebbe indicare che l'OCID fornito non è una copia aggiornabile. In questo caso, è necessario fornire un OCID con un valore per una copia aggiornabile.

Note per uso

  • Per eseguire DBMS_CLOUD_ADMIN.ENABLE_FEATURE, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE in DBMS_CLOUD_ADMIN.

  • Dopo aver eseguito DBMS_CLOUD_ADMIN.ENABLE_FEATURE con il valore feature_name 'JAVAVM', è necessario riavviare l'istanza di Autonomous Database per installare Oracle Java.

    Dopo aver riavviato l'istanza di Autonomous Database, l'installazione di Java prosegue per un certo periodo di tempo dopo l'apertura del database.

    Vedere Controllare la versione Oracle Java per i dettagli sul controllo dello stato dell'installazione Java.

  • Dopo aver eseguito DBMS_CLOUD_ADMIN.ENABLE_FEATURE con il valore feature_name 'OWM', è necessario riavviare l'istanza di Autonomous Database per abilitare Oracle Workspace Manager. Oracle.

  • Per abilitare le funzioni AUTO_DST_UPGRADE, AUTO_DST_UPGRADE_EXCL_DATA, ORAMTS, JAVAVM, OWM o WORKLOAD_AUTO_REPLAY per il database, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Per impostazione predefinita, le opzioni AUTO_DST_UPGRADE e AUTO_DST_UPGRADE_EXCL_DATA sono disabilitate. È possibile abilitare una o l'altra di queste opzioni, ma non entrambe.

  • Dopo aver abilitato AUTO_DST_UPGRADE, al successivo riavvio o all'arresto e quindi all'avvio dell'istanza di Autonomous Database, l'istanza esegue l'upgrade per utilizzare i file più recenti dei fusi orari disponibili. Dopo l'abilitazione di AUTO_DST_UPGRADE, quando sono disponibili nuovi file di fuso orario, l'istanza continua a eseguire l'upgrade alla versione più recente disponibile a ogni riavvio o arresto e avvio successivi, fino a quando la funzione non viene disabilitata.

    Eseguire la query dba_cloud_config per verificare che AUTO_DST_UPGRADE sia abilitato.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    PARAM_NAME       PARAM_VALUE
    ---------------- -------------- 
    auto_dst_upgrade enabled
  • Dopo aver abilitato AUTO_DST_UPGRADE_EXCL_DATA, l'istanza di Autonomous Database viene aggiornata per utilizzare i file di fuso orario disponibili più recenti. Dopo aver abilitato questa funzione, ogni finestra di manutenzione successiva aggiorna l'istanza in modo da utilizzare la versione più recente del fuso orario disponibile. Questa funzione garantisce che i file del fuso orario vengano aggiornati per il database (l'abilitazione di AUTO_DST_UPGRADE_EXCL_DATA non comporta l'aggiornamento di righe interessate).

    Eseguire la query dba_cloud_config per verificare che AUTO_DST_UPGRADE_EXCL_DATA sia abilitato.

    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

ENABLE_OPERATOR_ACCESS Procedura

Le operazioni Oracle Cloud non accedono all'istanza di Autonomous Database e l'accesso non è consentito per impostazione predefinita. Quando è necessario l'accesso per risolvere o mitigare un problema, è possibile consentire a un operatore cloud di accedere agli schemi di database per un periodo di tempo limitato.

Sintassi

DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS(
    auth_duration    IN  NUMBER  DEFAULT 1
);

Parametri

Parametro descrizione;

auth_duration

Specifica il numero di ore per le quali l'operatore cloud dispone dell'accesso.

Valori validi: devono essere numeri interi compresi nell'intervallo da 1 a 24.

Valore predefinito: 1

Esempio

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

Note per uso

  • ORA-20000: Operator access is already enabled indica che l'accesso operatore è già stato concesso. In questo caso è possibile:

    • Attendere la scadenza dell'accesso operatore, quindi concedere di nuovo l'accesso operatore con DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS

    • Disabilitare esplicitamente l'accesso operatore con la procedura DISABLE_OPERATOR_ACCESS.
  • DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS consente l'accesso solo all'operatore cloud e non abilita l'accesso per altri utenti. Tutte le operazioni eseguite dall'operatore cloud vengono memorizzate nella vista DBA_OPERATOR_ACCESS. Per ulteriori informazioni, consulta Visualizza le azioni sulle operazioni di Oracle Cloud Infrastructure.

  • È possibile consentire a un operatore cloud di accedere agli schemi di database eseguendo la procedura DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS. Ciò significa che se inoltri una richiesta di servizio con il Supporto Oracle Cloud e gli operatori Oracle Cloud devono accedere agli schemi del database, è necessario abilitare anche l'accesso operatore eseguendo DBMS_CLOUD_ADMIN.ENABLE_OPERATOR_ACCESS.

ENABLE_PRINCIPAL_AUTH Procedura

Questa procedura abilita l'autenticazione del principal in Autonomous Database per il provider specificato e si applica all'utente ADMIN o all'utente specificato.

Sintassi

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

Parametri

Parametro descrizione;

provider

Specifica il tipo di provider.

Valori validi:

  • AWS: Abilita l'uso dei nomi delle risorse Amazon (ARN)
  • AZURE: Abilita l'uso di Azure Service Principal
  • GCP: Abilita l'utilizzo dell'account di servizio Google
  • OCI: abilita l'uso del principal risorsa

username

Nome dell'utente per il quale è abilitato l'uso dell'autenticazione del principal.

Un valore nullo è valido per username. Se username non viene specificato, la procedura viene applicata per l'utente "ADMIN".

params

Specifica i parametri di configurazione.

Se il parametro provider è AWS, GCP o OCI, params non è obbligatorio. Il valore predefinito è NULL.

grant_option: questo parametro è valido per tutti i provider ed è un valore booleano TRUE o FALSE. L'impostazione predefinita è FALSE.

Quando si specifica TRUE e username, l'utente specificato può utilizzare ENABLE_PRINCIPAL_AUTH per abilitare altri utenti.

Quando il parametro provider è AWS, sono valide anche le seguenti opzioni:

Quando il parametro provider è AZURE, questa opzione è valida anche:

  • azure_tenantid: con il valore dell'ID tenant Azure.

Note per uso

  • Quando il parametro provider è AZURE, il parametro params deve includere il parametro azure_tenantid nei seguenti casi:

    • Quando si chiama DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH per la prima volta.

    • Quando DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH viene richiamato per la prima volta dopo DBMS_CLOUD_ADMIN.DISABLE_PRINCIPAL_AUTH con il parametro provider AZURE e il parametro username ADMIN.

  • Quando il parametro provider è AWS:

    • Dopo aver abilitato ARN nell'istanza di Autonomous Database eseguendo DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH, la credenziale denominata AWS$ARN è disponibile per l'uso con qualsiasi interfaccia API DBMS_CLOUD che accetta una credenziale come input.

Esempi

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 Procedura

Abilita la credenziale del principal delle risorse per il database o per lo schema specificato. Questa procedura crea la credenziale OCI$RESOURCE_PRINCIPAL.

Sintassi

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

Parametro

Parametro descrizione;

username

Specifica un nome utente facoltativo. Nome dello schema di database al quale concedere l'accesso al principal risorsa.

Se non si fornisce un valore username, username viene impostato su ADMIN.

grant_option

Quando viene fornito username, se grant_option è TRUE, il username specificato può abilitare l'uso del principal risorsa per altri utenti.

Eccezioni

Eccezione Errore descrizione;
resource principal is already enabled ORA-20031

Se si tenta di abilitare il principal risorsa quando è già abilitato.

Note per uso

  • È necessario chiamare DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL con ADMIN username o senza argomenti prima di chiamare DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL con un username per uno schema utente del database.

  • È necessario impostare un gruppo dinamico e criteri per il gruppo dinamico prima di chiamare DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL.

    Per ulteriori informazioni sui criteri, sulla creazione di un gruppo dinamico e sulla creazione di regole, vedere quanto segue.

  • L'abilitazione del principal risorsa con DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL è un'operazione una tantum. Non è necessario abilitare di nuovo il principal risorsa, a meno che non si esegua DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL per disabilitare il principal risorsa.

  • Il principal risorsa non è disponibile con le copie aggiornabili.

Esempio

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

FINISH_WORKLOAD_CAPTURE Procedura

Questa procedura termina l'acquisizione del carico di lavoro corrente, arresta le successive richieste di acquisizione del carico di lavoro nel database e carica i file di acquisizione nello storage degli oggetti.

Esempio

BEGIN
    DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
END;
/

Note per uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Quando si passa il parametro duration a START_WORKLOAD_CAPTURE, l'acquisizione termina quando raggiunge l'ora specificata. Tuttavia, se si chiama FINISH_WORKLOAD_CAPTURE, l'acquisizione del carico di lavoro viene arrestata (eventualmente prima dell'ora specificata con il parametro duration).

    È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS per verificare lo stato del carico di lavoro finale. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View.

Nota

È necessario iscriversi all'evento Information com.oraclecloud.databaseservice.autonomous.database.information per ricevere una notifica sul completamento di FINISH_WORKLOAD_CAPTURE e sul collegamento Object Storage per scaricare il file di acquisizione. Questo URL PAR è contenuto nel campo captureDownloadURL dell'evento ed è valido per 7 giorni dalla data di generazione. Per ulteriori informazioni, consulta gli eventi di informazioni su Autonomous Database.

PREPARE_REPLAY Procedura

La procedura PREPARE_REPLAY prepara la copia aggiornabile per una ripetizione.

Parametri

Parametro descrizione;
capture_name Specifica il nome dell'acquisizione del carico di lavoro.

Questo parametro è obbligatorio.

Sintassi

DBMS_CLOUD_ADMIN.PREPARE_REPLAY(
        capture_name IN VARCHAR2);

Esempio

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

In questo esempio la copia aggiornabile viene preparata per la ripetizione del carico di lavoro indicato dal parametro capture_name, che comporta l'aggiornamento all'ora di inizio dell'acquisizione e quindi la disconnessione.

Nota per l'uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

PURGE_FLASHBACK_ARCHIVE Procedura

Questa procedura consente agli utenti ADMIN di rimuovere i dati cronologici da Flashback Data Archive. È possibile rimuovere tutti i dati cronologici da Flashback Data Archive flashback_archive oppure i dati selettivi in base agli indicatori orari o al numero di modifica del sistema.

Sintassi

DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE( 
   scope      IN VARCHAR2, 
   before_scn IN INTEGER DEFAULT NULL, 
   before_ts  IN TIMESTAMP DEFAULT NULL); 
Parametro descrizione;
scope Questa opzione specifica l'ambito in cui rimuovere i dati dall'archivio dati di flashback.
  • all implica che PURGE ALL;before_scn e before_timestamp devono essere entrambi NULL.

  • scn implica che PURGE BEFORE SCN;before_scn deve essere non NULL e before_timestamp deve essere NULL.

  • TIMESTAMP implica che PURGE BEFORE timestamp;before_scn deve essere NULL e before_timestamp deve essere non-NULL.

before_scn Questa opzione specifica il numero di modifica del sistema prima del quale verranno rimossi tutti i dati dall'archivio Flashback.
before_timestamp Questa opzione specifica l'indicatore orario prima del quale verranno rimossi tutti i dati dall'archivio Flashback.

Esempio

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

REPLAY_WORKLOAD Procedura

Questa procedura avvia una ripetizione del carico di lavoro sull'istanza di Autonomous Database. Il form sovraccarico consente di ripetere i file di acquisizione da un'istanza di Autonomous Database, da un database in locale o da altri database di servizi cloud.

Sintassi


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

Parametri

Parametro descrizione;
CAPTURE_NAME Specifica il nome dell'acquisizione del carico di lavoro.

Questo parametro è obbligatorio.

REPLAY_NAME Specifica il nome della ripetizione.

Se non viene specificato il valore REPLAY_NAME, il valore REPLAY_NAME viene generato automaticamente con il formato REPLAY_RANDOMNUMBER, ad esempio REPLAY_1678329506.

CAPTURE_SOURCE_TENANCY_OCID Specifica l'OCID della tenancy di origine dell'acquisizione del carico di lavoro.

Se non si specifica un valore CAPTURE_SOURCE_TENANCY_OCID, CAPTURE_SOURCE_TENANCY_OCID viene impostato su NULL.

Questo parametro è obbligatorio solo quando si esegue l'acquisizione del carico di lavoro in una copia completa.

CAPTURE_SOURCE_DB_NAME Specifica il nome del database di origine dell'acquisizione del carico di lavoro

Se non si specifica un valore CAPTURE_SOURCE_DB_NAME, CAPTURE_SOURCE_DB_NAME viene impostato su NULL.

Questo parametro è obbligatorio solo quando si esegue l'acquisizione del carico di lavoro in una copia completa.

LOCATION_URI Specifica l'URI che punta a una posizione di storage degli oggetti contenente i file acquisiti.

Questo parametro è obbligatorio.

CREDENTIAL_NAME Specifica la credenziale per accedere al bucket di storage degli oggetti.

Se non si fornisce un valore credential_name, vengono utilizzate le credenziali predefinite del database.

SYNCHRONIZATION Specifica il metodo di sincronizzazione utilizzato durante la ripetizione del carico di lavoro.
  • TRUE specifica che la sincronizzazione si basa su SCN.

  • FALSE specifica che la sincronizzazione si basa su TIME.

Se non si specifica un valore synchronization, synchronization viene impostato su TRUE.

PROCESS_CAPTURE Specifica se è necessario specificare o meno il valore process_capture. Può essere impostato su FALSE solo quando lo stesso carico di lavoro viene ripetuto ripetutamente nel database di destinazione.

Se non si specifica un valore process_capture, process_capture viene impostato su TRUE.

Esempio di ripetizione del carico di lavoro da un database in locale su un'istanza di 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 si esegue questo esempio:

  • Scarica i file di acquisizione dalla posizione di storage degli oggetti specificata in location_uri ed elabora i file di acquisizione in base al valore del parametro process_capture.

  • Ripete il carico di lavoro acquisito in base al valore del parametro synchronization.

In questo esempio, namespace-string è lo spazio di nomi dello storage degli oggetti Oracle Cloud Infrastructure e bucketname è il nome del bucket. Per ulteriori informazioni, vedere Informazioni sugli spazi di nomi dello storage degli oggetti.

Per ulteriori informazioni sullo storage degli oggetti, vedere Passare a Oracle Cloud Infrastructure Object Storage e Crea bucket.

Per ulteriori informazioni sul caricamento dei file nello storage degli oggetti, vedere Carica file nel bucket dell'area di memorizzazione degli oggetti Oracle Cloud Infrastructure.

Il valore credential_name utilizzato in questo passo sono le credenziali per l'area di memorizzazione degli oggetti.

Non è necessario creare una credenziale per accedere all'area di memorizzazione degli oggetti di Oracle Cloud Infrastructure se si abilitano le credenziali del principal risorsa. Per ulteriori informazioni, consulta la sezione relativa all'uso del principal delle risorse per accedere alle risorse di Oracle Cloud Infrastructure.

Esempio di ripetizione del carico di lavoro da un'istanza di Autonomous Database su un altro Autonomous Database:

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

Quando si esegue questo esempio:

  • Disconnette l'istanza corrente di Autonomous Database.

  • Scarica i file di acquisizione dallo storage degli oggetti.

  • Ripete il carico di lavoro acquisito.

  • Carica il report di ripetizione dopo una ripetizione.

Note d'uso per la ripetizione del carico di lavoro da un database in locale o da un altro database Cloud Service su un altro Autonomous Database

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Prima di iniziare la ripetizione, è necessario caricare le sottodirectory cap e capfiles, che contengono i file di acquisizione del carico di lavoro, nella posizione di storage degli oggetti.

Note d'uso per la ripetizione del carico di lavoro da un'istanza di Autonomous Database su un altro Autonomous Database

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • I file di ripetizione vengono caricati automaticamente nell'area di memorizzazione degli oggetti come file zip.

  • È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS per controllare lo stato della ripetizione del carico di lavoro.

    Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View.

Nota

È necessario iscriversi all'evento Information com.oraclecloud.databaseservice.autonomous.database.information per ricevere una notifica sull'avvio e il completamento di REPLAY_WORKLOAD e del collegamento Object Storage per scaricare i report di ripetizione. Questo URL PAR è contenuto nel campo replayDownloadURL dell'evento ed è valido per 7 giorni dalla data di generazione. Per ulteriori informazioni, consulta gli eventi di informazioni su Autonomous Database.

SET_FLASHBACK_ARCHIVE_RETENTION Procedura

Questa procedura consente agli utenti ADMIN di modificare il periodo di conservazione per Flashback Data Archive flashback_archive.

Sintassi


DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION (
    retention_days INTEGER);
Parametro descrizione;
retention_days Specifica il periodo di tempo in giorni per il quale i dati archiviati devono essere conservati. Il valore di retention_days deve essere maggiore di 0.

Esempio

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

START_WORKLOAD_CAPTURE Procedura

Questa procedura avvia un'acquisizione del carico di lavoro nell'istanza di Autonomous Database.

Sintassi

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

Parametri

Parametro descrizione;
capture_name Specifica il nome dell'acquisizione del carico di lavoro.

Questo parametro è obbligatorio.

duration Specifica la durata in minuti per la quale si desidera eseguire l'acquisizione del carico di lavoro.
  • Se non si specifica un valore duration, duration viene impostato su NULL.

  • Se impostato su NULL, il carico di lavoro continuerà fino all'esecuzione della procedura FINISH_WORKLOAD_CAPTURE.

Esempio

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

Note per uso

  • Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_ADMIN.

  • Per misurare l'impatto di una modifica di sistema su un carico di lavoro, è necessario assicurarsi che i sistemi di acquisizione e ripetizione si trovino nello stesso stato logico.

  • Prima di avviare un'acquisizione del carico di lavoro, è consigliabile eseguire il provisioning di una copia aggiornabile per garantire lo stesso punto di inizio per la ripetizione.

Nota

È necessario iscriversi all'evento Information com.oraclecloud.databaseservice.autonomous.database.information per ricevere una notifica all'inizio di START_WORKLOAD_CAPTURE. Per ulteriori informazioni, consulta gli eventi di informazioni su Autonomous Database.