事务的四个特性(MySQL)

发布时间:2026/7/30 15:15:03
事务的四个特性(MySQL) 事务的四个特性1. 原子性Atomicity定义事务中的所有操作要么全部成功要么全部失败不存在中间状态。MySQL实现Undo LogInnoDB在修改数据前先写入Undo Log记录修改前的数据状态。若事务失败或回滚利用Undo Log将数据恢复到事务开始前的状态若事务执行到一般崩溃重启后也会根据Undo Log自动回滚未完成的事务2. 一致性Consistency定义事务执行前后数据必须从一个有效状态转移到另一个有效状态所有约束都必须满足。MySQL实现由其他三个特性共同保障InnoDB通过约束检查、级联操作、触发器等机制共同确保数据始终符合业务规则3. 隔离性Isolation定义并发执行的事务之间互相隔离一个事务的中间状态不应被其他事务看到。MySQL实现锁机制共享锁、排他锁、意向锁、间隙锁等MVCC多版本并发控制4. 持久性Durability定义一旦事务提交对数据的修改就是永久性的即使系统崩溃也不会丢失MySQL实现Redo Log采用WALWrite-Ahead Logging机制先写Redo Log再异步刷脏页到磁盘。崩溃后通过Redo Log恢复已提交但未写入磁盘的数据BinLogServer 层记录所有数据变更用于主从复制和数据恢复