事务ACID特性
-
原子性(Atomicity):一系列的操作整体不可拆分,要么同时成功,要么同时失败
-
一致性(Consistency):事务在开始前和结束后,数据库的完整性约束没有被破坏
-
隔离性(Isolation):事务的执行是相互独立的,它们不会相互干扰,一个事务不会看到另一个正在运行过程中的事务的数据
-
持久性(Durabilily):一个事务完成之后,事务的执行结果必须是落盘在数据库持久化
事务隔离级别
- ①
Read uncommitted/RU
:读未提交 - ②
Read committed/RC
:读已提交 - ③
Repeatable read/RR
:可重复读 - ④
Serializable
:序列化/串行化
脏读、幻读、不可重复读问题
- 脏读:脏读的意思是指一个事务读到了其他事务还未提交的数据
- 不可重复读:在一个事务中,多次读取同一数据,先后读取到的数据不一致
- 幻读:另外一个事务在第一个事务要处理的目标数据范围之内新增了数据,然后先于第一个事务提交造成的问题