대이터베이스의 주 목적: 많은 데이터를 안전하게 보관하고 빠르게 조회한다. 이러한 목적을 위해 옵티마이저가 사용자 쿼리가 최적으로 처리되도록 실행 계획을 수립할 수 있어야한다. EXPLAIN 명령으로 옵티마이저가 수립한 실행 계획을 확인할 수 있다. 10.1 통계 정보 MySQL 5.7 버전까지는 테이블과 인덱스에 대한 개괄적인 정보를 가지고 실행 계획을 수립했다. 그런데 이는 테이블 칼럼의 값이 어떻게 분포되는지 정보가 없으모로 실행 계획의 정확도가 떨어지는 경우가 많았다. 그래서 8.0 버전부터는 인덱스되지 않은 칼럼들에 대해서도 데이터 분포도를 수진해서 저장하는 히스토그램(Histogram) 정보가 도입됐다. 10.1.1 테이블 및 인덱스 통계 정보 비용 기반 최적화에서 가장 중요한 것은 통계 정보..