美文网首页
innodb中幻读与mvcc和间隙锁分析

innodb中幻读与mvcc和间隙锁分析

作者: 秋名山车神_f776 | 来源:发表于2020-02-07 11:30 被阅读0次

    innodb中幻读的解决到底是依赖间隙锁还是mvcc产生了分歧。
    (事务隔离级别rr)面试官大大认为innodb就是靠mvcc解决的幻读,而我固执的认为绝对是间隙锁解决了这个问题。

    面毕,查了一些资料,并且自己时间之后的分析和结论如下。

    首先读分为:
    快照读
    select * from table where ?;

    当前读:特殊的读操作,插入/更新/删除操作,属于当前读,需要加锁。
    select * from table where ? lock in share mode;
    select * from table where ? for update;
    insert into table values (…);
    update table set ? where ?;
    delete from table where ?;

    对于快照读来说,幻读的解决是依赖mvcc解决。而对于当前读则依赖于gap-lock解决

    相关文章

      网友评论

          本文标题:innodb中幻读与mvcc和间隙锁分析

          本文链接:https://www.haomeiwen.com/subject/jllmxhtx.html