1.READ UNCIMMITTED(未提交读) 事务中的修改,即使没有提交,其他事务也可以看得到,比如说上面的两步这种现象就叫做脏读,这种隔离级别会引起很多问题,如无必要,不要随便使用 例子:还是售票系统,小明和小花是售票员,他们分别是两个不同窗口的员工,现在售票系统只剩下3张票,此时A来小华这里 ...
分类:
数据库 时间:
2017-12-25 17:02:46
阅读次数:
255
本文针对MySQL中在Repeatable Read的隔离级别下使用select for update可能引发的死锁问题进行分析。 1. 案例 业务中需要对各种类型的实体进行编号,例如对于x类实体的编号可能是x201712120001,x201712120002,x201712120003类似于这样 ...
分类:
其他好文 时间:
2017-12-22 03:27:00
阅读次数:
1302
1.什么是事务: 事务是程序中一系列严密的操作,所有操作执行必须成功完成,否则在每个操作所做的更改将会被撤销,这也是事务的原子性(要么成功,要么失败)。 2.事务特性: 事务特性分为四个:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durab ...
分类:
编程语言 时间:
2017-12-21 19:28:17
阅读次数:
154
核心知识: 1.什么是事务?一组原子性的SQL查询语句 2.事务的四种属性:ACID 3.四种隔离级别:读取未提交内容、读取提交内容、重复读、串行化。 4.什么是幻读?幻读有那些解决办法?连续读取同一数据得到不同的结果就是幻读,InnoDB通过多版本并发控制机制来解决幻读问题。 5.什么是死锁?怎样 ...
分类:
数据库 时间:
2017-12-14 19:21:58
阅读次数:
198
一、事务概述 事务是一个不可分割的整体。 事务ACID特性:原子性(Atomicty)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability) 事务的隔离级别 READ_UNCOMMITTED READ_COMMITTED REPEATABLE_READ SE ...
分类:
其他好文 时间:
2017-12-14 03:45:29
阅读次数:
89
本文同时发表在 "https://github.com/zhangyachen/zhangyachen.github.io/issues/53" lock与latch 在数据库中,lock与latch都可以成为锁,但两者有截然不同的含义。 latch 一般称为闩锁(轻量级的锁) 因为其要求锁定的时间 ...
分类:
数据库 时间:
2017-12-14 03:17:44
阅读次数:
281
Oracle事务与锁 2017-12-13 目录 1 数据库事务概括 1.1 事务定义 1.2 事务生命周期 1.3 事物的特性 1.4 死锁2 事务相关语句 2.1 事务相关语句概括 2.2 建立事务隔离级别3 锁 3.1 锁模式 3.2 乐观锁和悲观锁参考 1 数据库事务概括 返回 1.1 事务 ...
分类:
数据库 时间:
2017-12-13 23:50:17
阅读次数:
272
此次继续介绍数据库事务的隔离级别 1.READ UNCOMMITTED 未提交读 A账户转账,但未提交事务,B可以查询A账户余额,但是A由于某种原因回滚,B读到的数据就是错误的,称为脏读或未提交读 READ COMMITTED可避免脏读发生 2.不可重复读 REPEATABLE READ 可以防止重 ...
分类:
数据库 时间:
2017-12-12 21:25:19
阅读次数:
177
Isolation 阅读目录(Content) 1 并发控制理论 1.1 悲观并发控制 1.2 乐观并发控制 2 隔离级别 2.1 隔离级别说明 2.2 Read Commmitted Snapshot Isolation 与 Snapshot Isolation 3.2 Read Committe ...
分类:
数据库 时间:
2017-12-04 11:41:11
阅读次数:
308
DEFAULT:采用数据库默认隔离级别READ_UNCOMMITTED:保证了读取过程中不会读取到非法数据READ_COMMITTED:大多数主流数据库的默认事务等级,保证了一个事务不会读到另一个并行事务已修改但未提交的数据,避免了“脏读取”。该级别适用于大多数系统。REPEATABLE_READ: ...
分类:
数据库 时间:
2017-12-03 15:38:52
阅读次数:
227