当前位置:   article > 正文

当前读和快照读是什么 区别_快照读和当前读的区别

快照读和当前读的区别

MVCC 的实现,

是通过保存数据在某个时间点的快照来实现的。每个事务读到的数据项都是⼀个历史快照,被称为快照读,不同于当前读的是快照 读读到的数据可能不是最新的,但是快照隔离能使得在整个事务看到的数据都是它启动时的数据状态。

 

当前读

像select lock in share mode( 共享锁),select for update ; update, insert ,delete( 排他锁) 这些操作都是⼀种当前读,为什么叫当前读? 就是它读取的是 记录的最新版本,读取时还要保证其他并发事务不能修改当前记录,会对读取的记录进⾏加锁。

 

快照读

像不加锁的select 操作就是快照读,即不加锁的⾮阻塞读;

快照读的前提是隔离级别不是未提交读和串⾏化级别,因为未提交读总是读取最新的数据⾏,⽽不是符合当前事务版本的数据⾏。⽽串⾏化则会对所有读取的⾏都加锁

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/506185
推荐阅读
相关标签
  

闽ICP备14008679号