如何理解关系型数据库的ACID?
这是一个非常核心的数据库概念。我将用一个清晰易懂的方式,结合经典案例,帮你彻底理解关系型数据库的 ACID 原则。
一、ACID 是什么?
ACID 是四个英文单词首字母的缩写,它定义了关系型数据库事务(Transaction)的四个核心特性,以确保即使在系统故障或并发操作的情况下,数据库操作也能可靠、安全地执行。
- A - Atomicity (原子性)
- C - Consistency (一致性)
- I - Isolation (隔离性)
- D - Durability (持久性)
为了帮你直观理解这四个特性如何协同工作,我们可以用一次“银行转账”事务的全过程来展示:
二、详解 ACID 的四个特性
现在,我们来逐一分解图中的每个特性。
1. Atomicity (原子性)
- 核心思想:“要么全部完成,要么全部不做” (All or Nothing)。
- 解释:一个事务被视为一个不可分割的最小工作单元。事务中的所有操作要么全部成功提交(Commit),要么如果中间任何一个操作失败,所有已经执行的操作都会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没执行过一样。
- 转账例子:扣款和存款必须作为一