Easter79 Easter79
3年前
springboot+mybatis 使用事务
一、一些概念声明式的事务管理是基于AOP的,在springboot中可以通过@Transactional注解的方式获得支持,这种方式的优点是:1)非侵入式,业务逻辑不受事务管理代码的污染。2)方法级别的事务回滚,合理划分方法的粒度可以做到符合各种业务场景的事务管理。本文使用目前最常用的mybatis框架来配置springboot的事务
Stella981 Stella981
3年前
SSM框架(3):配置Spring的事务管理器,实现事务控制
 一、相关概念1、不可重复读和幻读的区别  很多人容易搞混不可重复读和幻读,确实这两者有些相似。但不可重复读重点在于update和delete,而幻读的重点在于insert。  如果使用锁机制来实现这两种隔离级别,在可重复读中,该sql第一次读取到数据后,就将这些数据加锁,其它事务无法修改这些数据,就可以实现可重复读了。但
Wesley13 Wesley13
3年前
MySQL InnoDB如何保证事务特性
如果有人问你“数据库事务有哪些特性”?你可能会很快回答出原子性、一致性、隔离性、持久性即ACID特性。那么你知道InnoDB如何保证这些事务特性的吗?如果知道的话这篇文章就可以直接跳过不看啦(^.^)先说结论:redolog重做日志用来保证事务的持久性undolog回滚日志保证事务的原子性undologredo
Easter79 Easter79
3年前
SSM框架(3):配置Spring的事务管理器,实现事务控制
 一、相关概念1、不可重复读和幻读的区别  很多人容易搞混不可重复读和幻读,确实这两者有些相似。但不可重复读重点在于update和delete,而幻读的重点在于insert。  如果使用锁机制来实现这两种隔离级别,在可重复读中,该sql第一次读取到数据后,就将这些数据加锁,其它事务无法修改这些数据,就可以实现可重复读了。但
Wesley13 Wesley13
3年前
MySQL知识体系——事务
ACID(事务的四大特性)    四个特性中,最重要的就是一致性。由原子性,隔离性,持久性来保证。(以下描述用例:用户A、B、C分别在银行拥有500元存款)    原子性(Atomicity)        事务是一个不可分割的工作单元,事务中的操作要么全部COMMI
Wesley13 Wesley13
3年前
Mysql redo&&undo学习
   mysql通过锁机制来实现事务的隔离性,用redolog实现事务的原子性和持久性,用undolog实现事务的一致性。undo并不是redo的逆过程,redo和undo都可以看做一种恢复过程,redo恢复事务修改的页操作,redo记录的是物理日志,记录的是页的物理修改操作,redolog基本上都是顺序写的,在数据库运行时不需要对redolog
Wesley13 Wesley13
3年前
MySQL 事务的四大特性ACID介绍
事务的四大特性(ACID)1、原子性(Atomicity)事务是一个不可分割的单位,事务中的所有SQL等操作要么都发生,要么都不发生。2、一致性(Consistency)事务发生前和发生后,数据的完整性必须保持一致。3、隔离性(Isolation)当并发访问数据库时,一个正在执行的事务在执行完毕前,对应其他的会话是不可见的,多个并发事
Easter79 Easter79
3年前
Spring事物隔离级别及事物传播行为@Transactional实现
阅读本篇文章前,请先阅读如下文章:四种事物隔离级别详解(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fbarrywxx%2Fp%2F11546087.html)
Wesley13 Wesley13
3年前
MySQL常见问题
事务四大特性原子性:不可分割的操作单元,事务中所有操作,要么全部成功;要么撤回到执行事务之前的状态一致性:如果在执行事务之前数据库是一致的,那么在执行事务之后数据库也还是一致的;隔离性:事务操作之间彼此独立和透明互不影响。事务独立运行。这通常使用锁来实现。一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。
Wesley13 Wesley13
3年前
mysql 数据库的四种隔离级别
最近在看高性能MYSQL一书,所以对其进行例子分析已巩固自己的印象  数据库的事务操作其实就是一组原子性的操作,要么全部操作成功,要么全部操作失败。  比如说我需要对外销售1张电影票,且登记一下销售信息到另一个表,至少需要以下3个步骤  1.查询电影票数量是否满足销售1张电影票SELECTremain\_countFROM cinemaW