DB/Mysql

EXPLAIN 쿼리 실행계획

밍꿔 2019. 12. 24. 09:50


반응형

 

EXPLAIN [EXTENDED | PARTITIONS] SELECT select_options

 

  • SELECT 명령문을 EXPLAIN 앞에 두면, MySQL은 쿼리 실행 플랜 (query execution plan) 정보를 옵티마이저 (optimizer)에서 가져 와서 출력 한다. , MySQL은 테이블들이 어떤 순서로 조인 (join) 하는지에 대한 정보를 포함해서, SELECT를 처리하는 방법에 대해서 알려 준다.

  • EXPLAIN PARTITIONS MySQL 5.1.5부터 사용 가능하다. 이것은 파티션된 테이블을 포함하는 쿼리를 실행할 때에만 유용하다. 즉 테이블의 파티션중 어떤 파티션을 사용했는지 등의 정보를 조회 할 수 있다.

  • EXTENDED 키워드가 사용되면, EXPLAIN은 EXPLAIN 명령문 다음에 SHOW WARNINGS 명령문을 입력해서 볼 수 있는 기타 정보를 리턴한다. 이 정보는 옵티마이저가 SELECT 명령문에 있는 컬럼 이름과 테이블을 얼마나 많이 검증을 하였는지를 보여주며, SELECT는 최적화 과정에 관한 어플리케이션 재 작성과 최적화 규칙, 그리고 다른 가능한 노트 (notes)를 보여준다. MySQL 5.1.12 이후부터는, EXPLAIN EXTENDED 또한 filtered 컬럼을 출력한다.

    (
    동일한 EXPLAIN 명령문에서는 EXTENDED and PARTITIONS 키워드를 함께 사용할 수가 없다.)

 

 

출처 : http://www.mysqlkorea.com/sub.html?mcode=manual&scode=01_1&m_no=22490&cat1=827&cat2=963&cat3=970&lang=k

 

 

 

 

 

 

반응형