MySQL 事务的四大特性(ACID)

事务是数据库中一组不可分割的 SQL 操作,要么全部执行成功,要么全部失败回滚,事务的核心是四大特性,简称 ACID:

1、原子性(Atomicity):事务中的所有操作,是一个整体,要么全成功,要么全回滚,不存在部分执行的情况(核心:不可分割)。

例:转账时,A 扣款、B 加款,要么都成功,要么都失败。
2、一致性(Consistency):事务执行前后,数据库的数据完整性、业务规则保持不变(核心:数据正确)。

例:转账前后,A+B 的总金额不变;订单创建后,库存数减少对应数量。
3、隔离性(Isolation):多个事务并发执行时,事务之间相互隔离,互不影响,每个事务感觉不到其他事务的存在(核心:互不干扰)。

隔离性由「事务隔离级别」和「锁机制」保证,解决并发事务的脏读、不可重复读、幻读问题。
4、持久性(Durability):事务提交后,修改的数据会永久写入磁盘,即使数据库崩溃重启,数据也不会丢失(核心:永久生效)。

持久性由 MySQL 的redo 日志保证。

相关推荐
ss27321 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
l1t1 天前
DeepSeek总结的数据库外部表
数据库
m0_674294641 天前
如何编写SQL存储过程性能对比_记录执行时间评估优化效果
jvm·数据库·python
014-code1 天前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库
运气好好的1 天前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python
それども1 天前
DELETE 和 TRUNCATE TABLE区别
java·数据库·mysql
wenha1 天前
数据库隔离级别
数据库·mysql·sqlserver·隔离级别
2401_871492851 天前
Layui如何修改Layui默认的UI主题颜色(换肤功能实现)
jvm·数据库·python
Edward111111111 天前
4.27mysql ,数据库,数据源
数据库·mysql
小徐敲java1 天前
踩坑实录:MySQL8.0 导入SQL报错 2006 - MySQL server has gone away 完美解决
数据库·sql