テキスト検索結果に影響を与えないテーブルのインデックスの再作成

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:2分
  • 検索結果に悪影響を与えずにテキスト検索インデックスを再ビルドします。インデックスの再生成が行われている間も、テーブルでテキスト検索を続行できます。

    始める前に

    インデックスを再構築するテーブルは、インデックス作成と検索用にすでに構成されている必要があります。この構成プロセスの詳細については、「インデックス作成と検索のためのテーブルの構成」を参照してください。

    必要なロール:admin
    注:
    glide.script_processor.admin システムプロパティの値がデフォルト値から変更されている場合は、そのプロパティ値で指定されたロールが必要です。このプロパティ値とその作用の詳細については、「Restrict access to background script」を参照してください。

    このタスクについて

    このインデックスの再作成メソッドでは、再ビルドが行われる前にテキスト検索インデックス全体が消去されることはありません。テキスト検索テーブルのインデックスを一度に 1 レコードずつ再ビルドし、ターゲットテーブル階層のみインデックスを再作成します。たとえば、sc_cat_item テーブルを選択すると、sc_cat_item テーブルのみインデックスが再作成されます。

    手順

    1. 移動先 すべて > システム定義 > スクリプト - バックグラウンド.
      注:
      glide.script_processor.admin システムプロパティの値が security_admin に設定されている場合、このモジュールにアクセスするには、その特権ロールに昇格する必要があります。特権への昇格方法の詳細については、「Elevated privilege roles」を参照してください。
    2. [スクリプトを実行 (JavaScript はサーバーで実行)] テキストフィールドに、次のバックグラウンドスクリプトを入力します。以下の例ように、両方の引数を必ず引用符で囲んでください。
      new GlideTextIndexEvent ( ).indexUpdate('TABLE_NAME', 'EMAIL_ADDRESS');
      各項目の意味は次のとおりです。
      • TABLE_NAME」は、インデックスを再作成するテーブルの名前です。
        注:
        指定されたテーブルとその子テーブルのみインデックスが再作成されます。
      • EMAIL_ADDRESS」は、テーブルのインデックス再作成が完了したときにメール通知が送信されるアドレスです。メール通知を行わない場合は null と入力します。
      たとえば、kb_knowledge テーブルのテキスト検索インデックスを再生成し、再ビルドの完了後にメール通知が不要であることを指定するには、次のバックグラウンドスクリプトを作成します。
      new GlideTextIndexEvent ( ).indexUpdate('kb_knowledge', 'null');
      スクリプトはインデックスハンドラーが処理するイベントを作成するため、スクリプトはインデックス再作成ジョブの完了時にブロックされることなく完了します。
    3. [スクリプトを実行] を選択します。

    タスクの結果

    指定されたテーブルのテキスト検索のインデックスが再作成されます。sys_metadata のような大きなテーブルの場合、インデックスの再作成には数時間かかることがありますが、スクリプトの実行中にテーブルでテキスト検索を実行することもできます。