码迷,mamicode.com
首页 > 其他好文 > 详细

事务的隔离级别

时间:2020-02-06 16:31:33      阅读:59      评论:0      收藏:0      [点我收藏+]

标签:不可重复读   body   zab   可重复   改变   rac   问题:   mys   幻读   

针对多个事务之间的关联划分隔离级别。

oracle支持2种隔离级别(读已提交,串行化),默认隔离级别是读已提交。

mysql支持4种隔离级别(读未提交,读已提交,可重复读,串行化),默认隔离级别是可重复读。

 

四种隔离级别:

1、读未提交(ReadUncommitted);   

2、读已提交(ReadCommitted);

3、可重复度(RepeatableRead);

4、串行化(Serializable);

 

会产生的是三种事务问题:

1.脏读

一个事务会读进还没有被另一个事务提交的数据,所以你会看到一些最后被另一个事务回滚掉的数据。    

2.不可重复读

一个事务读进一条记录,另一个事务更改了这条记录并提交完毕,这时候第一个事务再次读这条记录时,它已经改变了。

3.幻读

一个事务用Where子句来检索一个表的数据,另一个事务插入一条新的记录,并且符合Where条件,这样,第一个事务用同一个where条件来检索数据后,就会多出一条记录。

 

  脏读 不可重复读 幻读  
读未提交 出现 出现 出现  
读已提交   出现 出现  
可重复度     出现  
串行化        

 

事务的隔离级别

标签:不可重复读   body   zab   可重复   改变   rac   问题:   mys   幻读   

原文地址:https://www.cnblogs.com/pastjx/p/12196231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!