Collega storage di file esterno ad Autonomous Database sull'infrastruttura Exadata dedicata
È possibile collegare uno storage di file esterno distribuito in Oracle Cloud Infrastructure o in locale all'Autonomous Database, a condizione che il database e il file system si trovino nella stessa rete privata. Autonomous Database sull'infrastruttura Exadata dedicata supporta NFSv4, per impostazione predefinita.
Ciò consente di caricare i dati dallo storage di file OCI nella rete cloud virtuale (VCN) o in qualsiasi altro file system di rete nei data center on premise.
- Connettersi a un'istanza di Autonomous Database da un'applicazione precedente e utilizzare il file system per caricare e scaricare i dati.
- Analizza i dati da origini diverse in un Autonomous Database.
- Accesso sicuro ai dati in un Autonomous Database dai file system in un data center on-premise o VCN privati.
Argomenti correlati
Requisiti di storage di file esterni
-
Data center on-premise: imposta FastConnect o una VPN da sito a sito per connettersi al data center on-premise. Per ulteriori informazioni, vedere FastConnect e VPN Site-to-Site.
-
Infrastruttura Oracle Cloud
-
Crea regole di sicurezza della rete cloud virtuale (VCN) per l'accesso a OCI File Storage Service (FSS): prima di poter eseguire il MOUNT di uno storage di file, è necessario configurare le regole di sicurezza per consentire il traffico verso la VNIC della destinazione di accesso utilizzando protocolli e porte specifici. Le regole di sicurezza abilitano il traffico per gli elementi riportati di seguito.
- Protocollo della utility rpcbind Open Network Computing Remote Procedure Call (ONC RPC)
- Protocollo NFS
- Protocollo MOUNT (Network File System)
- Protocollo NLM (Network Lock Manager)
Per ulteriori dettagli, vedere Configurazione delle regole di sicurezza VCN per lo storage di file.
- Creare un file system in OCI FSS: creare un file system utilizzando la console OCI. Quando si configurano i dettagli della destinazione di accesso per il file system, selezionare la VCN e la subnet privata della VCN in cui viene distribuito il database e fornire un nome host per generare automaticamente un nome dominio completamente qualificato (FQDN). Per maggiori informazioni, vedere Creazione dei file system.
- Ottenere il nome FQDN per la destinazione di accesso: visualizzare i dettagli della destinazione di accesso del file system dalla console OCI come descritto nella sezione Per visualizzare i dettagli di una destinazione di accesso per ottenere il nome FQDN.
-
Allega file system esterno
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
per collegare un file system a una directory in Autonomous Database.
Nota
La proceduraDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
può solo collegare un servizio di storage di file privato ai database che si trovano su endpoint privati.
-
Creare una directory o utilizzare una directory esistente per collegare il file system esterno in Autonomous Database. Per collegare un file system a una posizione di directory nel database, è necessario disporre del privilegio
WRITE
sull'oggetto directory nell'istanza di Autonomous Database.Ad esempio, il comando seguente crea la directory del database denominataFSS_DIR
e la directory del file systemfss
:CREATE DIRECTORY FSS_DIR AS ‘fss’;
Per ulteriori informazioni, vedere Crea una directory.
-
Eseguire
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
per collegare un file system a una directory in Autonomous Database. Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegioEXECUTE
suDBMS_CLOUD_ADMIN
.-
Per impostazione predefinita,
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
utilizza NFSv3. È tuttavia possibile scegliere di utilizzare in modo esplicito il parametroparams
e specificare il valorenfs_version
con il valore 3 per specificare 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 FSS for sales data' );END; /
-
Per utilizzare NFSv4, includere il parametro
params
conDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
e specificare il valorenfs_version
con 4 per specificare 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 FSS for sales data', params => JSON_OBJECT('nfs_version' value 4) ); END; /
In questo esempio il file system di rete specificato nel parametro
file_system_name
viene collegato ad Autonomous Database.Il parametro
file_system_location
specifica la posizione del file system. Il valore fornito confile_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
- Percorso file:
/results
- FQDN:
Il parametro
directory_name
specifica il nome della directory nell'Autonomous Database in cui si desidera collegare il file system. Questa è la directory creata al Passo 1 o un'altra directory creata in precedenza.Il parametro
description
specifica la descrizione del task. -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
:
-
Oracle Cloud Infrastructure File Storage utilizza NFS versione 3 per la condivisione. Per ulteriori informazioni, vedere Panoramica dello storage di file.
- 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 quindiDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(utilizzando il parametroparams
connfs_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"
.
Interrogazione DBA_CLOUD_FILE_SYSTEMS
Dopo aver allegato un file system, è possibile eseguire una query sulla vista DBA_CLOUD_FILE_SYSTEMS
per recuperare le informazioni sul file system allegato.
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
Questa query restituisce i dettagli per il nome del file system FSS
. Per ulteriori informazioni, vedere DBMS_CLOUD_FILE_SYSTEMS View.
Con un file system allegato è possibile leggere e scrivere nei file di un file system allegato utilizzando qualsiasi API PL/SQL che accetti un nome di directory. Ad esempio, è possibile utilizzare uno dei seguenti metodi per utilizzare una directory FSS collegata:
-
Il pacchetto
UTL_FILE
. -
Utility di esportazione e importazione di Data Pump.
-
Le API
DBMS_CLOUD
che funzionano con directory qualiDBMS_CLOUD.LIST_FILES
eDBMS_CLOUD.PUT_OBJECT
.
UTL_FILE
:DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'w');
UTL_FILE.PUT(l_file, 'Scott, male, 1000');
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
UTL_FILE
:DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
l_text VARCHAR2(32767);
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'r');
UTL_FILE.GET_LINE(l_file, l_text, 32767);
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
DBMS_CLOUD.LIST_FILES
:SELECT object_name FROM DBMS_CLOUD.LIST_FILES('FSS_DIR');
DBMS_CLOUD_FILE_SYSTEMS Visualizza
DBA_CLOUD_FILE_SYSTEMS
elenca le informazioni sul file system esterno collegato a una posizione di directory nel database.
A colonne | Tipo di dati | Descrizione |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
Nome del file system |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
Posizione file system |
DIRECTORY_NAME |
VARCHAR2(128) |
Nome directory collegata |
DIRECTORY_PATH |
VARCHAR2(4000) |
Percorso directory collegato |
NFS_VERSION |
NUMBER |
La versione NFS |
DESCRIPTION |
VARCHAR2(4000) |
Valore fornito per il parametro descrizione quando si esegue DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Indicatore orario creazione |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Indicatore orario aggiornamento |
Scollega file system esterno
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
per scollegare un file system da una directory in Autonomous Database.
Nota
La proceduraDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
può scollegare un servizio di storage di file privato solo dai database che si trovano su endpoint privati.
Per scollegare un file system da una posizione di directory, è necessario disporre del privilegio WRITE
sull'oggetto di directory.
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
per scollegare un file system da una posizione di directory in Autonomous Database. Per eseguire questa procedura, è necessario eseguire il login come utente ADMIN o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);END;
/
In questo esempio il file system di rete specificato nel parametro file_system_name
viene scollegato dall'Autonomous Database. Fornire un valore per questo parametro. Le informazioni su questo file system vengono rimosse dalla vista DBA_CLOUD_FILE_SYSTEMS
.
Per ulteriori informazioni, vedere DETACH_FILE_SYSTEM Procedura.