MySQL 서버에 요청된 쿼리는 결과는 동일하지만 과정은 매우 다양하다. 여러 방법 중에서 최적의 방법은 옵티마이저가 담당한다. 대부분의 DBMS에서는 옵티마이저가 최적의 실행 계획을 수립하는 작업을 한다. 1. 쿼리 실행 절차와 옵티마이저의 종류 1-1. 쿼리 실행 절차 요청된 SQL 문장을 잘개 쪼개서 MySQL 서버가 이해할 수 있는 수준으로 분리(파스 트리)한다. 파싱 정보(파스 트리)를 확인하면서 어떤 테이블부터 어떤 인덱스로 테이블을 읽을지 선택한다. 두 번째 단계에서 결정된 읽기 순서나 인덱스를 활용해서 스토리지로부터 데이터를 가져온다. 첫 번째 단계를 SQL 파싱이라고 하며, SQL 파서라는 모듈로 처리한다. 문법이 잘못됐다면 여기서 걸러지고 아니라면 SQL 파스 트리를 생성한다. MySQ..