Pacchetto DBMS_CLOUD_LINK
Il package DBMS_CLOUD_LINK
consente a un utente di registrare una tabella o una vista come data set per l'accesso in sola lettura con i collegamenti cloud.
- DBMS_CLOUD_LINK Panoramica
Verrà descritto l'uso del pacchettoDBMS_CLOUD_LINK
. - Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Mostra una tabella con un riepilogo dei sottoprogrammi inclusi nel pacchettoDBMS_CLOUD_LINK
.
Argomento padre: Riferimento del package fornito per Autonomous Database
Panoramica di DBMS_CLOUD_LINK
Descrive l'uso del pacchetto DBMS_CLOUD_LINK
.
Il pacchetto DBMS_CLOUD_LINK
fornisce la procedura REGISTER
che consente di registrare una tabella o una vista come data set da utilizzare con i collegamenti cloud. Prima di poter registrare un data set, l'utente ADMIN deve concedere a un utente l'autorizzazione per registrare un data set utilizzando la procedura DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Dopo l'esecuzione di ADMIN GRANT_REGISTER
, un utente può registrare una tabella o una vista di cui è proprietario come data set registrato (o registrare un oggetto in un altro schema se l'utente dispone del privilegio READ WITH GRANT OPTION
sull'oggetto). I data set registrati forniscono l'accesso remoto all'oggetto registrato con i collegamenti cloud, in base all'ambito specificato con la procedura REGISTER
.
Per eseguire DBMS_CLOUD_LINK.REGISTER
, DBMS_CLOUD_LINK.UPDATE_REGISTRATION
o DBMS_CLOUD_LINK.UNREGISTER
è necessario disporre del privilegio di esecuzione sul pacchetto DBMS_CLOUD_LINK
, oltre a eseguire in precedenza DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Per impostazione predefinita, solo l'utente ADMIN e gli schemi con ruolo PDB_DBA
dispongono del privilegio di esecuzione su DBMS_CLOUD_LINK
.
Argomento padre: Pacchetto DBMS_CLOUD_LINK
Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Mostra una tabella con un riepilogo dei sottoprogrammi inclusi nel pacchetto DBMS_CLOUD_LINK
.
Sottoprogramma | Descrizione |
---|---|
Questa funzione recupera la descrizione di un data set. La descrizione viene fornita quando un set di dati viene registrato con |
|
Recupera lo spazio di nomi, il nome e la descrizione per i data set che corrispondono alla stringa di ricerca. I set di dati corrispondenti vengono visualizzati solo se accessibili all'utente, in base alle limitazioni di accesso. |
|
Restituisce un identificativo univoco per l'istanza di Autonomous Database. Le chiamate ripetute a |
|
Concede l'autorizzazione a un database specificato per accedere al set di dati specificato. |
|
Registra una tabella o una vista come set di dati. |
|
Revoca l'autorizzazione per un database specificato per accedere al set di dati specificato. |
|
Rimuove un set di dati registrato. |
|
Aggiorna gli attributi di un data set registrato mediante |
- FunzioneDESCRIBE
Questa funzione recupera la descrizione di un set di dati. La descrizione viene fornita quando un set di dati viene registrato conDBMS_CLOUD_LINK.REGISTER
. - Procedura IND
Questa procedura recupera lo spazio di nomi, il nome e la descrizione dei data set corrispondenti alla stringa di ricerca. I set di dati corrispondenti vengono visualizzati solo se accessibili all'utente, in base alle limitazioni di accesso. - GET_DATABASE_ID Funzione
La funzione restituisce un identificativo univoco per l'istanza di Autonomous Database. Le chiamate ripetute aDBMS_CLOUD_LINK.GET_DATABASE_ID
sulla stessa istanza restituiscono sempre lo stesso valore. - GRANT_AUTHORIZATION Procedura
Questa procedura concede l'autorizzazione a un database specificato per accedere al set di dati specificato. - Procedura REGISTER
La procedura registra una tabella o una vista come set di dati per consentire l'accesso in sola lettura remoto, fatte salve le limitazioni imposte dal parametroscope
. - REVOKE_AUTHORIZATION Procedura
Questa procedura revoca l'autorizzazione per un database specificato ad accedere al set di dati specificato. - Procedura UNREGISTER
La procedura consente a un utente che ha registrato in precedenza una tabella o una vista con la proceduraREGISTER
di annullare la registrazione della tabella o della vista in modo che non sia più disponibile per l'accesso remoto. - UPDATE_REGISTRATION Procedura
La procedura aggiorna uno o più attributi per un data set registrato utilizzandoDBMS_CLOUD_LINK.REGISTER
.
Argomento padre: Pacchetto DBMS_CLOUD_LINK
Funzione DESCRIBE
DBMS_CLOUD_LINK.REGISTER
.
Sintassi
DBMS_CLOUD_LINK.DESCRIBE
(
namespace IN VARCHAR2,
name IN VARCHAR2
) return CLOB;
Parametri
Parametro | Descrizione |
---|---|
|
Specifica lo spazio di nomi del set di dati registrato. |
|
Specifica il nome di un set di dati registrato. |
Nota per l'uso
È possibile utilizzare questa funzione in base alle restrizioni di accesso imposte al momento della registrazione con DBMS_CLOUD_LINK.REGISTER
. Se un data set non è accessibile a un database, la relativa descrizione non verrà recuperata.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Procedura di ricerca
Sintassi
DBMS_CLOUD_LINK.FIND
(
search_string IN VARCHAR2,
search_result OUT CLOB
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica la stringa di ricerca. La stringa di ricerca non distingue tra maiuscole e minuscole. |
|
Documento JSON che include lo spazio di nomi, il nome e i valori di descrizione per il data set. |
Nota per l'uso
La stringa di ricerca non fa distinzione tra maiuscole e minuscole e il pacchetto utilizza la ricerca in formato testo libero mediante Oracle Text.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Funzione GET_DATABASE_ID
DBMS_CLOUD_LINK.GET_DATABASE_ID
sulla stessa istanza restituiscono sempre lo stesso valore.
È possibile chiamare questa funzione in un database che accede a un data set registrato in remoto per ottenere l'ID del database. Ciò consente di fornire iD del database in modo che il proprietario di un data set possa utilizzare un controllo dell'accesso ai dati più dettagliato, ad esempio con VPD, basato su ID di database specificati da siti remoti.
Un ID database identifica ogni database remoto che accede a un set di dati registrato, per tenere traccia e sottoporre a audit l'accesso nelle viste V$CLOUD_LINK_ACCESS_STATS e GV$CLOUD_LINK_ACCESS_STATS del database proprietario di un set di dati registrato.
Sintassi
DBMS_CLOUD_LINK.GET_DATABASE_ID
()
RETURN VARCHAR2;
Note sull'uso
I collegamenti cloud utilizzano l'identificativo univoco restituito da DBMS_CLOUD_LINK.GET_DATABASE_ID
per identificare i singoli database che accedono a un data set in remoto. Il database proprietario del data set registrato tiene traccia e verifica l'ID del database come record dell'origine per l'accesso al data set nelle viste V$CLOUD_LINK_ACCESS_STATS e GV$CLOUD_LINK_ACCESS_STATS.
L'identificativo DBMS_CLOUD_LINK.GET_DATABASE_ID
è disponibile come valore SYS_CONTEXT
in modo da poter ottenere a livello di programmazione queste informazioni su una sessione remota di connessione mediante SYS_CONTEXT
per limitare e controllare ulteriormente i dati specifici a cui possono accedere in remoto le singole istanze di Autonomous Database con VPD (Virtual Private Databases).
Valori restituiti
Identificativo univoco per l'istanza di Autonomous Database di VARCHAR2
.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Procedura GRANT_AUTHORIZATION
Sintassi
DBMS_CLOUD_LINK.GRANT_AUTHORIZATION
(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica l'ID del database per un'istanza di Autonomous Database. Usare |
|
Specifica lo spazio di nomi del set di dati per concedere l'autorizzazione di accesso per il file |
|
Specifica il nome del data set per concedere l'autorizzazione di accesso per il file |
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
REGISTRATI Procedura
scope
.
Sintassi
DBMS_CLOUD_LINK.REGISTER
(
schema_name IN VARCHAR2,
schema_object IN VARCHAR2,
namespace IN VARCHAR2,
name IN VARCHAR2,
description IN CLOB,
scope IN CLOB,
auth_required IN BOOLEAN DEFAULT,
data_set_owner IN VARCHAR2 DEFAULT,
offload_targets IN CLOB DEFAULT
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica il proprietario della tabella o della vista specificata con il parametro |
schema_object |
Specifica il nome di una tabella o di una vista. Gli oggetti validi sono:
Altri oggetti, ad esempio viste analitiche o sinonimi, non sono supportati. |
namespace |
Specifica lo spazio di nomi per il data set. Un valore |
name |
Specifica il nome del data set. |
description |
Specifica il testo per descrivere i dati. |
scope |
Descrive chi è autorizzato ad accedere al data set. Il valore è un elenco separato da virgole costituito da uno o più dei seguenti elementi:
I valori di ambito, |
|
Specifica che è richiesta un'autorizzazione aggiuntiva per la lettura dei database dal data set. Sono possibili i seguenti casi:
|
|
Specifica il proprietario del set di dati. Indica a chi appartiene il set di dati o chi è responsabile dell'aggiornamento e della gestione del set di dati. Ad esempio, è possibile impostare |
|
Specifica uno o più OCID Autonomous Database di copie aggiornabili in cui l'accesso ai data set è scaricato, da Autonomous Database in cui il data set è registrato. Il valore
Ad esempio, viene mostrato un esempio JSON con tre coppie di valori
Quando un consumer di set di dati richiede l'accesso a un data set registrato con Ad esempio, di seguito viene mostrato un esempio JSON con una coppia di valori
Per informazioni sull'uso di copie aggiornabili, vedere Usa copie aggiornabili con Autonomous Database. |
Note sull'uso
-
Dopo aver registrato un oggetto, gli utenti potrebbero dover attendere fino a dieci (10) minuti per accedere all'oggetto con i collegamenti cloud.
-
Utilizzare la procedura
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
per modificare gli attributi di un data set esistente.Il tempo di attesa per il completamento dell'aggiornamento può essere massimo di 10 minuti affinché una modifica alla registrazione venga propagata e accessibile tramite i collegamenti cloud. Questo ritardo può influire sull'accuratezza dei dati nelle viste
DBA_CLOUD_LINK_REGISTRATIONS
eDBA_CLOUD_LINK_ACCESS
. -
È possibile registrare una tabella o una vista che si trova nello schema di un altro utente quando si dispone dei privilegi
READ
WITH
GRANT
OPTION
per la tabella o la vista. -
L'ambito impostato quando si registra un set di dati viene rispettato solo quando corrisponde o è più restrittivo del set di valori con
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Ad esempio, si supponga che ADMIN abbia concesso l'ambito'MY$TENANCY'
conGRANT_REGISTER
e che l'utente specifichi'MY$REGION'
quando registra un set di dati conDBMS_CLOUD_LINK.REGISTER
. In questo caso vedrebbero un errore come il seguente:ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION
-
Al momento della registrazione non è possibile eseguire alcuni controlli di validità gerarchici per la registrazione. Le registrazioni non valide non saranno visibili, individuabili o accessibili a nessuno.
-
Per utilizzare
DBMS_CLOUD_LINK.REGISTER
, è necessario disporre del privilegio di esecuzione sul pacchettoDBMS_CLOUD_LINK
, oltre al privilegio di registrazione assegnato conDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Per impostazione predefinita, solo l'utente ADMIN e gli schemi conPDB_DBA
dispongono di questo privilegio. -
Quando si registra un data set in una copia aggiornabile in un'area remota, il richiamo di
DBMS_CLOUD_LINK.REGISTER
nella copia dell'area remota deve utilizzare gli stessi parametri con gli stessi valori del database di origine, ad eccezione del parametrooffload_targets
.Ad esempio, quando si esegue
DBMS_CLOUD_LINK.REGISTER
con ambito impostato suMY$COMPARTMENT
nell'istanza di Autonomous Database di origine, eseguire di nuovo la procedura nella copia aggiornabile tra più aree con lo stesso valore del parametro di ambito (MY$COMPARTMENT
). -
Se si specifica il parametro
offload_targets
conDBMS_CLOUD_LINK.REGISTER
nell'origine, è necessario omettere questo parametro quando si registra il data set in una copia aggiornabile tra più aree.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Procedura REVOKE_AUTHORIZATION
Sintassi
DBMS_CLOUD_LINK.REVOKE_AUTHORIZATION
(
database_id IN VARCHAR2,
namespace IN VARCHAR2 DEFAULT,
name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica l'ID del database per un'istanza di Autonomous Database. Usare |
|
Specifica lo spazio di nomi del set di dati per revocare l'autorizzazione di accesso per il file |
|
Specifica il nome del data set per revocare l'autorizzazione di accesso per il file |
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Procedura UNREGISTER
REGISTER
di annullare la registrazione della tabella o della vista in modo che non sia più disponibile per l'accesso remoto.
Sintassi
DBMS_CLOUD_LINK.UNREGISTER
(
namespace IN VARCHAR2,
name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica un nome utente. |
name |
Specifica il nome del data set. |
Nota per l'uso
DBMS_CLOUD_LINK.UNREGISTER
può anche richiedere fino a dieci (10) minuti per la propagazione completa, dopodiché è possibile accedere più a lungo ai dati da remoto.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK
Procedura UPDATE_REGISTRATION
DBMS_CLOUD_LINK.REGISTER
.
Sintassi
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
(
namespace IN VARCHAR2,
name IN VARCHAR2,
description IN CLOB DEFAULT,
scope IN CLOB DEFAULT,
auth_required IN BOOLEAN DEFAULT,
data_set_owner IN VARCHAR2 DEFAULT,
offload_targets IN CLOB DEFAULT
);
Parametri
Parametro | Descrizione |
---|---|
namespace |
Specifica lo spazio di nomi del data set da aggiornare. |
name |
Specifica il nome del data set da aggiornare. |
description |
Specifica il testo aggiornato per descrivere i dati. Se viene passato Per impostazione predefinita, questo attributo non è aggiornato. |
scope |
Aggiornare l'ambito con il valore specificato. L'ambito descrive chi è autorizzato ad accedere al data set. Il valore è un elenco separato da virgole costituito da uno o più dei seguenti elementi:
I valori di ambito, Se viene passato Per impostazione predefinita, questo attributo non è aggiornato. |
|
Specifica che è richiesta un'autorizzazione aggiuntiva per la lettura dei database dal data set. Sono possibili i seguenti casi:
Se viene passato Per impostazione predefinita, questo attributo non è aggiornato. |
|
Specifica il proprietario del set di dati. Indica a chi appartiene il set di dati o chi è responsabile dell'aggiornamento e della gestione del set di dati. Ad esempio, è possibile impostare Se viene passato Per impostazione predefinita, questo attributo non viene aggiornato. |
|
Specifica uno o più OCID Autonomous Database di copie aggiornabili in cui l'accesso ai data set è scaricato, da Autonomous Database in cui il data set è registrato. Il valore
Ad esempio, viene mostrato un esempio JSON con tre coppie di valori
Quando un consumer di set di dati richiede l'accesso a un data set registrato con Ad esempio, di seguito viene mostrato un esempio JSON con una coppia di valori
Per informazioni sull'uso di copie aggiornabili, vedere Usa copie aggiornabili con Autonomous Database. Se viene passato Per impostazione predefinita, questo attributo non è aggiornato. |
Note sull'uso
-
Impossibile aggiornare gli attributi
schema_name
eschema_object
per un data set. -
Dopo aver aggiornato la registrazione di un oggetto, gli utenti potrebbero dover attendere fino a dieci (10) minuti per accedere all'oggetto utilizzando gli attributi aggiornati con i collegamenti cloud.
-
È possibile aggiornare la registrazione per una tabella o una vista che risiede nello schema di un altro utente quando si dispone dei privilegi
READ
WITH
GRANT
OPTION
per la tabella o la vista. -
L'ambito impostato quando si aggiorna la registrazione di un data set viene rispettato solo quando corrisponde o è più restrittivo del valore impostato con
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Ad esempio, si supponga che ADMIN abbia concesso l'ambito'MY$TENANCY'
conGRANT_REGISTER
e che l'utente specifichi'MY$REGION'
quando aggiorna la registrazione per il set di dati conDBMS_CLOUD_LINK.UPDATE_REGISTRATION
. In questo caso vedrebbero un errore come il seguente:ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION
-
Alcuni controlli di validità gerarchici per una registrazione aggiornata non possono verificarsi quando la registrazione viene aggiornata. Le registrazioni non valide non saranno visibili, individuabili o accessibili a nessuno.
-
L'utente che ha registrato un data set può aggiornare i relativi attributi con
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
. È inoltre necessario disporre del privilegio di esecuzione sul pacchettoDBMS_CLOUD_LINK
e del privilegio di registrazione assegnato conDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Per impostazione predefinita, solo l'utente ADMIN e gli schemi conPDB_DBA
dispongono di questo privilegio. -
Quando si aggiorna la registrazione di un data set in una copia aggiornabile in un'area remota, il richiamo di
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
nella copia dell'area remota deve utilizzare gli stessi parametri con gli stessi valori del database di origine, ad eccezione del parametrooffload_targets
.Ad esempio, quando si esegue
DBMS_CLOUD_LINK.UPDATE_REGISTRATION
con ambito impostato suMY$COMPARTMENT
nell'istanza di Autonomous Database di origine, eseguire di nuovo la procedura nella copia aggiornabile tra più aree con lo stesso valore del parametro di ambito (MY$COMPARTMENT
). -
Se si specifica il parametro
offload_targets
conDBMS_CLOUD_LINK.REGISTER
nell'origine, è necessario omettere questo parametro quando si registra il data set in una copia aggiornabile tra più aree.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_LINK