码迷,mamicode.com
首页 > 数据库 > 详细

Mysql 知识点

时间:2018-10-18 13:59:10      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:技术分享   技术   串行化   不重复   gap   c中   事务   就是   bsp   

技术分享图片

Isolation

隔离级别    脏读(Dirty Read)  不可重复读(NonRepeatable Read) 幻读(Phantom Read) 
未提交读(Read uncommitted) 可能 可能 可能
已提交读(Read committed) 不可能 可能 可能
可重复读(Repeatable read) 不可能 不可能 可能
可串行化(Serializable) 不可能 不可能 不可能

 

·未提交读(Read Uncommitted):允许脏读,也就是可能读取到其他会话中未提交事务修改的数据

·提交读(Read Committed):只能读取到已经提交的数据。Oracle等多数数据库默认都是该级别 (不重复读)

·可重复读(Repeated Read):可重复读。在同一个事务内的查询都是事务开始时刻一致的,InnoDB默认级别。在SQL标准中,该隔离级别消除了不可重复读,但是还存在幻象读

·串行读(Serializable):完全串行化的读,每次读都需要获得表级共享锁,读写相互都会阻塞

 

排它锁:

Record Lock:单纯锁定一行,ABC,更新B,锁住B

Gap Lock:锁定目标记录周边的记录,ABC,更新B,锁住AB、BC,防止在A与B和B与C中间插入记录,防止幻读

Next-key Lock:锁定目标及周边的记录,ABC,更新B,锁住AB、B、BC,防止在A与B和B与C中间插入记录,防止幻读

 

Mysql 知识点

标签:技术分享   技术   串行化   不重复   gap   c中   事务   就是   bsp   

原文地址:https://www.cnblogs.com/lvjianwei/p/9809844.html

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