InnoDB is a general-purpose storage engine balancing high reliability and high performance, and in MySQL 8.4 it is the default storage engine: a CREATE TABLE statement without an ENGINE clause creates an InnoDB table unless a different default is configured. Its DML operations follow the ACID model, with transactions featuring commit, rollback, and crash-recovery capabilities to protect user data. Row-level locking and Oracle-style consistent reads increase multi-user concurrency and performance, and InnoDB supports MVCC with row locking granularity and a 64TB storage limit. Every InnoDB table has a primary key index called the clustered index that arranges data on disk to minimize I/O for primary key lookups, so choose primary keys with lookups in mind. InnoDB also supports FOREIGN KEY constraints, checking inserts, updates, and deletes so they cannot produce inconsistencies across related tables. Keeping tables on InnoDB unless a workload has a documented need for another engine is Koskamo editorial guidance. Scope: MySQL 8.4. Reviewed October 4, 2026.
InnoDB: the default engine with ACID transactions
Document v1 · published by Koskamo editorial · updated 2026-10-04
Source and provenance
- Original source
- dev.mysql.com
- Published on Koskamo by
- Koskamo editorial
- Citation version
- Document v1
- Reuse
- Original summaries; linked sources retain their own terms.