Where the open source database community meets: Use code PERCONA75 and secure your spot for Percona Live.  Register

The MySQL Query Optimizer Explained Through Optimizer Trace

All major considerations and decisions made by the MySQL Query Optimizer may be recorded in an Optimizer Trace. While EXPLAIN will show the query execution plan the Query Optimizer has decided to use, MySQL’s Optimizer Trace will tell WHY the optimizer selected this plan.

This presentation will introduce you to the inner workings of the MySQL Query Optimizer by showing you examples with Optimizer Trace. We will cover the main phases of the MySQL optimizer and its optimization strategies, including query transformations, data access strategies, the range optimizer, the join optimizer, and subquery optimization. We will also show how optimizer trace gives you insight into the cost model and how the optimizer does cost estimations.

By attending this presentation you will learn how you can use information from Optimizer Trace to write better-performing queries. The presentation will also cover tools that can be used to help process the vast amount of information in an optimizer trace.

Download slides

Far
Enough.

Said no pioneer ever.
MySQL, PostgreSQL, InnoDB, MariaDB, MongoDB and Kubernetes are trademarks for their respective owners.
© 2026 Percona All Rights Reserved