Skip to content

Latest commit

 

History

History
4 lines (4 loc) · 1.37 KB

数据库的ACID特性.md

File metadata and controls

4 lines (4 loc) · 1.37 KB
  1. 原子性(Atomicity):原子性意味着事务内的操作要么全部完成,要么全部不执行。事务是数据库的最小操作单位,作为一个整体来执行。如果事务中的某个操作失败,整个事务会被回滚,数据库状态会恢复到事务开始之前的状态。
  2. 一致性(Consistency):一致性确保事务从一个一致的状态转换到另一个一致的状态。在事务开始和完成时,数据库的完整性约束不能被破坏。例如,如果数据库的一个规则是所有的账户余额不能为负数,那么任何事务结束时都必须保证这个规则得到满足。
  3. 隔离性(Isolation):隔离性指的是并发的事务之间的操作是隔离的,即事务之间不会互相影响。当多个事务同时运行时,一个事务的中间状态不应该对其他事务可见。隔离性可以通过“隔离级别”来实现,不同的隔离级别可以防止不同程度的并发问题,如脏读(dirty read)、不可重复读(non-repeatable read)和幻读(phantom read)。
  4. 持久性(Durability):持久性意味着一旦事务被提交,它对数据库的更改就是永久性的。即使发生系统崩溃,数据库也必须能够保证已经提交的事务的所有操作都不会丢失,这通常通过写入到磁盘上的日志文件(如Redo Log)来实现。