众所周知MySQL中InnoDB的可重复读是通过MVCC实现的。 MVCC是由哪些元素构成? MVCC的读 又叫快照读,在MySQL中不可能把整个表的数据拷贝一份来提供这个快照。它通过 1、undolog InnoDB增删数据时除了redo log外还会记录undo log。 以update举例: undolog->修改内存中数据页->redolog prepare->binlog-> commit; 修改数据时 undo log记录原始数据。用于以后或许会发生的回滚操作。 2、表中的的隐藏列 data_trx_id,data