并发控制

数据库管理系统中的并发控制是确保多用户环境下事务正确执行的关键。并发操作可能导致数据不一致性,如丢失修改、不可重复读和读脏数据。事务是并发控制的基本单位,需要保证其ACID特性。并发控制机制通过调度并发操作防止数据不一致,确保事务的隔离性和一致性。
摘要由CSDN通过智能技术生成

数据库是一个共享资源,可以供多个用户使用。允许多个用户同时使用同一个数据库的数据库系统称为多用户数据库系统。
在这样的系统中,在同一时刻并发运行的事务可达数百上千个。
事务可以一个一个的串行执行,即每个时刻只有一个事务运行,其他事务必须等到这个事务结束以后方能运行
因此,为了充分利用系统资源,发挥数据库共享资源的特点,应该允许多个事务并行的执行。
在单处理系统中,事务的并发执行实际上是这些并行事务的并行操作轮流交叉运行,这种并行执行方式称为交叉并发方式。

在多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务真正的并发运行,这种并发执行方式称为同时并发方式。

并发控制概述

事务是并发控制的基本单位
保证事务的acid特性是事务处理的重要任务,而事务的acid特性可能遭到破坏的原因之一是多个事务对数据库的并发操作造成的。为了保证事务的隔离性和一致性,数据库管理系统需要对并发操作进行正确调度。这些就是数据库管理系统中并发控制机制的责任。

并发操作带来的数据不一致性包括丢失修改,不可重复读,读“脏”数据

1.丢失修改
二个事务t1和t2读入同一数据并修改,t2提交的结果破坏了t1提交的结果,导致t1的修改被丢失。

2.不可重复读
不可重复读是指事务t1读取数据后,事务t2执行更新操作,使t1无法再现前一次读取结果。(修改,删除,插入)

3.读“脏”数据
读“脏”数据是指事务t1修改某一数据并将其写入磁盘,事务t2读取同一数据后,t1由于某种原因被撤销,这时被t1修改过的数据恢复原值,t2读到的数据与数据库中的数据不一致,则t2读到的数据为“脏”数据,即不正确的数据。

产生上述三类数据不一致的主要原因是并发操作破坏了事务的隔离性,并发控制机制就是要用正确的方式调度并发操作,使一个用户事务的执行不受其他事务的干扰,从而避免造成数据的不一致性。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值