タスク3: TimesTenデータベースでのユーザーの作成および権限の付与

キャッシュを使用するには、Oracleデータベース・ユーザーの他に、次のTimesTenユーザーを作成する必要があります。



  • TimesTenキャッシュ管理ユーザーがキャッシュ・グループ処理を実行します。TimesTenキャッシュ管理ユーザーは、キャッシュされたOracle Database表にアクセスできるOracleキャッシュ管理ユーザーと同じ名前である必要があります。TimesTenキャッシュ管理ユーザーのパスワードは、同じ名前を持つOracleキャッシュ管理ユーザーとは別のパスワードにすることができます。

  • キャッシュ表を所有する1つ以上のキャッシュ表所有者ユーザー。TimesTenデータベースにキャッシュされるOracle Database表を所有するスキーマ所有者と同じ名前の、TimesTenキャッシュ表を所有するユーザーを作成する必要があります。この図は、Oracleデータベースのsalesスキーマ所有者と同じ名前のsalesというキャッシュ表の所有者を1人示しています。キャッシュ表ユーザーのパスワードは、同じ名前を持つOracle Databaseスキーマ所有者のパスワードとは異なってもかまいません。

インスタンス管理者として、オペレーティング・システム・シェルまたはコマンド・プロンプトからTimesTenインスタンスでttIsqlユーティリティを使用し、cache1 DSNに接続して、Oracleデータベースのデータをキャッシュするために使用するTimesTenデータベースを作成します:

% ttIsql cache1

ttIsqlを使用して、TimesTenでキャッシュ管理ユーザーを作成します。このユーザーに、キャッシュ・グループを作成し、そのキャッシュ・グループに対して操作を実行するために必要な最小限の権限セットを付与します。TimesTenデータベースのキャッシュ・グループを作成、所有および管理するキャッシュ管理ユーザーには、少なくともCREATE SESSIONCACHE_MANAGERおよびCREATE ANY TABLE権限が必要です。次の例では、キャッシュ管理ユーザー名はcacheadminですが、これは以前に作成したOracle Databaseキャッシュ管理ユーザーと同じ名前です:

Command> CREATE USER cacheadmin IDENTIFIED BY ttpwd;
User created.
Command> GRANT CREATE SESSION, CACHE_MANAGER, CREATE ANY TABLE TO cacheadmin;

次に、ttIsqlを使用して、キャッシュ表所有者を作成します。次の例では、キャッシュ表所有者はsalesですが、これはキャッシュされるOracleデータベース表を所有するスキーマ所有者と同じ名前です。また、必要に応じて、salesがTimesTenデータベースに接続できるようにCREATE SESSION権限を付与します。

Command> CREATE USER sales IDENTIFIED BY ttpwd;
User created.
Command> GRANT CREATE SESSION to sales;
Command> exit;
Disconnecting...
Done.

キャッシュ管理ユーザーが必要とする追加権限は、作成するキャッシュ・グループおよびそのキャッシュ・グループに対して実行する処理のタイプによって異なります。これらの必要な権限については、キャッシュ・グループの作成時に説明します。