MySQL SQL 파서(Parser)와 옵티마이저(Optimizer) 내부 동작 정리
·
데이터베이스
0. 들어가며MySQL을 공부하면서 MySQL 파서와 옵티마이저에 대해 알게 되었습니다.MySQL은 SQL을 그대로 실행하지 않고, 먼저 해석한 뒤 어떤 방식으로 실행할지를 결정합니다. 이 과정이 결국 DB에 큰 영향을 준다는 점이 중요하게 느껴졌습니다. 예전에는 그냥 SQL만 잘 짜면 되는 거 아닌가라는 생각을 했었는데 이 과정을 알고 난 후에는 같은 SQL문이라도 DB 성능을 결정하는 것은 옵티마이저와 파서라는 걸 알게 되었습니다. 그래서 이번 글에서는 MySQL에서 SQL이 처리되는 흐름을 기준으로 파서와 옵티마이저가 각각 어떤 역할을 하고 이 과정이 왜 DB 성능과 직결되는지를 공부하면서 이해한 내용 위주로 정리해보려고 합니다. 1. MySQL에서 SQL이 처리되는 흐름MySQL은 클라이언트로부..