MySQL事务四大特性(ACID)

MySQL 事务四大特性 ACID

事务四大特性 ACID,是保障数据库事务可靠性、一致性的核心准则。

  1. 原子性(Atomicity) 事务中的所有操作,要么全部成功,要么全部失败回滚,绝对不会出现部分执行的情况。 - 实现原理:依靠 undo log(回滚日志)。执行过程中,所有修改都会记录反向操作,若事务失败,通过 undo log 将数据回滚到修改前的初始状态。

  2. 一致性(Consistency) 事务执行前后,数据库从一个一致状态转变为另一个一致状态,全程不破坏业务定义的完整性约束(外键、唯一索引、触发器等)。 - 核心:一致性是 ACID 的最终目标,原子性、隔离性、持久性均为保障一致性服务。- 示例:A转账给B,事务前后两人账户总金额保持不变。

  3. 隔离性(Isolation) 多个事务并发执行时,彼此之间互不干扰,每个事务独立运行、互相隔离。 - 实现原理:依靠 锁机制(行锁/表锁)+ MVCC 多版本并发控制,MVCC 底层依托 undo log 实现。

  4. 持久性(Durability) 事务一旦提交,对数据的修改永久保存;即便系统崩溃、断电,已提交的数据也不会丢失。 - 实现原理:依靠 redo log(重做日志)。宕机重启后,可通过 redo log 恢复所有已提交的修改。 一句话总结 原子性保证不半途而废,隔离性保证并发互不干扰,持久性保证宕机不丢数据,三者最终共同保障数据库的一致性。

相关推荐
太理摆烂哥16 分钟前
MySQL表的约束
数据库·mysql
Crayon Lin39 分钟前
Milvus向量数据库入门
数据库·milvus
cspttty40 分钟前
2027校招准备:数学与应用数学专业如何补齐管理咨询的业务、分析与表达能力
大数据·数据库
曹牧43 分钟前
C#:字符串占位符与值数量不一致
开发语言·数据库·c#
小马不起床1 小时前
Django 后端实战指南_14:门店、省份、用户门店关系查询接口
数据库·django·sqlite
我星期八休息1 小时前
Redis 的原理和使用(2)
前端·数据库·redis·python·mysql·缓存·bootstrap
betazhou1 小时前
Apache Seatunnel 抽取SQL server实时同步到Oracle(四)
数据库·oracle·apache·sql server·seatunnel
l1t1 小时前
DeepSeek总结的PostgreSQL 的 MVCC 很糟。其他所有的也一样。第1部分
数据库·postgresql
川石课堂软件测试1 小时前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
下页、再停留1 小时前
【C#桌面客户端系列学习-14】SQLite数据库之增删改查完整示例
数据库·sqlite