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 恢复所有已提交的修改。 一句话总结 原子性保证不半途而废,隔离性保证并发互不干扰,持久性保证宕机不丢数据,三者最终共同保障数据库的一致性。

相关推荐
今天AI了吗4 分钟前
Agent & AI 名词大扫盲
数据库·人工智能·python·sql·rust
2603_966437261 小时前
格式化之后数据还能恢复吗?说清恢复条件
linux·运维·数据库
倔强的石头1061 小时前
时序数据库的难题不只在写入速度
数据库·时序数据库
IT小白杨2 小时前
海外业务账号安全保障:主流浏览器产品底层机制对比
数据库·python·安全·自动化·安全架构·指纹浏览器
张洛闻Eren10 小时前
MySQL 维护稳定系统【MySQL第二课】
linux·数据库·mysql·云原生
布莱克60512 小时前
理解索引:从概念到实践
数据库·mysql
我不是疯子是傻子15 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
这个DBA有点耶15 小时前
数据库迁移怎么做到“零翻车“:金仓 KDMS/KDTS/KFS 工具链实测
数据库·架构·dba
2501_9378609416 小时前
MySQL联合查询(多表查询)
数据库·mysql
名字还没想好☜16 小时前
Next.js 用 Server Components 直连数据库:去掉 API 层的边界,和三条别踩的安全红线
前端·javascript·数据库·安全·react·next.js