原子性:记录之前的版本,允许回滚
一致性:事务开始和结束之间的中间状态不会被其他事务看到
隔离性:适当的破坏一致性来提升性能与并行度 例如:最终一致~=读未提交。
持久性:每一次的事务提交后就会保证不会丢失
隔离级别
读未提交:A事务执行中,B事务更新 未 提交,A 可以 读到B更新的数据。无锁。
读已提交:A事务执行中,B事务更新 已 提交,A 可以 读到B更新的数据。行锁。
可重复读:A事务执行中,B事务更新 已 提交,A 不可以 读到B更新的数据。有索引,间隙锁/无 索 引,锁表
串行:A事务执行中,B事务无法执行。