Features of MySQL
ACID · replication · partitioning · JSON · spatial · 50+ storage engines.
MySQL's headline features in 2026: ACID transactions (via InnoDB), row-level locking, MVCC, replication (statement + row + GTID), partitioning, JSON column type, spatial data, window functions (8.0+), CTEs, and 50+ storage engines.
Most features ship out-of-the-box; some (replication, partitioning) require explicit configuration. Storage engines are pluggable — you mix them per table within the same database.
sqlSELECT 'Hello, MySQL!' AS greeting;
(Run in MySQL Workbench or `mysql` CLI — values depend on your data.)
The breadth of features means MySQL can handle anything from a personal blog to a billion-row OLTP shard. Every backend interview will probe at least 3-4 of these.
- ACID transactions via InnoDB.
- Replication — async, semi-sync, group replication (multi-primary).
- JSON column type — query, index, and update JSON natively.
- Window functions + CTEs (since MySQL 8.0).
- Spatial — POINT, POLYGON, GEOMETRY with R-tree indexes.
- Create a table with a
metadata JSONcolumn and query it with->>'$.country'. - Use
ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY created_at)to rank rows. - Set up a basic primary-replica replication between two Docker containers.
- Test your replication failover scenarios in staging — not in prod at 2am.
- Use generated columns + indexes to query into JSON efficiently.
- Window functions can replace many self-joins — usually faster and clearer.
Run any SELECT, INSERT, JOIN or GROUP BY against the seeded users · products · orders tables — your changes are sandboxed and reset whenever you click Reset DB.
// see seed schema (3 tables · 8 users · 8 products · 12 orders)
users (id, name, email, country, age, created_at) products (id, name, price, stock, category) orders (id, user_id → users.id, product_id → products.id, qty, total, created_at)
Each challenge is auto-graded — write the SQL, click Submit answer, and we'll compare your result-set to the canonical one.
Quick recap quiz?
We'll generate 5 MCQs from this lesson and check your understanding instantly. Takes ~30 seconds.
