MySQL 8.0 Release Notes
MySQL 8.0 Source Code Documentation
InnoDB transaction model aims to combine
the best properties of a
multi-versioning database with
traditional two-phase locking.
locking at the row level and runs queries as nonlocking
consistent reads by
default, in the style of Oracle. The lock information in
InnoDB is stored space-efficiently so that lock
escalation is not needed. Typically, several users are permitted
to lock every row in
InnoDB tables, or any
random subset of the rows, without causing
InnoDB memory exhaustion.