事务的四个特性(MySQL)
2026/7/30 15:14:57 网站建设 项目流程

事务的四个特性

1. 原子性(Atomicity)

定义:事务中的所有操作要么全部成功,要么全部失败,不存在中间状态。

MySQL实现

  • Undo LogInnoDB在修改数据前先写入Undo Log,记录修改前的数据状态。若事务失败或回滚,利用Undo Log将数据恢复到事务开始前的状态

  • 若事务执行到一般崩溃,重启后也会根据Undo Log自动回滚未完成的事务

2. 一致性(Consistency)

定义:事务执行前后,数据必须从一个有效状态转移到另一个有效状态,所有约束都必须满足。

MySQL实现

  • 由其他三个特性共同保障

  • InnoDB通过约束检查、级联操作、触发器等机制共同确保数据始终符合业务规则

3. 隔离性(Isolation)

定义:并发执行的事务之间互相隔离,一个事务的中间状态不应被其他事务看到。

MySQL实现

  • 锁机制:共享锁、排他锁、意向锁、间隙锁等

  • MVCC(多版本并发控制)

4. 持久性(Durability)

定义:一旦事务提交,对数据的修改就是永久性的,即使系统崩溃也不会丢失

MySQL实现

  • Redo Log:采用WAL(Write-Ahead Logging)机制,先写Redo Log,再异步刷脏页到磁盘。崩溃后通过Redo Log恢复已提交但未写入磁盘的数据

  • BinLog:Server 层记录所有数据变更,用于主从复制和数据恢复

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询