在MySQL读取数据时可以按照是否使用一致性非锁定读来分为快照读和当前读:

1、快照读:MySQL使用MVCC (Multiversion Concurrency Control)机制来保证被读取到数据的一致性,读取数据时不需要对数据进行加锁,且快照读不会被其他事物阻塞。

2、当前读:也称锁定读(locking read),通过对读取到的数据(索引记录)加锁来保证数据一致性,当前读会对所有扫描到的索引记录进行加锁,无论该记录是否满足WHERE条件都会被加锁。

在读提交和可重复读两种事务隔离级别下,普通的SELECT操作使用“快照读”,不会对数据加锁,也不会被事务阻塞。

在读提交和可重复读两种事务隔离级别下,使用“当前读”的操作包括:

1、SELECT LOCK IN SHARE MODE

2、SELECT FOR UPDATE

3、DELETE\UPDATE\INSERT INTO\REPLACE INTO

在可重复读事务隔离级别下,“当前读”读取到的时数据库最新的数据,而“快照读”读取到的数据是事务中第一次建立ReadView时的数据+事务中修改的数据。

mysql快照读取_MySQL 快照读和当前读相关推荐

  1. mysql的快照速度_mysql 快照读 当前度

    innodb的默认事务隔离级别是rr(可重复读).它的实现技术是mvcc.基于版本的控制协议.该技术不仅可以保证innodb的可重复读,而且可以防止幻读.但是它防止的是快照读,也就是读取的数据虽然是一 ...

  2. mysql sharding 读取_MySQL读写分离(一)——sharding-jdbc

    sharding-sphere是强大的读写分离.分表分库中间件,sharding-jdbc是sharding-sphere的核心模块.官方网站 springboot项目中集成sharding-jdbc ...

  3. jdbc mysql emoji 读取_mysql+jdbc的emoji异常问题

    就是mysq支持emoji编码的问题,我已经按照这篇文章:mysql/Java服务端对emoji的支持所说的办法升级mysql和connector但问题还是没解决,希望高手指点. mysql 版本:5 ...

  4. mysql longblob 读取_MySQL数据库之Mysql的longblob字段插入数据问题解决

    本文主要向大家介绍了MySQL数据库之Mysql的longblob字段插入数据问题解决 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 在使用mysql的过程中,有个问题就是my ...

  5. mysql 快照 理解_MySQL - 当前读和快照读

    当前读和快照读 InnoDB 给每一个事务生成一个唯一事务 ID 的方法称为生成快照,因此这种场景称为快照读. 但是对于更新数据不能使用快照读,因为更新数据时如果使用快照读会可能会覆盖其他事务的更改. ...

  6. mysql 快照读 幻读,InnoDB的MVCC如何解决不可重复读和快照读的幻读,当前读用next-key解决幻读...

    InnoDB默认的隔离级别是RR(可重复读),可以解决脏读和不可重复读,只解决了快照读情况下的幻读问题,当前读情况下解决幻读问题得靠next-key锁. mysql如何实现避免幻读: 在快照读读情况下 ...

  7. MySQL怎么运行的系列(十一)快照读、锁定读、半一致性读 和 加锁语句分析

    本系列文章目录 展开/收起 MySQL怎么运行的系列(一)mysql体系结构和存储引擎 MySQL怎么运行的系列(二)Innodb缓冲池 buffer pool 和 改良版LRU算法 Mysql怎么运 ...

  8. Mysql快照读和当前读

    快照读   读取的是记录数据的可见版本(可能是过期的数据),不用加锁 当前读   读取的是记录数据的最新版本,并且当前读返回的记录都会加上锁,保证其他事务不会再并发的修改这条记录   概念说的比较虚, ...

  9. mysql rr 更新失败_RR 级别下 update 操作的是快照读还是当前读?

    我们知道在 RR 级别下,重复的 select 操作,读取的值都会是一致的.即便在两次 select 操作的中间,有一个事务 B 修改了值,但是在事务 A 中 select 读取的值还是一致的. 那么 ...

最新文章

  1. Linux的awk命令使用心得
  2. SAP CRM one order Appointment table
  3. java 一个大事务下的新增、修改、查询_一文带你轻松搞懂事务隔离级别(图文详解)...
  4. redis集群 + 哨兵 + zookeeper_Redis05——Redis Cluster 如何实现分布式集群
  5. lorenz系统simulink仿真_simulink控制系统仿真之控制系统的分析方法(2)(频域分析法)...
  6. 《Kotlin 极简教程 》第5章 集合类
  7. VS2010下安装Cocos2dx完整教程(原)
  8. formdata 接受参数中带有class 对象_浅析JAVA中的反射机制及对Servlet的优化
  9. 一次线上商城系统高并发优化,涨姿势了~
  10. Spring Cloud消息驱动整合
  11. Java键盘交互设计输入法,儿童键盘输入交互方式探讨:为熊孩子设计的输入法...
  12. 为什么要去学习函数式编程
  13. QT记录博客总结(内有对应电子书与源代码)
  14. SuperMap BIM+GIS-Revit模型处理-背景
  15. 广州市2009年社保与公积金缴费费率
  16. 关于MUR1100ERLG
  17. 自我成长自学必备网站,终生学习平台
  18. 基于神经网络rnn模型心脏病特征预测心脏病
  19. genSIM 导入 txt 格式的词向量参数
  20. 大型网站架构设计及技术总结

热门文章

  1. tomcat无故宕机 哪位大神给看看
  2. 豌豆荚里有没有一种软件可以根据父母的照片测试出未来官宝宝的样子,父母照片重叠是宝宝的模样?看到关晓彤,网友:这颜值没谁了!...
  3. 知识点2:多项式时间
  4. 神舟h54f刷bios
  5. 计算机之树的概念,2019考研计算机数据结构考点:树的基本概念
  6. 分页 pti_计算pti的历史
  7. 软件著作权登记常见问题问答
  8. 虎嗅 24 小时点赞器,一个案例附带一个爬虫技巧,Python 爬虫小课 7-9
  9. mac操作(添加路由)
  10. html css 图片底部空,HTML学习 | 图片底部透明css实现