専用Exadataインフラストラクチャ上のAutonomous AI Databaseへのネットワーク・ファイル・ストレージのアタッチ

データベースとファイル・システムが同じプライベート・ネットワークにある場合は、Autonomous AI Databaseにネットワーク・ファイル・ストレージ(NFS)共有をアタッチできます。Autonomous AI Database on Dedicated Exadata Infrastructureでは、デフォルトでNFSv4がサポートされます。

ネットワーク・ファイル・システム(NFS)をサポートすると、次のことを実行できます。

必要に応じて、NFS共有を次のデータベースに明示的にアタッチする必要があります。

ネットワークファイルシステムの要件

Autonomous AI Databaseにネットワーク・ファイル・ストレージ(NFS)共有をアタッチする前に、次のことを確認してください:

ネットワーク・ファイル・システムの接続

DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMを使用して、Autonomous AI Databaseのディレクトリにファイル・システムをアタッチします。

ノート: DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMプロシージャは、Autonomous AI Databaseインスタンスがプライベート・エンドポイントにある場合にのみ、プライベート・ファイル・ストレージ・サービスをアタッチできます。

  1. ディレクトリを作成するか、既存のディレクトリを使用してAutonomous AI Databaseに外部ファイル・システムをアタッチします。データベース内のディレクトリの場所にファイル・システムをアタッチするには、Autonomous AI Databaseインスタンスのディレクトリ・オブジェクトに対するWRITE権限が必要です。

    たとえば、次のコマンドは、NFS_DIRというデータベース・ディレクトリを作成し、ファイル・システム・ディレクトリnfs作成します:

    CREATE DIRECTORY NFS_DIR AS 'nfs';
    

    詳細については、Create a Directoryを参照してください。

  2. DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMを実行して、Autonomous AI Databaseのディレクトリにファイル・システムをアタッチします。このプロシージャを実行するには、ADMINユーザーとしてログインしているか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。

    • デフォルトでは、DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMは NFSv3を使用します。ただし、paramsパラメータを明示的に使用することを選択し、nfs_versionに値3を指定してNFSv3を指定することもできます。

      BEGIN
      DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
          file_system_name      => 'NFS',
          file_system_location  => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
          directory_name        => 'NFS_DIR',
          description           => 'Source NFS for sales data'
      );END;
      /
      
    • NFSv4を使用するには、DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMparamsパラメータを含め、値4にnfs_versionを指定してNFSv4を指定します。

      BEGIN
        DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
          file_system_name => 'NFS',
          file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
          directory_name => 'NFS_DIR',
          description => 'Source NFS for sales data',
      
          **params => JSON_OBJECT('nfs_version' value 4)**
        );
      END;
      /
      

    前述の例では、file_system_nameパラメータで指定されたネットワーク・ファイル・システムをAutonomous AI Databaseにアタッチしています。

    file_system_locationパラメータは、ファイル・システムの場所を指定します。file_system_locationに指定する値は、完全修飾ドメイン名(FQDN)と、FQDN:file_pathという形式のファイル・パスで構成されます。

    たとえば:

    • FQDN: myhost.sub000445.myvcn.oraclevcn.com

    • ファイルパス: /results

    directory_nameパラメータは、ファイル・システムをアタッチするAutonomous AIデータベースのディレクトリ名を指定します。これは、ステップ1で作成したディレクトリ、または以前に作成した別のディレクトリです。

    descriptionパラメータは、タスクの説明を指定します。

    paramsパラメータは、追加の属性nfs_versionを指定するJSON値で、その値は3または4 (NFSv3またはNFSv4)のいずれかです。

DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMの使用に関するノート:

DBA_CLOUD_FILE_SYSTEMSの問合せ

ファイル・システムをアタッチした後、DBA_CLOUD_FILE_SYSTEMSビューを問い合せて、アタッチされたファイル・システムに関する情報を取得できます。

例:

SELECT file_system_name, file_system_location, directory_path
  FROM dba_cloud_file_systems
  WHERE file_system_name = 'FSS';

この問合せは、FSSファイル・システム名の詳細を返します。詳細は、DBMS_CLOUD_FILE_SYSTEMSビューを参照してください。

添付ファイル・システムでは、ディレクトリ名を受け入れる任意のPL/SQL APIを使用して、添付ファイル・システム上のファイルを読み書きできます。たとえば、次のいずれかの方法を使用して、アタッチされたFSSディレクトリを操作できます。

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ビュー

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) DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMの実行時にdescriptionパラメータに指定された値
CREATION_TIME TIMESTAMP(6) WITH TIME ZONE 作成タイムスタンプ
UPDATE_TIME TIMESTAMP(6) WITH TIME ZONE 更新のスタンプ

ネットワーク・ファイル・システムのデタッチ

Autonomous AI Databaseのディレクトリからファイル・システムをデタッチするには、DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMプロシージャを使用します。

ノート: DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMプロシージャでは、プライベート・エンドポイント上にあるデータベースからのみプライベート・ファイル・ストレージ・サービスをデタッチできます。

ファイル・システムをディレクトリの場所からデタッチするには、ディレクトリ・オブジェクトに対するWRITE権限が必要です。

DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMプロシージャを実行して、Autonomous AI Databaseのディレクトリの場所からファイル・システムをデタッチします。このプロシージャを実行するには、ADMINユーザーとしてログインしているか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。

BEGIN
  DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
    file_system_name      => 'NFS'
  );END;
/

この例では、file_system_nameパラメータで指定されたネットワーク・ファイル・システムをAutonomous AI Databaseからデタッチします。このパラメータの値を指定する必要があります。このファイル・システムに関する情報は、DBA_CLOUD_FILE_SYSTEMSビューから削除されます。

関連コンテンツ