数据库系统原理---事务

事务

概念

  事务指的是满足ACID特性的一组操作,可以通过commit提交,也可以通过RollBack回滚

ACID

1.原子性(Atomicity)

  事务被视为不可分割的最小单元,事务的所有操作要么全部提交成功,要么全部失败回滚,回滚可以用回滚日志来实现,回滚日志记录着事务所执行的修改操作,在回滚时反向执行这些操作就可以。

2.一致性(Consistency)

  数据库在事务执行前后都保持一致性状态。在一致性状态下,所有事务对一个数据的读取都是相同的。

3.隔离性(Isolation)

  一个事务所做的修改在最终提交以前,其他事务都是不可见的。

4.持久性(Durability)

  一旦事务提交,则其所做的修改将会永远保存到数据库中。即使系统发生崩溃,事务执行的结果也不会丢失,使用重做日志来保持持久性。

  事务的 ACID 特性概念简单,但不是很好理解,主要是因为这几个特性不是一种平级关系:

  • 只有满足一致性,事务的执行结果才是正确的。
  • 在无并发的情况下,事务串行执行,隔离性一定可以满足。此时只要满足原子性,就一定能满足一致性。
  • 在并发的情况下,多个事务并行执行,事务不仅要满足原子性,还需要满足隔离性,才能满足一致性。
  • 事务满足持久化是为了应对数据库崩溃的情况。

猜你喜欢

转载自www.cnblogs.com/yjxyy/p/10780941.html