事务隔离级别
- 事务隔离是数据库处理的基础之一,Isolation是ACID中I的缩写,当多个事务同时进行更改和执行查询时,隔离级别是微调性能和可靠性、一致性和结果再现性之间的平衡的设置
- MySQL支持以下几个隔离级别
- REPEATABLE READ (innodb使用的默认级别)
- READ COMMITTED
- READ UNCOMMITTED
- SERIALIZABLE
- REPEATABLE READ(当执行一个范围查询时,会发生幻读问题)
- 这是innodb默认的隔离级别,同一事务中的一致读读取由第一个读取建立的快照,意味着如果你在同一个事务中发送多次一样(没有锁的)的select语句,这些SELECT语句返回的结果在相互之间也是一致的。
- READ COMMITTED(有不可重复读问题)
- 每一个一致读,即使在同一事务中,都会设置并读取它自己的新快照
- READ UNCOMMITTED(有脏读问题)
- SELECT语句是在一个非锁定的方式进行,但是有可能会使用更早版本的行数据,因此,使用这个隔离级别,读不是一致的,称之为脏读,否则,此隔离级别工作机制类似于
- SERIALIZABLE(脏读,不可重复读,幻读问题都不会发生)
- 这个级别有点像REPEATABLE READ,但是innodb隐式的将所有SELECT语句传唤成SELECT ... LOCK IN SHARE MODE除了autocommit 被禁止这种情况,如果启用autocommit,则SELECT是它自己的事务。
- 事务隔离主要的作用在于解决并发带来的脏读,不可重复读,幻读问题
转载地址:https://blog.51cto.com/itzhoujun/2353822
博客作者shixiazhoujun的原创作品
相关推荐
DriveCar 2020-09-07
quniMdejiangyou 2020-08-15
silencehgt 2020-07-04
zhanbuquan 2020-07-04
liaomingwu 2020-06-25
zhanbuquan 2020-06-21
vincen 2020-06-10
zjx0 2020-05-20
愿天下再无BUG 2020-05-16
MissFuTT 2020-05-11
好记忆也需烂 2020-05-10
wenjieyatou 2020-05-06
bluet00 2020-05-05
jiong 2020-04-19
逍遥斩舞 2020-04-17
achiverhai 2020-04-16
zhengsj 2020-03-28
qingjiuquan 2020-07-18
lpfvip00 2020-06-25
daillo 2020-06-17
sunysh00 2020-06-11
langyue 2020-06-09
DriveCar 2020-06-09
airfling 2020-06-08
sofast 2020-06-03
weikaixxxxxx 2020-05-30