You run UPDATE orders SET status = 'shipped' WHERE id = 42 and get back "1 row affected" in 2 milliseconds. But what actually happened inside MySQL during those 2 milliseconds?
Click Next Step to follow the UPDATE statement through every layer of InnoDB — from the TCP packet arriving at mysqld all the way to the dirty page being flushed to your .ibd file on disk.
Slow UPDATEs in production?
Book a free 30-minute assessment and I'll help you diagnose the bottleneck — whether it's lock contention, missing indexes, or I/O configuration.
Book Free Assessment →Learn MySQL from the Ground Up
Our free interactive training covers MySQL internals, transactions, indexing, and performance optimization — with animated visualizations and hands-on exercises.
Start Performance & EXPLAIN Module →