Autonomous Databaseからのネットワーク・ファイル・システムへのアクセス
ネットワーク・ファイル・システムをAutonomous Database内のディレクトリの場所にアタッチできます。
これにより、Virtual Cloud Network (VCN)のOracle Cloud Infrastructure File Storageまたはオンプレミス・データ・センター内の他のネットワーク・ファイル・システムからデータをロードできます。アクセスするネットワーク・ファイル・システムのバージョンに応じて、NFSv3とNFSv4の両方がサポートされます。
サポート・ネットワーク・ファイル・システムを使用すると、次のことを実行できます。
-
レガシー・アプリケーションからAutonomous Databaseインスタンスに接続し、ファイル・システムを使用してデータをロードおよびアンロードします。
-
Autonomous Databaseのさまざまなソースからのデータを分析します。
-
オンプレミス・データ・センターまたはPrivate Virtual Cloud Networks (VCN)のファイル・システムからAutonomous Database内のデータへのアクセスを保護します。
トピック
- Autonomous Databaseへのネットワーク・ファイル・システムのアタッチ
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
を使用して、Autonomous Database内のディレクトリにファイル・システムをアタッチします。 - Autonomous Databaseからのネットワーク・ファイル・システムのデタッチ
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
プロシージャを使用して、Autonomous Databaseのディレクトリからファイル・システムをデタッチします。 - 例: Oracle Cloudコンピュートでの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コンピュートでの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 |
更新タイムスタンプ |