Autonomous Databaseからのネットワーク・ファイル・システムへのアクセス
Autonomous Databaseのディレクトリの場所にネットワーク・ファイル・システムをアタッチできます。
これにより、Virtual Cloud Network (VCN)のOracle Cloud Infrastructure File Storageまたはオンプレミスのデータ・センター内の他のネットワーク・ファイル・システムからデータをロードできます。アクセスするネットワーク・ファイル・システムのバージョンに応じて、NFSv3とNFSv4の両方がサポートされます。
サポート・ネットワーク・ファイル・システムを使用すると、次のことを実行できます。
-
レガシー・アプリケーションからAutonomous Databaseインスタンスに接続し、ファイル・システムを使用してデータをロードおよびアンロードします。
-
Autonomous Database内の様々なソースからのデータを分析します。
-
オンプレミスのデータ・センターまたはプライベートVirtual Cloud Networks (VCNs)のファイル・システムから、Autonomous Database内のデータへのアクセスを保護します。
トピック
- Autonomous Databaseへのネットワーク・ファイル・システムのアタッチ
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
を使用して、Autonomous Databaseのディレクトリにファイル・システムをアタッチします。 - Autonomous Databaseからのネットワーク・ファイル・システムのデタッチ
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
プロシージャを使用して、Autonomous Databaseのディレクトリからファイル・システムをデタッチします。 - 例: Oracle Cloud ComputeでのNFSv4サーバーの設定
Autonomous Databaseで使用するNSFv4サーバーの設定例を示します。 - DBA_CLOUD_FILE_SYSTEMSビュー
DBA_CLOUD_FILE_SYSTEMS
ビューには、データベース内のディレクトリの場所にアタッチされているネットワーク・ファイル・システムに関する情報が表示されます。
Autonomous Databaseへのネットワーク・ファイル・システムのアタッチ
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
を使用して、Autonomous Databaseのディレクトリにファイル・システムをアタッチします。
添付ファイル・システムでは、次のいずれかからデータをロードできます。
-
Virtual Cloud Network (VCN)のOracle Cloud Infrastructure File Storage。
Autonomous DatabaseでのOracle Cloud Infrastructure File Storageの設定の詳細は、Autonomous Databaseへのファイル・システムのアタッチ方法を参照してください。
-
オンプレミス・データ・センターのネットワーク・ファイル・システムから。アクセスするネットワーク・ファイル・システムのバージョンに応じて、NFSv3とNFSv4の両方がサポートされます。
NFSv4ネットワーク・ファイル・システムの構成例は、「例: Oracle Cloud ComputeでのNFSv4サーバーの設定」を参照してください。
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
プロシージャは、Autonomous Databaseインスタンスがプライベート・エンドポイントにある場合にのみプライベート・ファイル・ストレージ・サービスをアタッチできます。
オンプレミス・データ・センター内のファイル・システムからAutonomous Databaseのデータにアクセスするには、オンプレミス・データ・センターに接続するためにFastConnectまたはサイト間VPNを設定する必要があります。詳細は、FastConnectおよびサイト間VPNを参照してください。
ファイル・システムをアタッチした後、DBA_CLOUD_FILE_SYSTEMS
ビューを問い合せて、アタッチされたファイル・システムに関する情報を取得できます。
たとえば:
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
この問合せは、FSS
ファイル・システム名の詳細を返します。
詳細は、DBA_CLOUD_FILE_SYSTEMSビューを参照してください。
添付ファイル・システムでは、ディレクトリ名を受け入れる任意のPL/SQL APIを使用して、添付ファイル・システム上のファイルの読取りおよび書込みを実行できます。たとえば、次のいずれかの方法を使用して、接続されたNFSディレクトリを操作できます。
-
UTL_FILE
パッケージ。 -
Data Pump ExportおよびImportユーティリティ。
-
DBMS_CLOUD.LIST_FILES
やDBMS_CLOUD.PUT_OBJECT
などのディレクトリを操作するDBMS_CLOUD
API。
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_ADMIN.ATTACH_FILE_SYSTEM
の使用に関するノート:
-
Oracle Cloud Infrastructure File Storageでは、NFSv3を使用して共有します。詳細は、ファイル・ストレージの概要を参照してください。
-
Oracle Cloud Infrastructure File Storage以外のシステムにアタッチする場合、このプロシージャはNFSv3およびNFSv4をサポートします。
-
NFSv3を使用するNFSサーバーがアタッチされており、NFSサーバーでNFSバージョンがNFSv4に更新されている場合は、
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
を実行してからDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
を実行する必要があります(nfs_version
を4に設定したparams
パラメータを使用)。これにより、Autonomous DatabaseがNFSv4サーバーにアクセスできるように、一致するプロトコルでNFSがアタッチされます。デタッチしてから再アタッチしないと、NFSサーバーにアクセスできなくなり、"Protocol not supported"
などのエラーが表示される場合があります。
Autonomous Databaseからのネットワーク・ファイル・システムのデタッチ
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
プロシージャを使用して、Autonomous Databaseのディレクトリからファイル・システムをデタッチします。
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
プロシージャは、プライベート・エンドポイントにあるデータベースからのみプライベート・ファイル・ストレージ・サービスをデタッチできます。
ディレクトリの場所からファイル・システムをデタッチするには、ディレクトリ・オブジェクトに対するWRITE
権限が必要です。
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
プロシージャを実行して、Autonomous Databaseのディレクトリの場所からファイル・システムをデタッチします。このプロシージャを実行するには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMIN
に対するEXECUTE
権限を持っている必要があります。
たとえば:
BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
(
file_system_name => 'FSS'
);
END;
/
この例では、file_system_name
パラメータで指定されたネットワーク・ファイル・システムをAutonomous Databaseからデタッチします。このパラメータの値を指定する必要があります。
このファイル・システムに関する情報は、DBA_CLOUD_FILE_SYSTEMS
ビューから削除されます。
DBA_CLOUD_FILE_SYSTEMSビュー
DBA_CLOUD_FILE_SYSTEMS
ビューには、データベース内のディレクトリの場所に接続されているネットワーク・ファイル・システムに関する情報が表示されます。
列 | データ型 | 摘要 |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
ファイル・システム名 |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
ファイル・システムの位置 |
DIRECTORY_NAME |
VARCHAR2(128) |
アタッチされたディレクトリ名 |
DIRECTORY_PATH |
VARCHAR2(4000) |
添付ディレクトリ・パス |
NFS_VERSION |
NUMBER |
NFSバージョン。 |
DESCRIPTION |
VARCHAR2(4000) |
|
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
作成タイムスタンプ |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
更新スタンプ |