Oracle® Fusion Middleware Oracle Business Intelligence Discoverer管理者ガイド 11gリリース1 (11.1.1) E51906-01 |
|
前 |
次 |
この章では、サマリー・フォルダと、Discoverer Administratorを使用したサマリー・フォルダの管理方法について説明します。この章の内容は次のとおりです。
Discovererでは、次の2種類のフォルダが使用されます。
フォルダ: データを表します。
Discovererのフォルダは、単一フォルダ、複合フォルダまたはカスタム・フォルダに分類されます。詳細は、第6章「フォルダの作成とメンテナンス」を参照してください。
サマリー・フォルダ: クエリーが行われたデータと、再利用するために保存された結果を表します。
Discovererでは、エンド・ユーザーのクエリー・レスポンス時間を短縮するためにサマリー・フォルダが使用されます。
サマリー・フォルダとは、再利用のために保存されたクエリー済データ(Discoverer Administratorで作成)です。データは、次のいずれかのデータベースに格納されます(OracleのEditionに応じて異なります)。
マテリアライズド・ビュー
Discovererでは、マテリアライズド・ビューを使用して、サマリーに使用するデータがOracle Enterprise Editionデータベースに格納されます。
テーブル
Discovererでは、テーブルを使用して、サマリーに使用するデータがOracle Standard Editionデータベースに格納されます。
サマリーに使用するデータを格納するためにDiscovererで作成されるテーブルをDiscovererサマリー・テーブルと呼びます。Discovererサマリー・テーブルの詳細は、「Discovererサマリー・テーブル」を参照してください。
サマリー・フォルダの利用により、詳細なデータベース・テーブルにクエリーを行うのではなく、事前に集計および結合されたデータにアクセスしてクエリーが行われるため、クエリーのレスポンス時間が短縮されます。
また、Discovererでは、他のアプリケーションで作成されたサマリー・データを含むテーブルに基づくサマリー・フォルダを使用できます。これらのテーブルは、外部サマリー・テーブルと呼ばれます。外部サマリー・テーブルをリフレッシュするようにDiscovererに指定できます。
サマリー・フォルダを作成するには2つの方法があります。
自動サマリー管理(ASM)機能を使用する方法(詳細は、「自動サマリー管理(ASM)」を参照)
手動による方法(詳細は、「手動によるサマリー・フォルダの作成について」を参照)
Discovererでサマリー・フォルダを作成する場合は、自動サマリー管理(ASM)を使用する方法をお薦めします。
Discovererサマリー・テーブルは、Discoverer Administratorによって作成されるデータベース・テーブルで、サマリーに使用するデータが格納されています。Discovererサマリー・テーブルには、事前に集計および結合されたデータが含まれるため、Discoverer PlusとDiscoverer Viewerでのクエリーのパフォーマンスが向上します。
Discovererでは、サマリー・テーブルが使用できる状況が自動的に認識され、サマリー・テーブルを使用するようにクエリーがリライトされます。詳細は、「クエリー・リライト」を参照してください。
たとえば、Discoverer Plusで最初にクエリーが実行されるときは、ディテール・テーブルからデータが検索されます。これには、複数のテーブルの結合および数千、数百万の行の集計が必要になることがあります。この処理にはかなりの時間がかかることがあります。Discovererで適切なサマリー・テーブルが作成されていれば、同じクエリーでサマリー・テーブルからデータが検索され、数秒で結果が返ります。どちらのクエリーでも同じ結果が得られます。
Discovererの詳細およびOracle Standard Editionデータベースでのサマリー・テーブルに対するクエリーのリライトの詳細は、「クエリー・リライトしてサマリー・テーブルを使用する場合の利点を示す例」を参照してください。
注意: マテリアライズド・ビューの作成が不可能なために、Oracleデータベース(Enterprise Editionリリース9.2.0.7以降)に対する実行時にDiscovererサマリー・テーブルが作成される場合もあります。詳細は、「Oracle Enterprise EditionデータベースでEULアイテムにマッピングする場合の外部サマリー・テーブルとビューとの相違点」を参照してください。
マテリアライズド・ビューは、Oracle Enterprise Editionデータベースによって作成されたクエリーの結果を含むデータベース・オブジェクトです。クエリーの結果には、事前に集計および結合されたデータが含まれるため、Discoverer PlusおよびDiscoverer Viewerでのクエリーのパフォーマンスが向上します。
Oracle Enterprise Editionデータベースでは、クエリー・リクエストを満たすためにマテリアライズド・ビューを使用できる場合が自動的に認識されます。データベースでは、マテリアライズド・ビューを使用するようにクエリーがリライトされます。次に、クエリーがマテリアライズド・ビューにダイレクトされますが、基礎となるディテール・テーブルまたはビューにはダイレクトされません。
マテリアライズド・ビューには、次の特性があります。
マテリアライズド・ビューにより記憶域が消費されます。
通常のビューと異なり、マテリアライズド・ビューには1つ以上のディテール・テーブルに対するクエリーの結果データが含まれます。
データ変更時にマテリアライズド・ビューをリフレッシュする必要があります。
Oracleデータベースでは、ディテール・テーブルの変更後にマテリアライズド・ビューをリフレッシュすることで、マテリアライズド・ビューのデータがメンテナンスされます。
この目的でDiscovererを次のように設定できます。
リフレッシュ・タイプを、増分(高速リフレッシュ。ディテール・テーブルの変更分のみがリフレッシュされます)または完全(完全リフレッシュ。データベースによりマテリアライズド・ビューのサブクエリーの定義が行われます)に設定します。
マテリアライズド・ビューがディテール・テーブルと同じデータベースにある場合は、リフレッシュをオンデマンド(Discovererマネージャが手動でメンテナンス)またはコミット時(データベース・トランザクションによって変更がディテール・テーブルにコミットされるたびに実行)に設定します。
マテリアライズド・ビューは、Discovererユーザーにとっては透過的です。
クエリー・リライトにより、ディテール・テーブルに対して表現されたSQL文が、ディテール・テーブルで定義されている1つ以上のマテリアライズド・ビューにアクセスする文に変換されます。詳細は、「クエリー・リライト」を参照してください。
注意
エンド・ユーザーが外部マテリアライズド・ビューを使用するために、外部マテリアライズド・ビューをDiscovererに登録する必要はありません。マテリアライズド・ビューを使用してクエリーを満たすことができるかどうかはデータベースによって認識されます。DiscovererマネージャのかわりにDiscovererでリフレッシュをメンテナンスする場合のみ、外部マテリアライズド・ビューをDiscovererに登録します(外部サマリー・テーブルおよび外部サマリー・ビューの登録の詳細は、「外部サマリー・テーブルに基づくサマリー・フォルダの作成方法」を参照)。
Discoverer PlusのSQLインスペクタおよびEXPLAIN PLANにより、クエリーを実行するために生成されたSQLでサマリー・テーブルまたはマテリアライズド・ビューが使用されたかどうかがユーザーに示されます(詳細は、「DiscovererでのSQLとクエリー・リライトの実行計画の表示」を参照)。
Discovererでのサマリー・テーブルおよびマテリアライズド・ビューの使用に関するこれまでの背景は、「Discovererでのサマリー・テーブルおよびマテリアライズド・ビューの使用の現状と将来」を参照してください。
Discovererサマリー・テーブルとマテリアライズド・ビューの違いは次を参照してください。
自動サマリー管理(ASM)とは、ユーザーにかわってサマリー・フォルダの作成と管理を行うDiscovererの機能です。
ASMにより、サマリー・フォルダ管理のための完全に自動化されたソリューションが提供されるため、サマリー・フォルダの作成とメンテナンスを簡単に行うことができます。ASMを定期的に実行すれば、ユーザーのクエリーからDiscovererで収集されるクエリー統計を使用して作成されるサマリー・フォルダが自動的に詳細化されます。また、ASMにより、サマリー・フォルダの作成またはメンテナンスを行う際にデフォルト値の指定を制御する場合の指針も提供されます。
ASMによる次の処理で、サマリー・フォルダの作成方法が決定されます。
データベース・テーブルの分析
クエリー統計の使用(使用可能な場合)
ASMポリシーと呼ばれるデフォルト値の使用(詳細は、「ASMポリシー」を参照)
ASMでは、前述の処理の組合せに基づいてサマリー・フォルダの最適なセットの作成とメンテナンスが自動的に行われます。
ASMにより、サマリー・ポリシーが、推奨されるサマリー・フォルダ定義のリストに変換されます。他に操作を行わずにこれらの推奨定義を実装するか(サマリー・テーブルの実際のセットがシステム使用状況に応じて動的に調整されます)、あるいは実行を一時中断して、1つ以上の推奨定義を特別に含めることができます。
ASMではサマリー・フォルダを作成するための表領域が必要ですが、サマリー・ウィザードで表領域を調整できます(詳細は、「サマリー・ウィザードを使用したASMの実行方法」を参照)。
注意: ASMは、現在選択されているビジネスエリアのみでなくEUL全体で機能します。したがって、現行のEUL内のすべてのビジネスエリアからのフォルダをASMで使用できます。
ASMでサマリー・フォルダを作成するには、次の前提条件を満たす必要があります。
データベースがPL/SQLをサポートしていること。
サマリー・フォルダの作成とリフレッシュのスケジュールを設定するためにDBMS_JOBパッケージがインストールされていること(詳細は、「サマリー管理のためにDBMS_JOBがインストールされていることを確認する方法」を参照)。
サマリー・フォルダの作成に使用するユーザーIDが次のデータベース権限を持っていること(詳細は、「SQL*Plusを使用してサマリー・フォルダの作成に必要な権限を付与する方法」を参照)。
CREATE TABLE
CREATE VIEW
CREATE PROCEDURE
SELECT ON V_$PARAMETER
CREATE/DROP/ALTER ANY MATERIALIZED VIEW (Oracle Enterprise Editionデータベース)
GLOBAL QUERY REWRITE (Oracle Enterprise Editionデータベース)
ANALYZE ANY
サマリー・フォルダの作成に使用するユーザーIDが、サマリー・テーブルを作成するために十分な表領域割当て制限を持っていること(詳細は、「表領域割当て制限を決定しリセットする方法」を参照)。
EUL所有者としてDiscoverer Administratorに接続していること。
Oracle Enterprise Editionデータベースを使用している場合、フォルダに集合演算子(UNION、UNION ALL、MINUS、INTERSECTなど)を含めないこと。集合演算子を含むフォルダがASMで検出されると、そのフォルダのサマリー・データは作成されません。
注意: Oracleの集合演算子の詳細は、『Oracle Database SQLリファレンス』を参照してください。
注意: Discovererで作成されたデータベース・ユーザーには、サマリー・フォルダを作成するための追加権限が必要になる場合があります。追加権限が必要になる状況の詳細は次の表に示されています。Discovererで作成されたデータベース・ユーザーがサマリー・フォルダを作成するために追加権限を必要とする場合を示しています。
データベース・ユーザーの作成に使用されたDiscovererおよびデータベースのリリース | データベース・ユーザーに、サマリー・フォルダを作成するための追加権限が必要かどうか | 必要なアクション |
---|---|---|
Discoverer 3.1 | データベース・ユーザーには、サマリー・フォルダを作成するための追加権限が必要です。 | 必要な権限をデータベース・ユーザーに明示的に付与する必要があります(これらの権限を付与する方法の詳細は、「SQL*Plusを使用してサマリー・フォルダの作成に必要な権限を付与する方法」を参照)。 |
Discoverer 4iとOracle Standard Editionデータベース | データベース・ユーザーには、サマリー・フォルダを作成するための追加権限が必要です。 | Discoverer 3.1の場合と同じ。 |
Discoverer 4iとOracle Enterprise Editionデータベース | データベース・ユーザーには、サマリー・フォルダを作成するための追加権限は必要ありません。 | 不要 |
次の表は、様々なASM実行方法とその使用状況を示しています。
ASMの実行方法 | この方法でASMを実行する利点 | 参照 |
---|---|---|
サマリー・ウィザードを使用する方法 | すべての処理をDiscovererがガイドします。 | サマリー・ウィザードを使用したASMの実行方法 |
バルク・ロード後にロード・ウィザードを使用する方法 | ASMにアクセスせずに、ビジネスエリアのロード時にサマリー・フォルダを作成できます。 | ロード・ウィザードを使用したバルク・ロード後のASMの実行方法 |
コマンドライン・インタフェースを使用する方法 | Discovererを起動せずに、サマリー・フォルダを作成できます。 | コマンドライン・インタフェースを使用したASMの実行方法 |
バッチ・ファイルとオペレーティング・システムのスケジューラを使用する方法 | コマンドラインによりASMサマリー・フォルダ作成のスケジューリングが自動化されます。 | バッチ・ファイルとオペレーティング・システムのスケジューラを使用したASMの実行方法 |
ASMポリシーは、ユーザー定義の制約とオプションのセットです。このポリシーにより、ASMの動作と、ASMで生成されるサマリー・フォルダを制御できます。
ASMポリシーは、領域オプションと詳細設定に分けられます。多くの場合、領域オプションの設定のみが必要になります。
領域オプションと詳細設定の詳細は、次を参照してください。
Discovererには、ユーザーが操作を行わなくても適切なサマリー・フォルダの作成とメンテナンスが確実に実行されるデフォルト設定があります。
ASMポリシーに必要な最低限の情報は、表領域名と割り当てられたディスク領域です。デフォルトの表領域はユーザー表領域であり、デフォルトのディスク領域が使用されます。これらの値は、必要に応じて変更できます(詳細は、「サマリー・ウィザード(ASM): ステップ3「領域の割当て」ダイアログ」を参照)。
サマリー・テーブルおよびマテリアライズド・ビューとデータベースとの一貫性を保つために、サマリー・データを定期的にリフレッシュする必要があります。またデータベースが頻繁に変更される場合は、基礎となるデータベースとデータの同期を保つために、サマリー・テーブルとマテリアライズド・ビューをリフレッシュする必要があります。
サマリー・フォルダ・リフレッシュの詳細は、次を参照してください。
注意: 変更が行われた後で(データ・ウェアハウスへのデータのロードなど)、サマリー・フォルダをリフレッシュすると有益な場合があります。Discovererのコマンドライン・インタフェース機能を使用して、サマリー・フォルダを自動的にリフレッシュできます(詳細は、第22章「Discovererコマンドライン・インタフェース」を参照)。
サマリー・フォルダのリフレッシュ時(Oracle Enterprise Editionデータベースへの実行時)には、リフレッシュ設定に応じてデータベース・サーバー自体のリフレッシュ機能が使用されます(増分リフレッシュの場合もあります)。
サマリー・フォルダのリフレッシュ時には、Discovererにより次の処理が実行されます。
サマリー・フォルダが使用不可とマークされます。
サマリー・フォルダに関連付けられたマテリアライズド・ビューまたはサマリー・テーブルがEULメタデータにあわせて調整され、必要に応じて定義が更新されます。
リフレッシュされる既存のサマリー・データがすべて削除されます。
サマリー・データが再生成され、対応するマテリアライズド・ビューまたはサマリー・テーブルに挿入されます。
サマリー・フォルダが使用可能とマークされます。
ASMを実行するには、特定のデータベース権限が必要です(ASMを実行するために必要な権限の詳細は、「ASMでサマリー・フォルダを作成するための前提条件」を参照)。
「サマリー・ウィザード」ダイアログの詳細を指すヘッダーのリストを表示するには、「サマリー・ウィザード(ASM): ダイアログのリスト」を参照してください。
サマリー・ウィザードを起動する手順は、次のとおりです。
「挿入」→「サマリー」を選択すると、「サマリー・ウィザード: ステップ1」ダイアログが表示されます。
「Discovererの推奨するサマリーを作成」オプションを選択し、「次へ」をクリックして、「サマリー・ウィザード: ステップ2」ダイアログを表示します。
注意: Discovererでは、作成するサマリー・フォルダを決定するために、サマリー・フォルダ処理にかかわるすべてのフォルダが分析されます。分析されるフォルダの数とサイズによっては、この処理に時間がかかることがあります。Discovererでは、この処理の開始と停止をユーザー自身が決定できます。
「開始」ボタンをクリックして分析を開始します。
分析処理中に進行状況が表示されます。
(オプション)「停止」ボタンをクリックすれば、分析を中断できます。
(「詳細」ボタンを使用して)デフォルト設定を変更するために分析を中断し、その後にテーブルの分析を再開する場合があります。
(オプション)「続行」ボタンをクリックすれば、分析を再開できます。
分析は、常に、処理中に「停止」ボタンがクリックされたのと同じ時点から再開されます。
注意: 分析できないフォルダがある場合は、「分析されませんでした。」ダイアログが表示されます。
分析が完了した後、「次へ」をクリックしてサマリーに領域を割り当てます。
サマリー・フォルダに割り当てられた領域から予測されるパフォーマンスが、グラフに描画されます。
ここで表示される情報がフォルダ分析時に計算されます(前の手順を参照)。「デフォルト設定の変更」ダイアログのいずれかのタブを使用して変更を行うと、Discovererによりグラフが再計算されることがあります。
設定の詳細は、「サマリー・ウィザード(ASM): 「デフォルト設定の変更」ダイアログ: ダイアログのタブのリスト」を参照してください。
「サマリーの使用する表領域」リスト・ボックスで、サマリー・データを格納する表領域を選択します。
注意: サマリー・データは、そのために特別に用意された別の表領域に配置することをお薦めします。そのような表領域がない場合でも、SYSTEMまたはTEMP表領域を使用しないことをお薦めします。詳細はデータベース管理者に問い合せてください。
次のいずれかの方法で、サマリー・データに割り当てる領域を指定します。
グラフをクリックし、ポインタまたは赤い線をドラッグして、サマリーに割り当てる領域を選択します。
「サマリー作成に使用する容量」フィールドで数字を指定します。
注意: 「サマリーの使用する表領域」フィールドの下の値は、「サマリー作成に使用する容量」フィールドで指定した値を下回ることがあります。この場合でも、表領域が自動拡張に設定されていれば問題ありません。表領域が自動拡張に設定されている場合、必要な領域がデータベースに自動的に追加されます。表領域が自動拡張に設定されていない場合、「領域(KB)」の値は使用可能領域未満である必要があります。
(オプション)ユーザーにかわってASMにより作成または削除されるサマリー・フォルダを表示するには、「推奨サマリー」ボタンをクリックします。
推奨サマリーの詳細は、「「推奨サマリー」ダイアログ」を参照してください。
(オプション)「デフォルト設定の変更」ダイアログを表示するには、「詳細」ボタンをクリックします。
詳細設定の詳細は、「サマリー・ウィザード(ASM): 「デフォルト設定の変更」ダイアログ: ダイアログのタブのリスト」を参照してください。
「終了」をクリックすると、現在の設定に基づいてサマリー・フォルダが生成されます。
これらの設定には、「推奨サマリー」ダイアログまたは「デフォルト設定の変更」ダイアログで行われた設定が含まれます。
注意
現行のEUL内のサマリー・フォルダをすべて表示するには、「ワークエリア」の「サマリー」タブを表示します。
ロード・ウィザードを使用してビジネスエリアを現行のEULにロードするとき、この新規ビジネスエリア用のサマリー・フォルダ・セットを作成するかどうかを選択できます。このオプションを選択すると、適切なサマリーがバルク・ロード後に作成されます。
ロード・ウィザードを使用してバルク・ロード後にASMを実行する手順は、次のとおりです。
「挿入」→「ビジネスエリア」→「データベースから新規ビジネスエリアを作成」を選択して、ロード・ウィザードを起動します(ロード・ウィザードの使用方法の詳細は、「ロード・ウィザード」を参照)。
「ロード・ウィザード: ステップ4」ダイアログで、オプション「作成されたフォルダをベースとしたサマリー」をクリックします。
詳細は、「「ロード・ウィザード: ステップ4」ダイアログ」を参照してください。
注意
ビジネスエリアのバルク・ロード時に作成されるサマリー・フォルダは、テーブルの分析とデフォルトのサマリー・ポリシーにより導出されます。
ASMポリシーの詳細は、「ASMポリシー」を参照してください。
バルク・ロード処理でデータベース・テーブルがロードされた直後には、クエリー統計を利用できません。Discovererをしばらく使用すると、クエリー統計が収集されます。クエリー統計が使用可能になると、ASMでクエリー統計が利用されてより適切なサマリー・フォルダが作成されます。
バルク・ロードのASM処理に対するサマリー・ポリシーを変更する必要はありません。使用されるデフォルト設定で十分です。ただし、変更した場合は、それらの設定がデフォルトになります。
コマンドライン・インタフェースを使用してASMを実行する手順は、次のとおりです。
「スタート」メニューから「ファイル名を指定して実行」を選択します。
適切なコマンドを入力します。
コマンドライン・インタフェースの詳細は、第22章「Discovererコマンドライン・インタフェース」を参照してください。ASMコマンドとコマンド修飾子の詳細は、「/asm」を参照してください。
オペレーティング・システムのバッチ・ファイル機能またはスケジューラ機能を利用してASMを実行できます。この方法では、処理を繰り返す場合のスケジュールされた間隔など、ASMを実行する時期を指定します。
バッチ・ファイル内でコマンドライン構文を使用すれば、夜間または週末に自動的に処理できます。
バッチ・ファイルからASMを実行する前に、次の2つの処理が必要です。
テキスト・エディタ(メモ帳など)でテキスト・ファイルを作成します。
適切なコマンドライン構文で、バッチ・ファイルにテキストとしてコマンドラインの詳細を入力します。
ASMコマンドライン構文の詳細は、「/asm」を参照してください。
.bat
という拡張子を付けて(たとえば、asmsched.batという名前で)ファイルを保存します。
適切なオペレーティング・システムのコマンドを使用して、バッチ・ファイルのスケジュールを設定します。
バッチ・ファイルのスケジュールを設定する方法は、オペレーティング・システムのドキュメントまたはヘルプを参照してください。
Discovererのサマリー管理機能では、Oracleデータベース管理システム(DBMS)の機能が使用されます。この機能では、ワークブック・スケジュール機能と同じスケーラブルで信頼性の高い処理手順が使用されており、両方の機能の設定は似ています。これらの手順では、DBMS_JOBと呼ばれるDBMSの標準パッケージが使用されます。
次の作業を確認すれば、Discovererでサマリー管理の処理手順を有効にできます。
サマリー管理のためにDBMS_JOBがインストールされていることを確認する手順は、次のとおりです。
SQL*Plusを起動し(まだ実行されていない場合)、データベース管理者として接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT dba_user/dba_pw@database;
dba_userはデータベース管理者、dba_pwはデータベース管理者のパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> select * from all_objects where object_name='DBMS_JOB' and object_type = 'PACKAGE';
文によって行が返されない場合は、データベース管理者として必要なパッケージを作成します。
DBMS_JOBをインストールし、サマリー管理に必要なパッケージを作成する手順は次のとおりです(リリース9.2.0.7以降のOracleデータベースの場合)。
SQL*Plusを起動し(まだ実行されていない場合)、SYSユーザーあるいはSYSDBA権限を付与されたユーザーとして接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT sys/sys_pw@database AS SYSDBA;
sysはSYSユーザー、sys_pwはSYSユーザーのパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> start <ORACLE_HOME>/rdbms/admin/dbmsjob.sql; SQL> start <ORACLE_HOME>/rdbms/admin/prvtjob.plb;
SQL*Plusを使用して、次の方法でサマリー・フォルダの作成に必要な権限を付与できます。
注意
後述の<user>は、Discoverer Administratorを使用する管理者のデータベース・ユーザーを示しています。
SQL*Plusを使用してサマリー・フォルダの作成に必要な権限を手動で付与する方法
SQL*Plusを使用して、サマリー・フォルダの作成に必要な権限を手動で付与する手順は次のとおりです(リリース9.2.0.7以降のOracleデータベースの場合)。
SQL*Plusを起動し(まだ実行されていない場合)、SYSユーザーあるいはSYSDBA権限を付与されたユーザーとして接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT sys/sys_pw@database AS SYSDBA;
sysはSYSユーザー、sys_pwはSYSユーザーのパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> grant CREATE TABLE to <user>; SQL> grant CREATE VIEW to <user>; SQL> grant CREATE PROCEDURE to <user>; SQL> grant CREATE ANY MATERIALIZED VIEW to <user>; SQL> grant DROP ANY MATERIALIZED VIEW to <user>; SQL> grant ALTER ANY MATERIALIZED VIEW to <user>; SQL> grant GLOBAL QUERY REWRITE to <user> with admin option; SQL> grant ANALYZE ANY to <user>; SQL> grant SELECT ON V_$PARAMETER to <user>;
注意: SELECT ON v_$parameterを付与するには、SYSユーザーとしてログインする必要があります。SYSユーザーとしてログインできない場合、またはSYSのユーザー名とパスワードが不明な場合は、データベース管理者に問い合せてください。
SQL*Plusとeulasm.sqlスクリプトを使用してサマリー・フォルダの作成に必要な権限を付与する方法
SQL*Plusとeulasm.sqlスクリプトを使用してサマリー・フォルダの作成に必要な権限を付与する手順は、次のとおりです。
SQL*Plusを起動し(まだ実行されていない場合)、データベース管理者として接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT dba_user/dba_pw@database;
dba_userはデータベース管理者、dba_pwはデータベース管理者のパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> @'<ORACLE_HOME>\discoverer\util\eulasm.sql'
スクリプトによりプロンプトが表示されたら、このスクリプトで権限を付与するデータベース・ユーザーを入力します。
ENTER value for username: <username>
注意: SELECT ON v_$parameterを付与するには、SYSユーザーとしてログインする必要があります。SYSユーザーとしてログインできない場合、またはSYSのユーザー名とパスワードが不明な場合は、データベース管理者に問い合せてください。
SQL*Plusを起動し(まだ実行されていない場合)、SYSユーザーあるいはSYSDBA権限を付与されたユーザーとして接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT sys/sys_pw@database AS SYSDBA;
sysはSYSユーザー、sys_pwはSYSユーザーのパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> grant SELECT ON V_$PARAMETER to <user>;
データベース・ユーザーは、サマリー・テーブルを作成するために十分なデフォルト表領域割当て制限を持っている必要があります。必要な場合は、次の作業により表領域割当て制限を決定できます。
表領域割当て制限を決定する手順は次のとおりです(リリース9.2.0.7以降のOracleデータベースの場合)。
SQL*Plusを起動し(まだ実行されていない場合)、SYSユーザーあるいはSYSDBA権限を付与されたユーザーとして接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT sys/sys_pw@database AS SYSDBA;
sysはSYSユーザー、sys_pwはSYSユーザーのパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> select * from dba_ts_quotas where username = <user>;
<user>はDiscoverer Administratorを使用する管理者のユーザーIDを示しています。
表領域割当て制限をリセットする手順は、次のとおりです。
次のSQL文を実行して表領域割当て制限をリセットします。
SQL> alter user <user> quota <n> on <tablespace>;
<user>はDiscoverer Administratorを使用する管理者のユーザーIDを示しています。
<n>は、割当ての単位K (KB)、M (MB)またはU (無制限)を示しています。
<tablespace>は、デフォルトの表領域名(USERSなど)を示しています。
ユーザーは、ユーザー名と同じ名前のオブジェクトをスキーマ内に持つことはできません。この作業は、データベース・ユーザー名と同じ名前のオブジェクトをスキーマ内で検索する方法を示しています。
ユーザー名と同じ名前のオブジェクトがスキーマ内にあるかどうかを確認する手順は、次のとおりです。
SQL*Plusを起動し(まだ実行されていない場合)、データベース・ユーザーとして接続します。
SQL*Plusがすでに実行されている場合は、コマンド・プロンプトで次のように入力します。
SQL> CONNECT jchan/tiger@database;
jchanはデータベース・ユーザー、tigerはデータベース・ユーザーのパスワードです。
コマンド・プロンプトで次のように入力します。
SQL> select object_name from user_objects where object_name = <user>;
<user>はSQL*Plusに接続するログインの場合と同じです。