This feature thread tracks the evolution of optimizing MySQL performance. Initially, the focus was on addressing rising query times. This post details the successful migration from stock malloc to TCMalloc to reduce lock contention in threaded applications, resulting in a 30% improvement in query performance and a significant decline in thread contention. This post further details the use of MySQL's Performance Schema, specifically `table_io_waits_summary_by_index` and `events_statements_summary` to diagnose performance issues. The upgrade to MySQL 8.0 involved a complex, year-long process of preparing infrastructure, ensuring application compatibility through CI and Codespaces, and executing a gradual, multi-step upgrade plan that prioritized rollback capabilities. Key challenges included managing Vitess clusters, addressing replication delay, and overcoming compatibility issues related to character collations and role management between MySQL 5.7 and 8.0.
All GitHub trails