前言
事务是mysql Innodb引擎的一大特点,可以说,在日常开发中,对于mysql事务的使用无处不在,因此深入了解并掌握mysql的事务原理很有必要。
一、mysql事务简介
- 事务 是一组操作集合,一个不可分割的工作单位;
- 事务会将所有操作作为一个整体,一起向系统提交或撤销操作请求,这些操作要么同时成功,要么同时失败;
比如 : 张三给李四转账1000块钱,张三银行账户减少1000元,而李四银行账户的钱要增加1000元。 这一组操作就必须在一个事务的范围内,要么都成功,要么都失败
二、事务四大特性
是事务的四大特性,简称ACID
- 原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败;
- 一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态;
- 隔离性(Isolation):数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行;
- 持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的;
三、事务案例演示
下面来模拟一个事务操作,准备如下一张表,并初始化两条数据,来模拟转账的事务操作;

本文详细解析了MySQL事务的原理,包括事务的四大特性(ACID),并通过案例演示了事务操作。讨论了并发事务可能导致的问题,如脏读、不可重复读和幻读,以及事务隔离级别的设定和作用。此外,还介绍了Spring框架中的事务管理和事务实现背后的redo log与undo log机制。
订阅专栏 解锁全文
1534

被折叠的 条评论
为什么被折叠?



