この章では、PL/SQLパッケージCTX_ADMの使用方法について説明します。
CTX_ADMには、次のストアド・プロシージャが含まれています。
| 名前 | 説明 |
|---|---|
| MARK_FAILED |
索引のステータスをLOADINGからFAILEDへ変更します。 |
| RECOVER |
削除したテキスト表のデータベース・オブジェクトをクリーン・アップします。 |
| SET_PARAMETER |
索引作成のシステム・レベルのデフォルトを設定します。 |
|
注意: CTX_ADMのプロシージャを使用できるのは、CTXSYSユーザーのみです。 |
このプロシージャを使用して索引のステータスをLOADINGからFAILEDへ変更します。
まれに、CREATE INDEXまたはALTER INDEXに失敗すると、索引のステータスがLOADINGのままになる場合があります。索引のステータスがLOADINGになると、RESUME INDEXを使用してリカバリしようとしてもブロックされます。このような場合は、RESUME INDEXで索引をリカバリできるように、CTX_ADM.MARK_FAILEDを使用してステータスをLOADINGからFAILEDに強制的に変更します。
CTX_ADM.MARK_FAILEDを実行するには、CTXSYSとしてログオンする必要があります。
|
注意:
|
CTX_ADM.MARK_FAILEDはローカル・パーティション索引で機能します。ただし、すべてのパーティションのステータスがFAILEDに変更されます。したがって、CTX_ADM.MARK_FAILEDを使用した後は、ALTER INDEX REBUILD PARTITION PARAMETERS ('RESUME')を使用してすべての索引パーティションを再構築する必要があります。この操作の後にALTER INDEX PARAMETER ('RESUME')を実行すると、索引パーティションのステータスが有効にリセットされます。MARK_FAILED操作の前に正常に構築された索引パーティションは、再構築されません。
構文
CTX_ADM.MARK_FAILED( owner_name in VARCHAR2, index_name in VARCHAR2);
ステータス変更対象索引の所有者名
ステータス変更対象の索引名
例
begin
CTX_ADM.MARK_FAILED('owner_1', 'index_1');
end;
RECOVERプロシージャは、テキスト・データ・ディクショナリをクリーン・アップし、残りのプリファレンスなどのオブジェクトを削除します。
構文
CTX_ADM.RECOVER;
例
begin ctx_adm.recover; end;
SET_PARAMETERプロシージャは、索引作成用のシステム・レベルのパラメータを設定します。
構文
CTX_ADM.SET_PARAMETER(param_name IN VARCHAR2,
param_value IN VARCHAR2);
設定するパラメータの名前を指定します。次のいずれかのパラメータを指定できます。
max_index_memory(索引付けに使用可能な最大メモリー)
default_index_memory(索引付けに割り当てられたデフォルトのメモリー)
log_directory(CTX_OUPUTファイル用ディレクトリ)
ctx_doc_key_type(CTX_DOCプロシージャ用のデフォルトの入力キー型)
file_access_role(FILEまたはURLデータストアを使用する場合の索引作成用のデフォルトのデータベース・ロール名)
default_datastore(デフォルトのデータストア・プリファレンス)
default_filter_file(ファイルに格納されているデータ用のデフォルトのフィルタ・プリファレンス)
default_filter_text(デフォルトのテキスト・フィルタ・プリファレンス)
default_filter_binary(デフォルトのバイナリ・フィルタ・プリファレンス)
default_section_html(デフォルトのhtmlセクション・グループ・プリファレンス)
default_section_xml(デフォルトのxmlセクション・グループ・プリファレンス)
default_section_text(デフォルトのテキスト・セクション・グループ・プリファレンス)
default_lexer(デフォルトのレクサー・プリファレンス)
default_wordlist(デフォルトのワードリスト・プリファレンス)
default_stoplist(デフォルトのストップリスト・プリファレンス)
default_storage(デフォルトの記憶域プリファレンス)
default_ctxcat_lexer
default_ctxcat_stoplist
default_ctxcat_storage
default_ctxcat_wordlist
default_ctxrule_lexer
default_ctxrule_stoplist
default_ctxrule_storage
default_ctxrule_wordlist
パラメータに割り当てる値を指定します。max_index_memoryおよびdefault_index_memoryの場合、指定する値は次の構文になります。
number[K|M|G]
KはKB(キロバイト)、MはMB(メガバイト)、GはGB(ギガバイト)を表します。
その他の各パラメータに対しては、プリファレンス名を指定し、索引付けのデフォルトとして使用します。
例
begin
ctx_adm.set_parameter('default_lexer', 'my_lexer');
end;