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