initCacheAdminSchema.sqlスクリプト
Oracleデータベース・オブジェクトを自動作成するには、Oracleデータベース・キャッシュ管理ユーザーに特定の権限が必要です。
キャッシュ管理ユーザーには、次の目的に使用される権限が必要です:
-
特定のキャッシュ環境に関連付けられたTimesTenデータベースの情報の格納。
-
自動リフレッシュを使用したキャッシュ・グループの定義済動作を実行します。この場合、これらのOracleデータベース・オブジェクトを自動的に作成するには、キャッシュ管理ユーザーに特定の権限が必要です。
-
AWTキャッシュ・グループの定義済動作の実行。
セキュリティの目的で、Oracle Databaseオブジェクトの自動作成に必要なCREATE CLUSTER
、CREATE INDEXTYPE
、CREATE OPERATOR
、CREATE PROCEDURE
、CREATE SEQUENCE
、CREATE TABLE
およびEXECUTE ON SYS.DBMS_LOB
パッケージ権限をキャッシュ管理ユーザーに付与しない場合は、initCacheAdminSchema.sql
スクリプトを使用できます。このスクリプトによって付与される権限の詳細リストは、「キャッシュ処理のキャッシュ管理ユーザーに必要な権限」を参照してください。
特定のキャッシュ・グループ・タイプの定義済動作を実行するために使用されるOracle Database表およびトリガーを作成するには、sys
ユーザーとして、SQL*Plusスクリプトtimesten_home
/install/oraclescripts/initCacheAdminSchema.sql
を実行します。これらのオブジェクトは、自動リフレッシュを使用したャッシュ・グループおよびAWTキャッシュ・グループを作成する前に作成する必要があります。initCacheAdminSchema.sql
スクリプトには、キャッシュ管理ユーザー名が入力として必要です。
作成するキャッシュ・グループのタイプおよびキャッシュ・グループやキャッシュ表に対して実行する処理によっては、initCacheAdminSchema.sql
スクリプトの実行によってキャッシュ管理ユーザーに付与される権限の他に、キャッシュされたOracle Database表に対するSELECT
やINSERT
などのユーザー権限を付与することが必要になる場合があります。
sys
ユーザーとして、SQL*Plusを使用し、initCacheAdminSchema.sql
スクリプトを実行して、データのキャッシュの管理に使用されるOracle Databaseオブジェクトを作成します。これらのOracle Databaseオブジェクトは、自動リフレッシュを使用したキャッシュ・グループおよびAWTキャッシュ・グループの定義済動作を実行し、キャッシュ管理ユーザーに制限された権限セットを付与します。次の例では、Oracleデータベース・キャッシュ管理ユーザー名はcacheadmin
です。
SQL> @initCacheAdminSchema "cacheadmin" SQL> exit
自動リフレッシュを使用したキャッシュ・グループにキャッシュされるOracleデータベース表に関連付けられたその他のOracleデータベース・オブジェクトは、これらのキャッシュ・グループ・タイプの定義済動作を実行するために必要になります。自動リフレッシュを使用したキャッシュ・グループを作成するステップの一部として、これらの追加オブジェクトを作成する方法の詳細は、「自動リフレッシュを使用したキャッシュ・グループ用のOracle Databaseオブジェクトの手動作成」を参照してください。
Oracleデータベースのデータのキャッシュを管理するためにTimesTenで作成して使用するOracleデータベース・オブジェクトのリストを表示するには、sys
ユーザーとしてSQL*Plusで次の問合せを実行します:
SQL> SELECT owner, object_name, object_type FROM all_objects WHERE object_name 2 LIKE 'TT\___%' ESCAPE '\';
この問合せでは、キャッシュ管理ユーザーが所有している表、索引およびトリガーのリストが返されます。