- 浏览: 578124 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (411)
- webservice (3)
- oracle (37)
- sqlserver (8)
- j2ee (56)
- linux (7)
- javaweb (47)
- office (1)
- struts (23)
- hibernate (11)
- spring (29)
- 网络 (2)
- tomcat (13)
- tongweb (0)
- weblogic (0)
- powerdesiginer (3)
- svn (3)
- js (20)
- ie (2)
- 编译 (3)
- css (2)
- 操作系统 (5)
- Android (41)
- jbpm4.3 (1)
- fckeditor (3)
- 操作excel (2)
- db2常用命令 (1)
- ibatis (5)
- mysql (16)
- 表达式语言 (1)
- java方式调用存储过程 (1)
- ca (1)
- linux客户端 (1)
- 电子数码 (1)
- 行业应用 (12)
- 开发工具 (4)
- 面试 (1)
- 计算机原理 (1)
- NOSQL (5)
- 虚拟机 (1)
- nginx (0)
- velocity (2)
- jndi (1)
- spring mvc (39)
- springmvc (32)
- 安全 (5)
- htmleditor (6)
- iphone4 (1)
- html (4)
- jstl (2)
- ckeditor (5)
- 连接池 (1)
- jquery (6)
- 分页 (1)
- 技术研发规则 (1)
- javamail (1)
- maven (2)
- upload (1)
- log (1)
- 测试 (10)
- spring roo (1)
- 版本控制 (2)
- find bugs (0)
- jsf (0)
- springroo (0)
- 小道理 (1)
- 小道理,技术标准 (1)
- jsf (0)
- bitbao (2)
- redmine (3)
- 团队意识 (1)
- mybatis (2)
- jquery mobile (1)
- flexpaper (0)
- json (4)
- URLRewriteFilte (1)
- html5 (1)
- 都乐保活动 (0)
- openfire (0)
- TreeMap (1)
- build (0)
- javaweb,tag (0)
- algorithm (1)
- tag (2)
- 扯淡 (0)
- mac (2)
- 叶一火(老一) (1)
- 游玩 (1)
- 编码 (1)
- 上线部署 (0)
- 研发管理 (0)
- thumbnailator (2)
- 旅游 (0)
- bingweibo (1)
- 杂谈 (4)
- ktv (1)
- weibo (1)
- 爱情 (2)
- 饮食 (1)
- MediaWiki (1)
- git (1)
- 版本库 (1)
- servlet (1)
- 感悟 (1)
- 人生 (1)
- highcharts (1)
- poi (0)
- websphere (0)
- php (1)
最新评论
-
woshixushigang:
good
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
nathanleewei:
org.springframework.jdbc.core.B ...
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
浪禾木:
请问是ckeditor\contents.css吗?改过以后 ...
ckeditor自动换行问题 -
simusuishi:
刚哥威武!
ckeditor取值赋值问题 -
a455642158:
收割完毕……
Android开源项目源码下载(不断更新中)
事物隔离级别(转)
以前一直没有搞得特别明白,这次又碰上了这个问题,整理一下。
事物隔离级别定义在数据库并发事务中一个事务中的数据修改对另一个同时运行的事务的影响。
数据库并发事务中的三个问题:
Dirty Read: 如果能够读物没有提交的事务所做的数据修改,就会发生脏读的问题。因为事务有可能回滚。
Nonrepeatable Read: 这个主要是因为在一个事物中的两次读数据之间,另一个事务对同样的数据进行了修改,直接导致两次读取的数据不一致。
Phantom Read: 这个可以看成是Nonrepeatable Read的一种特殊情况。两次读之间的不一样的数据是另一个事务添加并提交的记录。只有当添加记录时才会出现这个问题。
为了解决这三个问题,SQL标准中定义了四种事务隔离级别
Serailizable:
所有的事务完全隔离。看起来就像一个事务完成后再去执行另一个事务。
不会出现幻象读取(phantom reads)
在基于锁的并发控制中,当查询带有where子句时,串行化要求区域锁(range locks)
在其他的并发控制中,当串行化冲突发生后,事务要回滚,然后再重新开始。
Repeatable Read:
所有读取中的记录不能被修改。读取记录需要加读取锁,不需要区域锁,当查询带有where子句时,可能出现幻象读取。
Read Committed:
读取中的记录可能会被另一个事务进行修改。不可重复读可能出现。
Read Uncommited:
一个事务能够访问另一个事务未提交的修改。会出现脏读
四种隔离级别分别能够解决的问题:
Isolation Level Dirty Read Nonrepeatable Read Phantom Read
READ UNCOMMITTED Permitted Permitted Permitted
READ COMMITTED -- Permitted Permitted
REPEATABLE READ -- -- Permitted
SERIALIZABLE -- -- --
其它广泛使用的隔离方法:
snapshot isolation:
当读取数据时,系统生成为这个事务一个快照,这个快照在整个事务中使用,这样来保证数据在这个事务中的一致性。
更新操作同样发生在这个快照上,在事务提交之前,不会与任何其它事务所做的修改冲突。
当提交事务时,系统检查这些修改的数据在快照之后是否被其他事务修改,如果没有修改,这个事务就可以提交了。
如果有修改,这个事务就需要回滚再重新执行。
snapshot isolation 能够避免并发事务的三个问题。
发表评论
-
RESTFUL
2013-05-29 17:21 0a -
sql查询不同用户下得表
2013-03-08 10:26 0查询当前用户的表 SELECT table_nam ... -
hibernate命名查询问题
2013-01-30 16:38 1322hibernate 注解 @OneToOne(fetc ... -
hibernate [Null value was assigned to a property of primitive type setter of sco
2012-12-25 19:51 1115今天开发时候 hibernate 查询报错,分析原因如下: ... -
spring mvc responseBody 会把特殊字符转义
2012-07-26 19:53 4509框架用的spring 采用spring mvc 方式进行图片上 ... -
spring mvc 自己遇到的几个错误
2012-06-13 14:36 1202where 1=1 and t.name like '%&q ... -
Request method 'POST' not supported
2012-06-08 10:53 5208项目采用spring mvc框架实现,插入数据时候采用 ... -
spring mvc title展示的几种写法
2012-05-18 17:16 1093我记录的是工作中遇到的,容易忽视的问题,高手可以绕行了。积累也 ... -
spring mvc 由页面到类再传给页面可不必放在modelmap
2012-05-09 11:43 0防止表单重复提交,可以用redirect @Reque ... -
500 Internal Server Error
2012-05-02 14:23 2791spring mvc restfull形式调用api 报 ... -
multipart/form-data>加上之后spring的表单标签失效及无法正常获取参数
2012-03-04 14:27 0<form:form modelAttrib ... -
spring mvc RESTful url
2012-02-25 16:40 1459详细讲解spring rest使用,简单例子如下: ... -
spring jdbc queryForList数据库字段空值报错
2012-02-15 16:29 2230List<Map<String, Object&g ... -
Spring jdbc
2012-02-15 14:50 0Spring 不仅仅是一个IoC container。 其提 ... -
spring mvc 批量操作
2012-02-15 14:15 1710用SimpleJdbcTemplate实现批量新增和批量修改。 ... -
spring roo和jsf构建后台项目
2012-02-09 13:38 01、tomcat lib 需要 el-api-2.2.jar和 ... -
eclipse+SpringRoo可以自动反转成实体类...
2012-02-03 13:12 01、今天发现springroo原来这么强大,不但可以自动生成基 ... -
eclipse codestyle和formate
2011-12-26 11:20 1061北京都乐宝软件信息技术公司的代码风格 -
Common-logging 与 Log4j的结合使用
2011-12-25 15:58 1207转自:http://hi.baidu.com/suofang/ ... -
spring cookid
2011-11-30 20:32 854// 设置UCookie对象 /*UCookie uCo ...
相关推荐
查询:默认事务隔离级别 mysql> select @@tx_isolation;当前会话的默认事务隔离级别 mysql> select @@session.tx_isolation;当前会话的默认事务隔离级别 mysql> select @@global.tx_isolation;全局的事务隔离级别
MySQL事务隔离级别是数据库管理系统中一个非常重要的概念,它关系到数据的一致性和并发性能。在MySQL中,事务被用于确保数据库操作的原子性、一致性、隔离性和持久性(ACID特性)。事务隔离级别主要涉及四个方面:读...
MySQL数据库管理系统提供了四种事务隔离级别来处理事务并发中可能遇到的问题。事务并发问题通常包括脏读、不可重复读和幻读。 一、事务的基本要素(ACID) 事务具有四个基本要素,即原子性(Atomicity)、一致性...
Spring 框架提供了一套完善的事务管理机制,其中包含了多种事务传播属性和事务隔离级别。这些特性使得在处理数据库操作时,能够更好地控制事务的边界和行为,从而确保数据的一致性和完整性。 首先,我们来看一下...
### Spring 事务传播特性和事务隔离级别详解 #### 一、Spring 事务传播特性 在进行多层服务架构设计时,事务的管理尤其重要。为了确保数据的一致性,Spring 提供了一种灵活的方式来控制事务的传播行为。下面详细...
SQL Server的锁机制和事务隔离级别是数据库管理系统中确保数据一致性、避免并发问题的重要机制。在SQL Server中,锁主要用于控制多个用户同时访问同一数据时的并发操作,而事务隔离级别则是确定在事务中如何处理这些...
深入理解Mysql事务隔离级别与锁机制 Mysql事务隔离级别与锁机制是数据库系统中非常重要的概念,它们都是为了解决多事务并发问题而设计的。下面我们将深入讲解这些机制,让大家彻底理解数据库内部的执行原理。 事务...
事务传播特性&事务隔离级别 事务传播特性是指在 Java 中,事务的传播行为,即在多个事务之间如何交互和传播。Java 中有七种事务传播特性,分别是: 1. PROPAGATION_REQUIRED:如果存在一个事务,则支持当前事务。...
事务隔离级别 课程目标 了解 —— 事务隔离级别的概念; 理解 —— 事务隔离的四种级别; 掌握 —— 事务隔离级别的设置; 事务隔离级别 事务隔离:每一个事务都有一个所谓的隔离级,它定义了用户彼此之间隔离和交互...
介绍数据库事务的四种隔离级别,比较不同隔离级别的区别和影响
在多用户并发访问数据库系统时,事务隔离级别的设置对于保障数据一致性与系统并发性能之间至关重要。本文档详细探讨了SQL Server中不同事务隔离级别的实验研究,揭示了各隔离级别与锁管理之间的关系,并通过实验验证...
### Spring事务的传播特性和事务隔离级别 #### 一、Spring事务的传播特性(Propagation) 在Spring框架中,事务管理不仅提供了ACID属性的支持,还引入了事务的传播特性,这些特性决定了当一个方法调用另一个方法时,...
**事务隔离级别** 在计算机科学,尤其是数据库管理系统(DBMS)的设计中,事务隔离级别是确保数据一致性、避免并发操作导致的问题的关键概念。事务是一系列数据库操作的逻辑单元,它们要么全部成功,要么全部失败。...
### 数据库事务隔离级别详解 #### 一、引言 在多用户共享的数据库系统中,为了保证数据的一致性和准确性,必须对并发事务进行控制。数据库事务隔离级别是用来管理多个事务之间相互影响的程度,主要解决的问题包括脏...
【事务隔离级别】 在计算机科学,特别是在数据库管理系统(DBMS)中,事务隔离级别是确保数据库并发操作一致性的重要概念。事务是一系列数据库操作的逻辑单元,必须作为一个整体执行,要么全部成功,要么全部失败。...
Hibernate 事务隔离级别 深入探究 在 Hibernate 中,事务隔离级别是指数据库系统提供的一种机制,以解决并发事务带来的问题。为了确保数据库的可靠性和一致性,Hibernate 提供了四种事务隔离级别,分别是 ...
理解SQL Server中事务隔离级别及相应封锁机制 SQL Server中事务隔离级别是数据库管理系统中一个重要的概念,它决定了事务之间的并发执行和数据的一致性。本文将详细介绍SQL Server中事务隔离级别的概念、分类、特点...
MySQL 支持四种事务隔离级别:READ UNCOMMITTED(读未提交)、READ COMMITTED(读已提交)、REPEATABLE READ(可重复读)和 SERIALIZABLE(串行化)。每种隔离级别对应不同程度的事务并发问题的防范,其中,MySQL ...