深入理解innodb底层事务实现机制
事务:一组操作要么全部成功,要么全部失败,目的是为了保证数据的最终一致性
ACID【原子、一致、隔离、持久】
原子性:undo log 日志实现【比如订单数减1;那么undo log 日志便加1操作,回滚的时候执行】
一致性:通过其他三个实现
隔离性:由他们内部的操作不能互相干扰,隔离性由mysql的各种锁和MVCC机制实现
innodb引擎中,定义了四种隔离级别供我们使用,级别越高事务隔离性越好,但性能就越低,而隔离性由mysql的各种锁以及MVCC机制来实现
读未提交 脏读
读已提交【oracle默认隔离级别】 不可重复读
可重复读【mysql默认 隔离级别 】 幻读
串行 都解决
串行化:事务A即使是对数据读,事务B也不能进行更改