数据库事物与隔离级别
来源:互联网 发布:ie11不支持javascript 编辑:程序博客网 时间:2024/05/21 00:46
事务的 ACID
原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持续性( Durability )。
1 、原子性
原子性即不可分割性,一个业务分为A、B两步,要么全部执行,要么全不执行。
2 、一致性
经典的银行转账例子,要么提交事务,要么回滚事务。3 、隔离性
两个事务直接互不干扰,A执行增删改操作,不提交事务,B查询结果不会产生改变。
4 、持续性
持续性也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。
事物的隔离级别
如图:
A) 修改时允许修改(丢失更新)
B) 修改时允许读取(脏读)
C)读取时允许修改(不可重复读)
D)读取时允许插入(幻读)
从上到下问题越来越不严重,但所需的性能开销却越大。
1)读取未提交, 这个级别就是一个事物更新的时候不允许更新,但允许读取,说以不会出现丢失更新,单会出现脏读。隔离级别最低。
2)读取已提交数据,就是一个事物更新的时候不允许读取,必须等到更新事物提交后才能读取,不会出现脏读,但可能出现不可重复度。隔离级别次低。
以上两种级别是针对更新事物的限制,在读取事物进行时,是不会有任何限制的。所以会出现不可重复读(读取时,有更新),和幻读(读取时,插入)。
3)可重现的读取,就是一个事物读取时,不允许更新,但允许插入。不会出现不可重复读,但会出现幻读。
4)序列化,只要有事物进行,其他事物必须等待该事务执行完。
以上两个事物会限制读取事物的,所以隔离级别较高,但性能开销不容小觑。
0 0
- 数据库事物与隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事物隔离级别
- 数据库事务与隔离级别,事物边界
- 数据库的事物隔离级别
- 数据库事物隔离级别 (藏)
- 数据库事物隔离级别详解
- 数据库事物的隔离级别
- 数据库事物的隔离级别
- 数据库事物的隔离级别
- 内排序-选择排序
- 【原创】黑科技库(二): 全排列函数 next_permutation
- myeclipse删除jar时出错,无法删除怎么办
- 496. Next Greater Element I LeetCode
- 数据结构学习笔记——01绪论
- 数据库事物与隔离级别
- Binary XML file line #2: Error inflating class <unknown>
- JDK8中的ConcurrentHashmap底层实现
- Eigen——四元数笔记
- Shell脚本8种字符串截取方法总结
- SpringMVC+MyBatis配置声明式事务的问题
- Xilinx zynqMP开发基本步骤
- cookie插件的使用
- android edittext 禁用软键盘调用