7. 事务

2020-05-09  本文已影响0人  lsh的学习笔记

主要目的

事务会把数据库从一种一致状态转换为另一种一致状态。

在数据库提交工作时,可以确保要么所有修改都已经保存了,要么所有修改都不保存。

InnoDB存储引擎中的事务完全符合ACID的特性。ACID是以下4个词的缩写:

  1. 原子性(atomicity)
  2. 一致性(consistency)
  3. 隔离性(isolation)
  4. 持久性(durability)

注意

虽然理论上定义了严格的事务要求,但是数据库厂商出于各种目的,并没有严格去满足事务的ACID标准。

例如:

  1. 对于MySQL的NDB Cluster引擎来说,虽然其支持事务,但是不满足D的要求,即持久性的要求。
  2. 对于Oracle数据库来说,其默认的事务隔离级别为READ COMMITTED,不满足I的要求,即隔离性的要求。虽然在大多数的情况下,这并不会导致严重的结果,甚至可能还会带来性能的提升,但是用户首先需要知道严谨的事务标准,并在实际的生产应用中避免可能存在的潜在问题。
  3. 对于InnoDB存储引擎而言,其默认的事务隔离级别为READREPEATABLE,完全遵循和满足事务的ACID特性
上一篇 下一篇

猜你喜欢

热点阅读