• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 1. 데이터 정의 문
    2. 데이터 조작 문
    3. MySQL 트랜잭션과 잠금 문
    4. 복제 문
    5. Prepared Statements위한 SQL 구문
    6. MySQL 복합문 구문
    7. 데이터베이스 관리 문
    1. 계정 관리 문
    2. 테이블 유지 보수 문
    3. 플러그인 및 사용자 정의 함수 문
    4. SET 구문
    5. SHOW 구문
    6. 기타 관리 문
    1. BINLOG 구문
    2. CACHE INDEX 구문
    3. FLUSH 구문
    4. KILL 구문
    5. LOAD INDEX INTO CACHE 구문
    6. RESET 구문
    8. MySQL 유틸리티 문
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

13.7.6.5 LOAD INDEX INTO CACHE 구문

LOAD INDEX INTO CACHE
  tbl_index_list [, tbl_index_list] ...

tbl_index_list:
  tbl_name
    [PARTITION (partition_list | ALL)]
    [[INDEX|KEY] (index_name[, index_name] ...)]
    [IGNORE LEAVES]

partition_list:
    partition_name[, partition_name][, ...] 

LOAD INDEX INTO CACHE 문은 명시적인 CACHE INDEX 문에 의해 할당 된 키 캐시 또는 그렇지 않으면 기본 키 캐시에 테이블 인덱스를 탑재합니다.

LOAD INDEX INTO CACHE 은 MyISAM 테이블에만 사용됩니다. MySQL 5.6에서는 분할 된 MyISAM 테이블에 대해서도 지원됩니다. 또한 분할 된 테이블의 인덱스를 하나 여러 또는 모든 파티션에 탑재 할 수 있습니다.

IGNORE LEAVES 수정 자에 따라 인덱스의 리프가 아닌 노드의 블록 만 탑재됩니다.

IGNORE LEAVES 는 분할 된 MyISAM 테이블에 대해서도 지원됩니다.

다음 문은 테이블 t1 과 t2 의 인덱스 노드 (인덱스 블록)를 탑재하고 있습니다.

mysql> LOAD INDEX INTO CACHE t1, t2 IGNORE LEAVES;
+---------+--------------+----------+----------+
| Table   | Op           | Msg_type | Msg_text |
+---------+--------------+----------+----------+
| test.t1 | preload_keys | status   | OK       |
| test.t2 | preload_keys | status   | OK       |
+---------+--------------+----------+----------+

이 문은 t1 에서 모든 인덱스 블록을 탑재합니다. t2 에서 리프가 아닌 노드의 블록만을 탑재합니다.

LOAD INDEX INTO CACHE 구문은 테이블의 특정 인덱스만을 탑재하도록 지정할 수 있습니다. 현재 구현에서는 테이블의 모든 인덱스를 캐시에 미리로드하는 테이블 이름 이외의 것을 지정하는 이유는 아무것도 없습니다.

MySQL 5.6.11에서만이 문을 발행하기 전에 gtid_next 를 AUTOMATIC 으로 설정해야합니다. (Bug # 16062608, Bug # 16715809, Bug # 69045)

MySQL 5.6에서는 분할 된 MyISAM 테이블의 특정 파티션의 인덱스를 탑재 할 수 있습니다. 예를 들어, 다음 두 명령문은 처음이 분할 된 테이블 pt 파티션 p0 의 인덱스를 탑재하는 반면, 두 번째는 같은 테이블의 파티션 p1 과 p3 의 인덱스를 탑재합니다.

 LOAD INDEX INTO CACHE pt PARTITION (p0);
 LOAD INDEX INTO CACHE pt PARTITION (p1, p3);

테이블 pt 의 모든 파티션의 인덱스를 탑재하려면 다음 두 문장 모두에서 사용할 수 있습니다.

 LOAD INDEX INTO CACHE pt PARTITION (ALL);

 LOAD INDEX INTO CACHE pt;

지금 나와있는 두 개의 문은 같으며이 가운데 어느 쪽을 실행해도 효과는 동일합니다. 즉, 파티션 된 테이블의 모든 파티션의 인덱스를 탑재하는 경우 PARTITION (ALL) 어구는 옵션입니다.

여러 파티션의 인덱스를 탑재 할 경우 해당 파티션이 연속적 필요는없고, 그 이름을 특정 순서로 나열 할 필요도 없습니다.

LOAD INDEX INTO CACHE ... IGNORE LEAVES 테이블의 모든 인덱스 블록 크기가 ​​동일하지 않으면 실패합니다. 테이블의 인덱스 블록 크기는 myisamchk -dv을 사용하고 Blocksize 컬럼을 선택하여 확인할 수 있습니다.

서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved