今天上午和同事火热争论了一番,争来争去围绕的就锁的几个基本概念。 record lock、gap lock、next_key lock 当时争完后发现自己对锁的理解更加透彻了:事务的隔离级别就是通过锁来实现的啊。 RC:仅有record 锁RR:有record和next_key锁 现在我们就来讨论在 ...
分类:
数据库 时间:
2016-06-28 20:11:49
阅读次数:
194
数据库事务的隔离级别有4个,由低到高为Read uncommitted、Read committed、Repeatable read、Serializable 脏读 不可重复读 幻读 Read uncommitted √ √ √ Read committed × √ √ Repeatable rea ...
分类:
数据库 时间:
2016-06-25 12:21:20
阅读次数:
177
注明: 本文转载自http://www.hollischuang.com/archives/943 本文详细介绍四种事务隔离级别,并通过举例的方式说明不同的级别能解决什么样的读现象。并且介绍了在关系型数据库中不同的隔离级别的实现原理。 在DBMS中,事务保证了一个操作序列可以全部都执行或者全部都不执 ...
分类:
数据库 时间:
2016-05-18 23:47:39
阅读次数:
268
事务的概念
MySQL下操作事物
JDBC下操作事物
事务特性(重点) ACID
事务的隔离级别
隔离级别方案演示
bcUtils中使用ThreadLocal
丢失更新
解决丢失更新可以采用两种方式
连接池
数据库连接池编写原理分析
自定义连接池
DBCP数据源(了解)
dbcp连接池使用
C3P0数据源(必会)
配置Tomcat数据源
JNDI技术简介...
分类:
编程语言 时间:
2016-05-16 13:01:16
阅读次数:
371
1. 幻读 幻读(Phantom Read)又称为虚读,是指在一个事务内两次查询中数据条数不一致,幻读和不重复读有些类型,同样是在两次查询过程中,不同的是,幻读是由于其他事务做了插入记录的操作,导致记录数有所增加。 例如:银行在做统计报表时统计account表中所有用户的总金额时候,此时总共有三个账 ...
分类:
数据库 时间:
2016-05-15 09:40:38
阅读次数:
327
spring传播属性PROPAGATION_REQUIRED:该方法必须运行在一个事务中。如果一个事务正在运行,该方法将运行在这个事务中。否则,就开始一个新的事务。Spring事务的隔离级别1.ISOLATION_DEFAULT:这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别..
分类:
编程语言 时间:
2016-05-11 20:22:23
阅读次数:
288
数据库事务的隔离级别 对于同时运行的多个事务, 当这些事务访问数据库中相同的数据时, 如果没有采取必要的隔离机制, 就会导致各种并发问题:脏读: 对于两个事物 T1, T2, T1 读取了已经被 T2 更新但还没有被提交的字段. 之后, 若 T2 回滚, T1读取的内容就是临时且无效的.不可重复读: ...
分类:
数据库 时间:
2016-05-08 16:54:03
阅读次数:
390
数据库事务的隔离级别有4个,由低到高依次为Read uncommitted 、Read committed 、Repeatable read 、Serializable ,这四个级别可以逐个解决脏读 、不可重复读 、幻读 这几类问题。 √: 可能出现 ×: 不会出现 注意:我们讨论隔离级别的场景,主 ...
分类:
数据库 时间:
2016-05-04 19:07:03
阅读次数:
223
1.事务的隔离级别REQUIRED:如果存在一个事务,则在当前事务中执行,如果没有存在一个事务,在需要开启一个事务。SUPPORTS:如果存在一个事务,则在当前事务中执行,如果没有存在一个事务,则不在事务中执行。MANDATORY(强制性mandatory):如果存在一个事务,则在当前事务中执行,如 ...
分类:
编程语言 时间:
2016-05-03 21:50:36
阅读次数:
138
先看结论:(重要) MySQL中innodb事务默认的隔离级别为REPEATABLE READ,可重读隔离级别,配合MySQLinnodb的行锁机制Next-Key Lock的实现,在REPEATABLE READ的级别下,就避免了幻读的产生,因此几乎达到了SERIALIZABLE级别的要求。 那么 ...
分类:
数据库 时间:
2016-04-20 21:35:14
阅读次数:
245