本文会比较长,可能会有点枯燥,因为纯将概念;
事务
概念
事务指的是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚;
ACID
1. 原子性(Atomicity)
事务被视为不可分割的最小单元,事务的所有操作要么全部提交成功,要么全部失败回滚;
回滚可以用日志来实现,日志记录着事务所执行的修改操作,在回滚时方向执行这些修改操作即可;
2. 一致性(Consistency)
数据库在事务执行前后都保持一致性状态;
在一致性状态下,所有事务对一个数据的读取结果都是相同的。
3. 隔离性(Isolation)
一个事务所做的修改在最终提交以前,对其它事务是不可见的;
4. 持久性(Durability)
一旦事务提交,则其所做的修改将会永远保存到数据库中。即使系统发生崩溃,事务执行的结果也不能丢失;
可以通过数据库备份和恢复来实现,在系统发生奔溃时,使用备份的数据库进行数据恢复;