数据库的ACID特性及事务控制

2018-04-19  本文已影响0人  wyon

1、数据库ACID特性:

数据库的ACID特性是数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。一个支持事务的数据库,必须要具有这四种特性。

2、事务并发控制异常

3、事务隔离级别

数据库的隔离级别实现一般是通过数据库锁实现的,其级别由低到高分为读未提交、读已提交、可重复读和串行化四级。级别越高,执行效率就越低,在MySQL数据库中默认的隔离级别为可重复读,在Oracle中只支持串行化和读已提交两种级别,其中默认为读已提交。

级别\异常 脏读 不可重复读 幻读 第一类更新丢失 第二类丢失更新
读未提交 Y Y Y Y Y
读已提交 N Y Y N Y
可重复读 N N Y N N
串行化 N N N N N

4、数据库的锁机制

数据库锁一般可以分为两类:悲观锁和乐观锁。悲观锁一般就是我们通常说的数据库锁机制,乐观锁一般是指用户自己实现的一种锁机制,比如hibernate实现的乐观锁甚至编程语言也有乐观锁的思想的应用。

参考

上一篇下一篇

猜你喜欢

热点阅读