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

数据库的隔离

时间:2021-01-07 12:32:47      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:一个   隔离机制   加锁   mvc   需要   vcc   不可   head   控制   

数据库的隔离级别有哪些?

  • 未提交读:一个事务在提交前,它的修改对其他事务也是可见的。
  • 提交读:一个事务提交之后,它的修改才能被其他事务看到。
  • 可重复读:在同一个事务中多次读取到的数据是一致的。
  • 串行化:需要加锁实现,会强制事务串行执行。

数据库的隔离级别分别可以解决数据库的脏读、不可重复读、幻读等问题。

隔离级别脏读不可重复读幻读
未提交读 允许 允许 允许
提交读 不允许 允许 允许
可重复读 不允许 不允许 允许
串行化 不允许 不允许 不允许

MySQL的默认隔离级别是可重复读。

隔离级别是如何实现的?

事务的隔离机制主要是依靠锁机制和MVCC(多版本并发控制)实现的,提交读和可重复读可以通过MVCC实现,串行化可以通过锁机制实现。

数据库的隔离

标签:一个   隔离机制   加锁   mvc   需要   vcc   不可   head   控制   

原文地址:https://www.cnblogs.com/lixuze/p/14237414.html

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