Last Updated: May 3, 2026
Locks work, but they force readers and writers to wait for each other. MVCC takes a different approach: instead of blocking, the database keeps multiple versions of each row and lets each transaction work from a consistent snapshot.
This is how PostgreSQL and MySQL deliver isolation without grinding concurrency to a halt.