在上一篇中忘记了一个细节。Range T-K 到底代表了什么?Range T-K Lock 代表了在 SERIALIZABLE 隔离级别中,为了保护范围内的数据不被并发的事务影响而使用的一类锁模式(避免幻读)。它由两个部分构成:第一个部分代表了他锁定了一个索引范围,在这个范围内,所有索引使用 T 锁...
分类:
数据库 时间:
2015-05-08 17:49:06
阅读次数:
158
Spring事务以前的事务都是编程式事务,需要开启和关闭,然后程序写在这里面spring,声明式事务Spring事务隔离级别DEFAULT 使用数据库默认隔离级别 READ_UNCOMMITTED 允许读取尚未提交的数据。可能导致脏读、幻读或不可重复读。 READ_COMMITTE...
分类:
编程语言 时间:
2015-04-29 13:10:14
阅读次数:
135
脏读不可重复读幻读可序列化(符合事务的四个特性的正常情况 )解释: 脏读:事务A对数据1做了更新,但是还没有来得及提交 此时事务B对数据1进行了查询获得了事务A更新后的数据, 但是事务A因为一些原因又进行了回滚,这就导致数据1回到了 最初状态,那事务B读取的数据就是错误的,这就是脏...
分类:
Web程序 时间:
2015-04-28 17:53:50
阅读次数:
167
1, 脏读一个事务读到另一个事务,尚未提交的修改,就是脏读。这里所谓的修改,除了Update操作,不要忘了,还包括Insert和Delete操作。脏读的后果:如果后一个事务回滚,那么它所做的修改,统统都会被撤销。前一个事务读到的数据,就是垃圾数据。举个例子:预订房间。有一张Reservation表,...
分类:
其他好文 时间:
2015-04-12 14:45:20
阅读次数:
101
原文:Yii2.0的乐观锁与悲观锁Web应用往往面临多用户环境,这种情况下的并发写入控制, 几乎成为每个开发人员都必须掌握的一项技能。在并发环境下,有可能会出现脏读(Dirty Read)、不可重复读(Unrepeatable Read)、 幻读(Phantom Read)、更新丢失(Lost up...
分类:
其他好文 时间:
2015-04-08 06:27:11
阅读次数:
1396
事务隔离级别:一个事务对数据库的修改与并行的另一个事务的隔离程度。
两个并发事务同时访问数据库表相同的行时,这些问题可以归结为5类:
3类数据读问题(脏读、不可重复读和幻象读)
2类数据更新问题(第一类丢失更新和第二类丢失更新)。
1、幻读:事务T1读取一条指定where条件的语句,返回结果集。此时事务T2插入一行新记录,恰好满足T1的where条件。然后T1使用相同的条件再次...
分类:
数据库 时间:
2015-03-18 23:21:09
阅读次数:
586
repeatable-read是Mysql默认事务隔离级别!能解决脏读以及不可重复读的问题,但可能出现幻读的情况不可重复读:在一个未提交的事务里,二次查询结果可能不相同,因为在这个事务执行过程中,外面的事务可能对这个数据集进行了修改并提交!幻读:一个事务在操作过程中!有别的事..
分类:
数据库 时间:
2015-03-11 19:58:52
阅读次数:
6275
1, 脏读一个事务读到另一个事务,尚未提交的修改,就是脏读。这里所谓的修改,除了Update操作,不要忘了,还包括Insert和Delete操作。脏读的后果:如果后一个事务回滚,那么它所做的修改,统统都会被撤销。前一个事务读到的数据,就是垃圾数据。举个例子:预订房间。有一张Reservation表,...
分类:
其他好文 时间:
2015-03-05 10:43:18
阅读次数:
114
隔离级别 是否存在脏读 是否存在不可读 是否存在幻读1 Read Unommited 没提交 可以读 Y Y Y2 Read Commited 提交了 ,可以读Oracle N Y Y4 Repeatable Read MySQL默认级别 N N Y8 Serialiazble 可序列化 N ...
分类:
Web程序 时间:
2015-03-04 19:03:37
阅读次数:
188