ヘッダーをスキップ
Oracle Textリファレンス
11g リリース1(11.1)
E05789-02
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

5 CTX_ADMパッケージ

この章では、PL/SQLパッケージCTX_ADMの使用方法について説明します。

CTX_ADMには、次のストアド・プロシージャが含まれています。

名前 説明
MARK_FAILED
索引のステータスをLOADINGからFAILEDへ変更します。
RECOVER
削除したテキスト表のデータベース・オブジェクトをクリーン・アップします。
SET_PARAMETER
索引作成のシステム・レベルのデフォルトを設定します。


注意:


CTX_ADMのプロシージャを使用できるのは、CTXSYSユーザーのみです。


MARK_FAILED

このプロシージャを使用して索引のステータスを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を使用する場合は、注意が必要です。これは最後の手段として使用し、索引に影響を与えるセッションが他にない場合にのみ使用するようにしてください。通常、別のセッションでCREATEまたはALTER INDEXを使用して索引を作成中の場合、CTX_ADM.MARK_FAILEDは正常に実行されません。ただし、索引の作成や変更で、CTX_ADM.MARK_FAILEDが正常に実行されたことを示すウィンドウが表示されることがあります。この場合、別のセッションで索引を作成中であっても、索引が失敗としてマーク付けされます。


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);
owner_name

ステータス変更対象索引の所有者名

index_name

ステータス変更対象の索引名

begin
   CTX_ADM.MARK_FAILED('owner_1', 'index_1');
end;

RECOVER

RECOVERプロシージャは、テキスト・データ・ディクショナリをクリーン・アップし、残りのプリファレンスなどのオブジェクトを削除します。

構文

CTX_ADM.RECOVER;

begin
   ctx_adm.recover;
end;

SET_PARAMETER

SET_PARAMETERプロシージャは、索引作成用のシステム・レベルのパラメータを設定します。

構文

CTX_ADM.SET_PARAMETER(param_name IN VARCHAR2,
                      param_value IN VARCHAR2);
param_name

設定するパラメータの名前を指定します。次のいずれかのパラメータを指定できます。

param_value

パラメータに割り当てる値を指定します。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;