Oracle Databaseユーザーおよびデフォルト表領域の作成

キャッシュ処理に関するメタ情報を格納するデフォルト表領域を作成します。TimesTenデータベース用のキャッシュ環境の管理および特定のキャッシュ・グループ・タイプの定義済動作の実行に使用される情報を格納するOracleデータベース・オブジェクトを作成、所有および保守するキャッシュ管理ユーザーを作成します。

Oracle Databaseで次の手順を実行します。

ノート:

トランザクション処理ワークロード・タイプにOracle Autonomous Database Serverlessまたは専用Exadata Infrastructure上のOracle Autonomous Databaseを使用している場合は、事前構成済のデータベース・サービスLOWまたはTPを使用します。また、マルチテナント・コンテナ・データベース(CDB)またはプラガブル・データベース(PDB)を使用している場合は、キャッシュ管理ユーザーを作成し、CDBまたはPDBでこのユーザー権限を付与する方法については、次の特有の手順に注意してください。

  1. キャッシュ処理に関する情報を格納するデフォルト表領域を作成します。

    この表領域は、他のアプリケーションと共有しないキャッシュ管理オブジェクトの格納に使用されます。TimesTenデータベースにキャッシュされるOracleデータベース表も格納できますが、キャッシュ管理のために、この表領域をTimesTenデータベースのみで使用することをお薦めします。

    キャッシュ管理ユーザーが使用するOracle Database表のリストは、「Oracle Databaseオブジェクトによるキャッシュ環境の管理」を参照してください。

    次のSQL*Plusの例では、デフォルトの表領域はcachetblspで、tt_cache.fという名前の5GBのデータ・ファイルを定義します。特定のニーズに適したサイズを選択します。Oracle Databaseで表領域内のすべてのセグメントの空き領域が自動的に管理されるように、SEGMENT SPACE MANAGEMENT AUTO句を指定します(自動リフレッシュの監視に役立ちます)。

    ノート:

    この例でのsys@tnsservicename as sysdbaユーザーの使用は、テスト環境にのみ適用されます。

    % cd timesten_home/install/oraclescripts
    % sqlplus sys@tnsservicename as sysdba
    Enter password: password

    sys@tnsservicenameユーザーは必要な権限を付与できるため、この例では、sys@tnsservicename as sysdbaユーザーを使用します。トランザクション処理ワークロード・タイプには、かわりにadminユーザーを使用します。適切な権限がある任意のOracleデータベース・ユーザーを使用できます。「キャッシュ処理のキャッシュ管理ユーザーに必要な権限」を参照してください。

    非自律型Oracle Databaseの場合は、SQL*Plusを使用してデフォルトの表領域を作成します。次の例では、デフォルトの表領域の名前をcachetblspとしています。

    SQL> CREATE TABLESPACE cachetblsp DATAFILE 'tt_cache.f' SIZE 5G 
     SEGMENT SPACE MANAGEMENT AUTO;
    
    Tablespace created.

    Autonomous Transaction Processingでは、このステップをスキップします。Autonomous Transaction Processingは、データベースのデフォルト・データ表領域および一時表領域を自動的に構成します。表領域を追加、削除または変更することはできません。Autonomous Transaction Processingは、ストレージ・サイズに応じて1つ以上の表領域を自動的に作成します。

  2. TimesTenデータベース用のキャッシュ環境の管理および特定のキャッシュ・グループ・タイプの定義済動作の実行に使用される情報を格納するOracle Databaseオブジェクトを作成、所有および保守するOracleキャッシュ管理ユーザーを作成します。

    マルチテナント・コンテナ・データベース(CDB)またはプラガブル・データベース(PDB)を使用している場合、Oracleキャッシュ管理者ユーザーは次のいずれかになります:

    • ローカル・ユーザー: ローカル・ユーザーは、単一のPDB内でのみ操作できるデータベース・ユーザーです。このユーザーが存在するPDB内でのみキャッシュ権限を割り当てる必要があります。

    • 共通ユーザー: 共通ユーザーは、すべてのコンテナで認識されるデータベース・ユーザーで、CBDルートとCDB内の既存および将来のすべてのPDBで同じIDを持ちます。キャッシュを使用するCDBの各PDB内でキャッシュ権限を割り当てる必要があります。

    ノート:

    各TimesTenデータベースは、Oracle Databaseの1人のキャッシュ管理ユーザーによってのみ管理が可能です。ただし、1人のキャッシュ管理ユーザーは、複数のTimesTenデータベースを管理できます。1人以上のキャッシュ管理ユーザーを指定できますが、その場合は、それぞれが1つ以上のTimesTenデータベースを管理します。

    「2つ以上のTimesTenデータベースにおける同じOracle表のキャッシュ」を参照してください。

    表領域をOracleキャッシュ管理ユーザーのデフォルトの表領域として指定します。このユーザーは、この表領域にキャッシュ環境およびそのキャッシュ・グループの情報を格納するために使用される表を作成します。その他のOracle Databaseオブジェクト(変更ログ表、レプリケーション・メタデータ表、トリガーなど)は自動リフレッシュを使用したキャッシュ・グループの定義済動作の実行に使用され、AWTキャッシュ・グループは同じ表領域に作成されます。これらのオブジェクトを作成および管理するには、Oracleキャッシュ管理ユーザーが高レベルの権限を持っている必要があります。自動リフレッシュを使用したキャッシュ・グループとは、AUTOREFRESH MODE INCREMENTALキャッシュ・グループ属性を使用する読取り専用キャッシュ・グループまたはユーザー管理キャッシュ・グループのことです。

    キャッシュ管理ユーザーが所有するOracle Database表およびトリガーのリストは、「Oracle Databaseオブジェクトによるキャッシュ環境の管理」を参照してください。

    ノート:

    複数のキャッシュ管理ユーザーを作成する場合は、各キャッシュ管理ユーザーは、デフォルトの表領域として同じまたは別の表領域を使用できます。

    sysユーザーとして、SQL*Plusを使用してOracleデータベース・キャッシュ管理ユーザーcacheadminを作成します。次の例では、cacheadminユーザーのデフォルトの表領域はcachetblspです。

    非自律型Oracle Databaseの場合、次のSQL*Plus例ではキャッシュ管理ユーザーを作成します:

    SQL> CREATE USER cacheadmin IDENTIFIED BY orapwd
        DEFAULT TABLESPACE cachetblsp QUOTA UNLIMITED ON cachetblsp;

    Autonomous Transaction Processingの場合、次のSQL*Plus例ではキャッシュ管理ユーザーを作成します:

    SQL> CREATE USER cacheadmin IDENTIFYED BY orapwd
        QUOTA UNLIMITED ON DATA;
  3. TimesTenデータベースにキャッシュされるOracleデータベース表を所有するスキーマ所有者とともに、1つ以上の既存のスキーマを特定(または新しいスキーマを作成)します。キャッシュされる表は、新規でも既存でもかまいません。