浅谈DB2的四个隔离级别

隔离级别定义用于控制并发事务的行为,它决定在访问数据时数据是如何锁定的、如何与其他进程隔离的。

包括四个级别,级别从高到低:

RR(可重复读取)

RS(读取稳定性)

CS(游标稳定性)

UR(未提交的读取)

1.RR隔离级别:在此隔离级别下, DB2会锁住所有相关的纪录。 在一个SQL语句执行期间, 所有执行此语句扫描过的纪录都会被加上相应的锁。在一个SQL语句执行期间,所有执行此语句扫描过的纪录都会被加上相应的锁。 具体的锁的类型还是由操作的类型来决定, 如果是读取,则加共享锁; 如果是更新, 则加独占锁。具体的锁的类型还是由操作的类型来决定,如果是读取,则加共享锁;如果是更新,则加独占锁。 由于会锁定所有为获得SQL语句的结果而扫描的纪录, 所以锁的数量可能会很庞大, 这个时候, 索引的增加可能会对SQL语句的执行有很大的影响,因为索引会影响SQL语句扫描的纪录数量。由於会锁定所有為获得SQL语句的结果而扫描的纪录,所以锁 的数量可能会很庞大,这个时候,索引的增加可能会对SQL语句的执行有很大的影响,因為索引会影响SQL语句扫描的纪录数量。

2.RS隔离级别:此隔离级别的要求比RR隔离级别稍弱,此隔离级别下会锁定所有符合条件的纪录。 不论是读取, 还是更新, 如果SQL语句中包含查询条件, 则会对所有符合条件的纪录加相应的锁。不论是读取,还是更新,如果SQL语句中包含查询条件,则会对所有符合条件的纪录加相应的锁。 如果没有条件语句, 也就是对表中的所有记录进行处理,则会对所有的纪录加锁。如果没有条件语句,也就是对錶中的所有记录进行处理,则会对所有的纪录加锁。

3.CS隔离级别:此隔离级别仅锁住当前处理的纪录。

4.UR隔离级别:此隔离级别下,如果是读取操作,不会出现任何的行级锁。 对于非只读的操作,它的锁处理和CS相同。对於非只读的操作,它的锁处理和CS相同。DB2默认的隔离级别是CS。 DB2默认的隔离级别是CS。 即游标稳定性。即游标稳定性。

时间: 2024-08-05 21:42:32

浅谈DB2的四个隔离级别的相关文章

浅谈mysql中不同事务隔离级别下数据的显示效果

事务的概念 事 务是一组原子性的SQL查询语句,也可以被看做一个工作单元.如果数据库引擎能够成功地对数据库应用所有的查询语句,它就会执行所有查询,如果任何一条查 询语句因为崩溃或其他原因而无法执行,那么所有的语句就都不会执行.也就是说,事务内的语句要么全部执行,要么一句也不执行. 事务的特性:acid,也称为事务的四个测试(原子性,一致性,隔离性,持久性) automicity:原子性,事务所引起的数据库操作,要么都完成,要么都不执行consisitency:一致性,事务执行前的总和和事务执行后

浅谈关系型数据库事务的隔离级别

我们知道在关系型数据库里面事务有四个属性: 原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行. 一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态.一致状态的含义是数据库中的数据应满足完整性约束. 隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行. 持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中. 我们假设现在有A,B不同的

MySql四种隔离级别

什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有两种,当事务中的所以步骤全部成功执行时,事务提交.如果其中一个步骤失败,将发生回滚操作,撤消撤消之前到事务开始时的所以操作. 事务的 ACID 事务具有四个特征:原子性( Atomicity ).一致性( Consistency ).隔离性( Isolation )和持续性( Durability

Mysql数据库理论基础之九---四类隔离级别

一.简介 由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点: 1.是一种数据库管理系统 2.是一种关联数据库管理系统 3.是一种开放源码软件,且有大量可用的共享MySQL软件 4.MySQL数据库服务器具有快速.可靠和易于使用的特点 5.MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中 InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建.这样,表的大小就能超过单独文件的最大容量.表空间可包括原始磁盘分区,从而使得很大的表成为可能

SQL事务的四种隔离级别和MySQL多版本并发控制

SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的那些改变时可见的,那些是不可见的.低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. ReadUncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结构.本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少.读取未提交的数据,也被称之为脏读(Dirty Read) ReadCommitted(读取提交内容) 这是大多数数据库系统的默认隔离级别(但不是MySQL默认的).它

四个隔离级别

隔离级别 数据库系统有四个隔离级别.对数据库使用何种隔离级别要审慎分析,因为 1. 维护一个最高的隔离级别虽然会防止数据的出错,但是却导致了并行度的损失,以及导致死锁出现的可能性增加. 2. 然而,降低隔离级别,却会引起一些难以发现的bug. SERIALIZABLE(序列化) 添加范围锁(比如表锁,页锁等,关于range lock,我也没有很深入的研究),直到transaction A结束.以此阻止其它trasaction B对此范围内的insert,update等操作. 幻读,脏读,不可重复

MySQL事务四个隔离级别

MySQL事务隔离级别详解             MySQL数据结构SQL SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的.低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. Read Uncommitted (读取未提交的内容)  在该隔离级别,所有事务都可以看到其他未提交事务的执行结果.本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少.读取未提交的数据,也被称之为脏读(Dirty Read).Read Commit

数据库的四种隔离级别和事务的四特性

数据库事务的四大特性: 事务(Transaction)是并发控制的基本单位.所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位.例如,银行转帐工作:从一个帐号扣款并使另一个帐号增款,这两个操作要么都执行,要么都不执行. 1.数据库事务必须具备ACID特性,ACID是Atomic(原子性).Consistency(一致性).Isolation(隔离性)和Durability(持久性)的英文缩写. 1)原子性(Atomicity) 一个事务(transactio

数据库的四种隔离级别

一.事务的概念 一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有两种,当事务中的所有步骤全部成功执行时,事务提交.如果其中一个步骤失败,将发生回滚操作,撤消该事务已执行的操作. 二.事务的特性 ACID 事务具有四个特征:原子性( Atomicity ).一致性( Consistency ).隔离性( Isolation )和持续性( Durability ),简称为 ACID 特性. 三.多事务并发执行的问题 脏读(Drity Read):某个事务已更新一份数据,另一个事务