数据库的四种隔离级别

Posted sweety-fly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库的四种隔离级别相关的知识,希望对你有一定的参考价值。

 

一、事务的概念

      一个事务中的一系列的操作要么全部成功,要么一个都不做。

      事务的结束有两种,当事务中的所有步骤全部成功执行时,事务提交。如果其中一个步骤失败,将发生回滚操作,撤消该事务已执行的操作。

 

二、事务的特性 ACID

      事务具有四个特征:原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持续性( Durability ),简称为 ACID 特性。

 

三、多事务并发执行的问题

      脏读(Drity Read):某个事务已更新一份数据,另一个事务在此时读取了同一份数据,由于某些原因,前一个RollBack了操作,则后一个事务所读取的数据就会是不正确的。

      不可重复读(Non-repeatable read):在一个事务的两次查询之中数据不一致,这可能是两次查询过程中间插入了一个事务更新的原有的数据。

      幻读(Phantom Read):在一个事务的两次查询中数据笔数不一致,例如有一个事务查询了几列(Row)数据,而另一个事务却在此时插入了新的几列数据,先前的事务在接下来的查询中,就会发现有几列数据是它先前所没有的。

 

三、事务的四种隔离级别

SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。

技术分享图片

 

其它相关概念待补充:MySQL、 Oracle事务实现原理; SQL标准

  

参考文章

https://www.2cto.com/database/201707/657145.html

https://www.cnblogs.com/andydao/p/6043963.html

以上是关于数据库的四种隔离级别的主要内容,如果未能解决你的问题,请参考以下文章

数据库事务的四种隔离级别

事务的四种隔离级别

事务的四种隔离级别

mysql 事务的四种隔离级别

数据库事务的四种隔离级别

MySQL 事务的四种隔离级别