一、前言
在上一篇《事务隔离与可重复读的实现原理》中说过,MySQL是用MVCC技术实现了读提交和可重复读隔离级别。
我们都知道,在标准的隔离级别理论中,读提交(RC)能解决脏读问题,可重复读(RR)能解决脏读、不可重复读问题。而在MySQL(InnoDB)中,可重复读(RR)还解决了幻读的问题,具体看以下内容。
初始化用到的表和数据:
CREATE TABLE `t` (
`id` int(11) NOT NULL,
`c` int(11) DEFAULT NULL,
`d` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `c` (`c`)
) ENGINE=InnoDB;
insert into t values(0,0,0),(5,5,5),(10,10,10),(15,15,15),(20,20