Externen Dateispeicher an Autonomous Database on Dedicated Exadata Infrastructure anhängen
Sie können einen in Oracle Cloud Infrastructure oder On-Premise bereitgestellten externen Dateispeicher an Autonomous Database anhängen, sofern sich die Datenbank und das Dateisystem im selben privaten Netzwerk befinden. Autonomous Database on Dedicated Exadata Infrastructure unterstützt standardmäßig NFSv4.
Auf diese Weise können Sie Daten aus OCI File Storage in Ihrem virtuellen Cloud-Netzwerk (VCN) oder einem anderen Netzwerkdateisystem in On-Premise-Data Centern laden.
- Stellen Sie eine Verbindung zu einer Autonomous Database-Instanz von einer Legacy-Anwendung her, und verwenden Sie das Dateisystem zum Laden und Entladen von Daten.
- Analysieren Sie Daten aus verschiedenen Quellen in einer Autonomous Database.
- Sichern Sie den Zugriff auf Daten in einer Autonomous Database von den Dateisystemen in einem On-Premise-Data Center oder privaten VCNs.
Verwandte Themen
Externe Dateispeicheranforderungen
-
On-Premise-Data Center: Richten Sie FastConnect oder ein Site-to-Site-VPN ein, um eine Verbindung zum On-Premise-Data Center herzustellen. Weitere Informationen finden Sie unter FastConnect und Site-to-Site-VPN.
-
Oracle Cloud Infrastructure
-
Sicherheitsregeln für virtuelle Cloud-Netzwerke (VCN) für den Zugriff auf OCI File Storage Service (FSS) erstellen: Bevor Sie einen Dateispeicher mounten können, müssen Sie Sicherheitsregeln konfigurieren, um Traffic zur VNIC des Mountziels mit bestimmten Protokollen und Ports zu ermöglichen. Sicherheitsregeln lassen Traffic für Folgendes zu:
- rpcbind-Utilityprotokoll für Open Network Computing Remote Procedure Call (ONC RPC)
- Network File System-(NFS-)Protokoll
- Network File System-(MOUNT-)Protokoll
- Network Lock Manager-(NLM-)Protokoll
Weitere Informationen finden Sie unter VCN-Sicherheitsregeln für File Storage konfigurieren.
- Dateisystem in OCI FSS erstellen: Erstellen Sie ein Dateisystem mit der OCI-Konsole. Wenn Sie Mountzieldetails für das Dateisystem konfigurieren, wählen Sie das VCN und das private Subnetz des VCN aus, in dem Ihre Datenbank bereitgestellt ist, und geben Sie einen Hostnamen an, um automatisch einen vollqualifizierten Domainnamen (FQDN) zu generieren. Weitere Informationen finden Sie unter Dateisysteme erstellen.
- FQDN für das Mount-Ziel abrufen: Zeigen Sie die Details des Mount-Ziels des Dateisystems über die OCI-Konsole an, wie unter So zeigen Sie Details eines Mount-Ziels an beschrieben, um den FQDN abzurufen.
-
Externes Dateisystem anhängen
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
, um ein Dateisystem an ein Verzeichnis in Autonomous Database anzuhängen.
Hinweis:
Die ProzedurDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
kann einen privaten File Storage Service nur an Datenbanken anhängen, die sich auf privaten Endpunkten befinden.
-
Erstellen Sie ein Verzeichnis, oder hängen Sie das externe Dateisystem in Autonomous Database mit einem vorhandenen Verzeichnis an. Sie benötigen die Berechtigung
WRITE
für das Verzeichnisobjekt in der Autonomous Database-Instanz, um ein Dateisystem an ein Verzeichnis in der Datenbank anzuhängen.Beispiel: Der folgende Befehl erstellt das DatenbankverzeichnisFSS_DIR
und das Dateisystemverzeichnisfss
:CREATE DIRECTORY FSS_DIR AS ‘fss’;
Weitere Informationen finden Sie unter Erstellen eines Verzeichnisses.
-
Führen Sie
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
aus, um ein Dateisystem an ein Verzeichnis in Autonomous Database anzuhängen. Um diese Prozedur auszuführen, müssen Sie als ADMIN-Benutzer angemeldet sein oder die BerechtigungEXECUTE
fürDBMS_CLOUD_ADMIN
besitzen.-
Standardmäßig verwendet
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
NFSv3. Sie können jedoch den Parameterparams
explizit verwenden undnfs_version
mit dem Wert 3 angeben, um NFSv3 anzugeben.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; /
-
Um NFSv4 zu verwenden, nehmen Sie den Parameter
params
mitDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
auf, und geben Sienfs_version
mit dem Wert 4 an, um NFSv4 anzugeben.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 diesem Beispiel wird das im Parameter
file_system_name
angegebene Netzwerkdateisystem an Autonomous Database angehängt.Der Parameter
file_system_location
gibt den Speicherort des Dateisystems an. Der Wert, den Sie mitfile_system_location
angeben, besteht aus einem vollqualifizierten Domainnamen (FQDN) und einem Dateipfad im Format: FQDN:
file_path. Beispiel:-
- FQDN:
myhost.sub000445.myvcn.oraclevcn.com
- Dateipfad:
/results
- FQDN:
Der Parameter
directory_name
gibt den Verzeichnisnamen in Autonomous Database an, an den Sie das Dateisystem anhängen möchten. Dies ist das Verzeichnis, das Sie in Schritt 1 erstellt haben, oder ein anderes Verzeichnis, das Sie zuvor erstellt haben.Der Parameter
description
gibt die Beschreibung für die Aufgabe an. -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
:
-
Oracle Cloud Infrastructure File Storage verwendet NFS Version 3 zum Freigeben. Weitere Informationen finden Sie unter Überblick über File Storage.
- Wenn Sie an Nicht-Oracle Cloud Infrastructure-Dateispeichersysteme anhängen, unterstützt die Prozedur NFSv3 und NFSv4.
-
Wenn ein NFS-Server angehängt ist, der NFSv3 verwendet und die NFS-Version auf dem NFS-Server in NFSv4 aktualisiert wird, müssen Sie
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
und dannDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
ausführen (mit dem Parameterparams
, bei demnfs_version
auf 4 gesetzt ist). Dadurch wird NFS mit dem übereinstimmenden Protokoll angehängt, sodass Autonomous Database auf den NFSv4-Server zugreifen kann. Ohne Trennen und erneutes Anhängen ist der NFS-Server nicht zugänglich, und es kann zu einem Fehler wie"Protocol not supported"
kommen.
Fragen Sie DBA_CLOUD_FILE_SYSTEMS ab.
Nachdem Sie ein Dateisystem angehängt haben, können Sie die Ansicht DBA_CLOUD_FILE_SYSTEMS
abfragen, um Informationen zum angehängten Dateisystem abzurufen.
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
Diese Abfrage gibt Details für den Dateisystemnamen FSS
zurück. Weitere Informationen finden Sie unter Ansicht DBMS_CLOUD_FILE_SYSTEMS.
Mit einem angehängten Dateisystem können Sie mit einer beliebigen PL/SQL-API, die einen Verzeichnisnamen akzeptiert, in Dateien in einem angehängten Dateisystem lesen und schreiben. Beispiel: Sie können eine der folgenden Methoden verwenden, um mit einem angehängten FSS-Verzeichnis zu arbeiten:
-
Das Package
UTL_FILE
. -
Export- und Import-Utilitys von Data Pump.
-
Die
DBMS_CLOUD
-APIs, die mit Verzeichnissen wieDBMS_CLOUD.LIST_FILES
undDBMS_CLOUD.PUT_OBJECT
arbeiten.
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 Ansicht
DBA_CLOUD_FILE_SYSTEMS
werden die Informationen zum externen Dateisystem aufgeführt, das an ein Verzeichnis in der Datenbank angehängt ist.
Spalte | Datentyp | Beschreibung |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
Name des Dateisystems |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
Speicherort für das Dateisystem |
DIRECTORY_NAME |
VARCHAR2(128) |
Name des angehängten Verzeichnisses |
DIRECTORY_PATH |
VARCHAR2(4000) |
Angehängter Verzeichnispfad |
NFS_VERSION |
NUMBER |
Die NFS-Version |
DESCRIPTION |
VARCHAR2(4000) |
Der Wert, der für den Beschreibungsparameter angegeben wird, wenn Sie DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM ausführen |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Erstellungszeitstempel |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Zeitstempel aktualisieren |
Externes Dateisystem trennen
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
, um ein Dateisystem von einem Verzeichnis in Autonomous Database zu trennen.
Hinweis:
Die ProzedurDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
kann nur einen privaten File Storage Service von den Datenbanken trennen, die sich auf privaten Endpunkten befinden.
Sie benötigen die Berechtigung WRITE
für das Verzeichnisobjekt, um ein Dateisystem von einem Verzeichnisspeicherort zu trennen.
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
aus, um ein Dateisystem von einem Verzeichnis in Autonomous Database zu trennen. Um diese Prozedur auszuführen, müssen Sie als ADMIN-Benutzer angemeldet sein oder die Berechtigung EXECUTE
für DBMS_CLOUD_ADMIN
besitzen.BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);END;
/
In diesem Beispiel wird das im Parameter file_system_name
angegebene Netzwerkdateisystem von Autonomous Database getrennt. Sie müssen einen Wert für diesen Parameter eingeben. Die Informationen zu diesem Dateisystem werden aus der Ansicht DBA_CLOUD_FILE_SYSTEMS
entfernt.
Weitere Informationen finden Sie unter Prozedur DETACH_FILE_SYSTEM.