텍스트 검색 결과에 영향을 주지 않고 테이블 재인덱스화

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기1분
  • 검색 결과에 부정적인 영향을 주지 않으면서 텍스트 검색 인덱스를 다시 작성합니다. 인덱스 재생성이 수행되는 동안 테이블에서 텍스트 검색을 계속 수행할 수 있습니다.

    시작하기 전에

    필요한 역할: admin

    이 태스크 정보

    이 재인덱싱 메서드는 재작성이 수행되기 전에 전체 텍스트 검색 인덱스를 제거하지 않습니다. 텍스트 검색 테이블 인덱스를 한 번에 하나의 레코드로 다시 작성하고 대상 테이블 계층 구조만 다시 인덱싱합니다. 예를 들어, sc_cat_item 테이블을 선택하면 sc_cat_item 테이블만 다시 인덱싱됩니다.

    프로시저

    1. 다음으로 이동 모두 > 시스템 정의 > 스크립트 - 백그라운드레이블이 표시됩니다.
    2. 스크립트 실행 텍스트 필드에 다음 백그라운드 스크립트를 입력하고, 표시된 것처럼 두 인수를 따옴표로 묶어야 합니다.
      new GlideTextIndexEvent ( ).indexUpdate('tableName', 'emailAddress');
      위치:
      • tableName 은 다시 인덱싱하려는 테이블의 이름입니다.
        주:
        지정된 테이블과 해당 하위 테이블만 다시 인덱싱됩니다.
      • emailAddress 는 테이블 재인덱싱이 완료될 때 이메일 알림을 보내야 하는 주소입니다. 이메일 알림이 없는 경우 null 을 입력합니다.
      예를 들어, kb_knowledge 테이블 텍스트 검색 인덱스를 다시 생성하고 다시 작성이 완료된 후 이메일 알림이 필요하지 않도록 지정하려면 다음 백그라운드 스크립트를 만듭니다.
      new GlideTextIndexEvent ( ).indexUpdate('kb_knowledge', 'null');

      스크립트는 인덱스 처리기가 처리하는 이벤트를 만들어 스크립트가 거의 즉시 완료되도록 합니다.

    3. 스크립트 실행 단추를 선택합니다.

    결과

    시스템은 지정된 테이블에 대한 텍스트 검색을 다시 인덱싱합니다. sys_metadata와 같은 큰 테이블의 경우 다시 인덱싱하는 데 몇 시간이 걸릴 수 있지만 스크립트가 실행되는 동안 테이블에서 텍스트 검색을 계속 수행할 수 있습니다.