★ 脏读 : 读取了前一事务 未提交 的数据 ; 不可重复读 : 读取了前一事务 提交 的数据; ★ 幻读 与 不可重复读 common :都是读取了另一条已经提交的事务(这点与脏读不同); differences : 不可重复读 :查询的都是同一个数据项 幻读 :针对的是一批数据整体(比如数据的个 ...
分类:
数据库 时间:
2018-10-19 11:50:11
阅读次数:
185
2.0 前言 事务的隔离性是指多个事务并发执行的时候相互之间不受到彼此的干扰的特性,隔离性是事务ACID特性中的I,根据隔离程度从低到高分为Read Uncommitted(读未提交),Read Committed(读已提交),Repeatable Read(可重复读),Serializable(串 ...
分类:
其他好文 时间:
2018-09-26 17:06:39
阅读次数:
114
事务的并发执行,容易出现的几个现象 1.脏读 读未提交,一个事务读取了另外一个事务改写还没有提交的数据,如果另外一个 事务在稍后的时候回滚。 2.不可重复读 一个事务进行相同条件查询连续的两次或者两次以上,每次结果都不同。 有其他事务做了update操作。 3.幻读 和(2)很像,其他事务做了ins ...
分类:
数据库 时间:
2018-09-22 12:54:24
阅读次数:
208
数据库事务的隔离级别有4个,由低到高依次为Read uncommitted 、Read committed 、Repeatable read 、Serializable ,这四个级别可以逐个解决脏读 、不可重复读 、幻读 这几类问题。 √: 可能出现 ×: 不会出现 脏读 不可重复读 幻读 Read ...
分类:
数据库 时间:
2018-09-16 19:38:00
阅读次数:
224
<!-- 配置通知 --> // 脏读 :一个事务读到了另一个事务的未提交的数据 // 不可重复读 :一个事务读到了另一个事务已经提交的 update 的数据导致多次查询结果不一致. // 虚幻读 :一个事务读到了另一个事务已经提交的 insert 的数据导致多次查询结果不一致. 事务的传播行为: ...
分类:
编程语言 时间:
2018-09-12 22:05:50
阅读次数:
158
为什么取1248 二进制 CRUD 移位效率高 在并发和效率选择一个平衡点 一般不会考虑幻读 因为我们不会再一个事务里查询两次,(只能设置为seralizable) 悲观锁和乐观锁的前提是read-uncommitted 在数据库中 默认是repeatable read 悲观锁是想着总有人要更改 所 ...
分类:
Web程序 时间:
2018-09-07 22:52:48
阅读次数:
224
事务:要么都要完成,一个不完成就要回滚。 ACID 原子性 一致性 独立性 持久性 第一类丢失更新 第一类丢失更新 脏读(读了另外一个事务没有提交的数据) 不可重复读(在同一个事务里,对数据库里的值前后读取值不一样) 第二类丢失更新(不可重复读的特殊情况) 幻读/(插入/删除)(读的时候,插入一条数 ...
分类:
Web程序 时间:
2018-09-07 22:04:00
阅读次数:
225
文章目录: 事物的理解 壹、什么是事物?事物的 ACID(Atomicity 、Consistency 、Durability、Isolation )? 贰、脏读、不可重复读、幻读? 叁、事物的隔离级别? 深入理解 Spring 事务原理 壹、事务的基本原理 贰、Spring 事务的传播属性 叁、数 ...
分类:
其他好文 时间:
2018-09-07 21:09:27
阅读次数:
210
数据库锁:数据库锁出现的原因是为了处理并发问题。 并发控制一般采用三种方法,分别是乐观锁和悲观锁以及时间戳。 乐观锁认为一个用户读数据的时候,别人不会去写自己所读的数据,就是不做任何操作。悲观锁就刚好相反,觉得自己读数据库的时候,别人可能刚好在写自己刚读的数据,其实就是持一种比较保守的态度,悲观锁就 ...
分类:
数据库 时间:
2018-09-02 16:10:15
阅读次数:
184
Innodb将数据和索引放在单独的文件中。 Innodb的数据存储在表空间中。 Innodb采用MVCC来支持高并发,并且实现了四个标准的隔离级别 默认隔离级别为repeatable read可重复读,通过间隙锁(next-key lock)策略防止幻读的出现 间隙锁使得Innodb不仅仅锁定查询涉 ...
分类:
数据库 时间:
2018-08-30 23:37:03
阅读次数:
305