数据库事务的隔离级别有4种,由低到高分别为Read uncommitted 、Read committed 、Repeatable read 、Serializable 。而且,在事务的并发操作中可能会出现脏读,不可重复读,幻读。

  • Read uncommitted

读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。

  • Read committed

读提交,顾名思义,就是一个事务要等另一个事务提交后才能读取数据。

  • Repeatable read

重复读,就是在开始读取数据(事务开启)时,不再允许修改操作。

  • Serializable 

它是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。

【赵强老师】事务隔离级别与脏读

什么是脏读?

脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。

什么是不可重复读?

是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两 次读数据之间,由于第二个事务的修改,那么第一个事务两次读到的的数据可能是不一样的。这样就发生了在一个事务内两次读到的数据是不一样的,因此称为是不 可重复读。

什么是幻读?

是指当事务不是独立执行时发生的一种现象,例如第一个事务对一个表中的数据进行了修改,这种修改涉及到表中的全部数据行。同时,第二个事务也修改这个表中的数据,这种修改是向表中插入一行新数据。那么,以后就会发生操作第一个事务的用户发现表中还有没有修改的数据行,就好象 发生了幻觉一样。

【赵强老师】事务隔离级别与脏读相关推荐

  1. mysql 事务隔离规范_MySQL事务隔离级别以及脏读、幻读、不可重复读示例

    事务的隔离性 MySQL是一个客户端/服务器架构的软件,对于同一个服务器来说,可以有若干个客户端与之连接,每个客户端与服务器连接上之后,就可以称之为一个会话(Session).每个客户端都可以在自己的 ...

  2. mysql 隔离级别 快照_「数据库架构」三分钟搞懂事务隔离级别和脏读

    重要要点 仅凭ACID或非ACID来思考,还需要知道数据库支持的隔离级别. 标榜为"最终一致"的某些数据库可能返回与任何时间点不一致的结果. 一些数据库提供的隔离级别比您要求的更高 ...

  3. 仅此一文让你明白事务隔离级别、脏读、不可重复读、幻读

    网络上关于这方面的博文有些偏理论,有些通篇代码,都不能深入浅出.本文用图文并茂的方式,配上行云流水般的代码,非要摆清楚这个问题.相关代码已提交至码云(点击这里下载). 事务是现代关系型数据库的核心之一 ...

  4. MySQL事务隔离级别以及脏读、幻读、不可重复读示例

    事务的隔离性 MySQL是一个客户端/服务器架构的软件,对于同一个服务器来说,可以有若干个客户端与之连接,每个客户端与服务器连接上之后,就可以称之为一个会话(Session).每个客户端都可以在自己的 ...

  5. 数据库事务隔离级别及脏读、不可重复读、幻读的理解

      开篇声明,由于两位大佬排版不够美观,然后又发现一些歧义,因此我集大佬之所长,精心整理并加以完善,可放心阅读. http://blog.csdn.net/yuxin6866/article/deta ...

  6. 「数据库架构」三分钟搞懂事务隔离级别和脏读

    重要要点 仅凭ACID或非ACID来思考,还需要知道数据库支持的隔离级别. 标榜为"最终一致"的某些数据库可能返回与任何时间点不一致的结果. 一些数据库提供的隔离级别比您要求的更高 ...

  7. 事务隔离级别中脏读、不可重复读,幻读问题的解决

    脏读的问题 窗口1 –查询账户表 select from account; –设置隔离级别为read uncommitted set global transaction isolation leve ...

  8. 【译】数据库事务隔离级别

    看到wikipedia中文关于数据库相关的几个经典条目有点老旧,尤其和英文条目相比.确定开始翻译其中几篇,先从事务隔离等级开始.格式采用维基Sandbox发布后的格式.翻译完后自己校对过几遍,质量还可 ...

  9. 【概念原理】四种SQL事务隔离级别和事务ACID特性

    2019独角兽企业重金招聘Python工程师标准>>> 事务是一组读写操作,并且具有只有所有操作都成功才算成功的特性. 事务隔离级别 SQL事务隔离级别由弱到强分别是:READ_UN ...

最新文章

  1. WinForm 实现两个容器之间控件的拖动及排列(图文)
  2. openssl 从cer文件中提取公钥
  3. jQuery开发技巧
  4. matlab条件判断配合输出
  5. BUUCTF-pwn2_sctf_2016(整数溢出+泄露libc)
  6. Python06 向前Euler法、向后Euler法、梯形方法、改进的Euler方法以及四阶Runge_Kutta方法(附代码)
  7. 微信企业者开发接口文档
  8. css实现接地气的checkbox框
  9. 物理系统——射线检测
  10. 流量星球:实操!利用“拼多多砍价群”日吸100+精准女粉引流技术
  11. sigil将html转换epub,【教程】(進階版)如何用Sigil製作一本高質量的epub
  12. TCP-Hybla拥塞算法
  13. win10无法打开匿名级安全令牌_无法打开匿名级安全令牌
  14. Oracle Parallel使用方法
  15. android 的语言适配
  16. 河南python培训班
  17. 【wordpress】Elementor插件图标显示错误:显示为空方格
  18. 2011互联网大会23日在京举行 微博带您对话CEO
  19. 人工智能热潮_团结与增强现实热潮
  20. Jupyter notebook 绘图时,如何生成高清图片?

热门文章

  1. 川大计算机在职研究生考试,深度分析!四川大学在职研究生考试通过率
  2. Node.js | express 获取请求参数 | 客户端渲染 | 服务端渲染
  3. 物理地址、有效地址、逻辑地址和线性地址
  4. uniapp 微信小程序获取微信用户信息
  5. QQ空间动态的问题。
  6. CocosCreate/qqplay音频相关问题记录
  7. influxdb 插入数据_Influxdb 数据写入流程
  8. MongoDB经验分享
  9. java计算机毕业设计桂林餐饮服务平台源码+mysql数据库+系统+lw文档+部署
  10. 企业里没有TPM(可信赖平台模块)标准的安全芯片计算机,如何开启BitLocker锁定磁盘,如何备份系统,当系统出现问题又如何恢复,快速恢复又兼顾系统安全