版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章事务管理事务的定义、恢复与并发控制本章知识导图本章学习目标了解:事务定义与并发基础事务的定义与状态、数据库故障类型,以及并发控制的封锁、时间戳等基础技术。理解:ACID特性与数据一致性事务ACID特性的内涵、数据库恢复的基本原理,以及并发操作导致数据不一致的原因。掌握:恢复策略与封锁协议先写日志后写数据库的原则、三类故障的恢复策略,以及一至三级封锁协议的规则与作用。目录01事务的基本概念定义、状态与ACID特性02数据库恢复技术故障类型与恢复策略03事务的并发控制问题与解决方案04本章小结回顾本章重点内容,总结核心知识点6.1事务的基本概念定义、状态与ACID特性事务定义事务状态ACID特性6.1.1事务的定义事务定义事务是数据库管理系统中,一个或多个数据库操作组成的不可分割的工作单元。这些操作要么全部执行成功,要么全部执行失败。经典示例:银行转账从账户A转出资金到账户B,包含“减少账户A余额”和“增加账户B余额”两个操作,必须作为一个事务整体执行,确保数据一致性。控制语句通常通过BEGINTRANSACTION(开始)、COMMIT(提交)、ROLLBACK(回滚)等SQL语句来定义和控制事务的生命周期。6.1.2事务的状态执行中状态活跃&部分提交活跃:事务开始执行操作。部分提交:操作完成但未写入磁盘。正常结束状态提交状态(COMMIT)执行COMMIT命令,结果永久写入数据库,事务正常结束。异常处理状态失败&中止(ROLLBACK)失败:执行中发生错误。中止:执行ROLLBACK,恢复初始状态。6.1.3事务的ACID特性原子性(Atomicity)事务是不可分割的工作单元,要么全做,要么全不做。一致性(Consistency)事务执行前后,数据库的完整性约束保持不变。隔离性(Isolation)多个事务并发执行时,彼此隔离,互不干扰。持久性(Durability)事务一旦提交,其结果永久保存,不受系统故障影响。6.2数据库恢复技术故障类型与恢复策略事务故障系统故障数据转储日志文件6.2.1故障的类型事务故障事务内部错误导致无法完成,如逻辑错误、系统错误。系统故障系统崩溃或断电,导致所有事务中断,但磁盘数据未损坏。介质故障磁盘损坏等硬件问题,导致数据永久丢失,是最严重的故障。人为故障操作失误或恶意破坏,如误删数据、黑客攻击。6.2.2数据库恢复的基本原则基本原则核心是数据冗余。通过存储冗余数据(如备份副本、日志文件)来建立恢复基础,确保故障后可还原。基本思路定期对数据库进行全量或增量备份,并实时记录事务操作日志。故障发生时,结合备份和日志进行数据恢复。核心策略利用冗余数据,以“备份”为基础,以“日志”为增量,实现数据的时间点恢复或故障点恢复。6.2.3常用恢复技术:数据转储完全转储复制整个数据库,恢复简单但耗时。增量转储只复制上次转储后修改的数据,效率高但恢复复杂。差量转储复制上次完全转储后修改的数据,兼顾了效率和恢复的简便性。6.2.3常用恢复技术:日志文件内容记录事务的开始、结束以及所有更新操作的详细信息,包括操作类型、对象、旧值、新值等关键数据。作用用于追溯事务执行过程,是事务故障、系统故障和介质故障恢复的重要依据,确保数据一致性。核心原则坚持“先写日志,后写数据库”(WAL)。确保即使在写入数据库时发生故障,也能通过日志重做或撤销操作来恢复数据。6.2.3故障恢复策略事务故障恢复反向扫描日志反向扫描日志,撤销(UNDO)未完成事务的操作。系统故障恢复正向扫描日志正向扫描日志,重做(REDO)已提交事务,撤销未完成事务。介质故障恢复备份+日志重做先利用备份恢复到某个时间点,再利用日志重做此后的所有已提交事务。6.3事务的并发控制丢失修改不可重复读幻读现象封锁机制6.3.1并发操作带来的问题丢失修改多个事务同时修改同一数据,后提交的覆盖先提交的结果,导致先提交的修改丢失。不可重复读一个事务内多次读取同一数据,期间被其他事务修改,导致结果不一致,破坏了事务的隔离性。脏读一个事务读取到另一个事务尚未提交的修改数据,而这些数据可能被回滚,导致读取到无效数据。6.3.2并发控制技术:封锁技术封锁定义事务在操作数据前先申请锁,获得锁后才能操作,操作完释放锁。通过锁机制保障数据并发操作的一致性。封锁类型共享锁(S锁):用于读操作,允许多个事务同时加S锁,实现“读共享”。排他锁(X锁):用于写操作,同一数据只能被一个事务加X锁,实现“写独占”。核心作用通过封锁机制隔离并发操作,防止丢失修改、不可重复读和幻读,确保数据库的并发控制和数据一致性。6.3.2并发控制技术:封锁协议一级封锁协议修改数据加X锁,事务结束释放核心作用:防止丢失修改。二级封锁协议一级基础上,读数据加S锁,读完即释放核心作用:防止丢失修改和脏读。三级封锁协议一级基础上,读数据加S锁,事务结束释放核心作用:防止丢失修改、脏读和不可重复读。6.3.2其他并发控制技术:时间戳协议基本原理为每个事务分配一个唯一的时间戳,标记其执行顺序。系统通过比较时间戳来决定操作的先后顺序。主要作用避免并发冲突,保证数据一致性。它是一种非封锁的并发控制方法,通过串行化调度来实现隔离性。核心特点时间戳协议是一种乐观并发控制机制,不使用锁机制,而是通过“先到先服务”的原则解决冲突。本章小结事务概念掌握事务的定义、状态和核心的ACID特性,理解事务是数据库操作的基本单位。恢复技
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厦门2026年二级建造师《水利水电工程实务》考试真题及答案
- 内科护理学试题及答案-泌尿系统
- 2025年黑龙江省肇东市高考物理学业考试考试卷及参考答案详解(模拟题)
- 2026年注册会计师考试财管试题与答案
- 2026年河北省任丘市高考物理强基计划试卷含完整答案详解(全优)
- 购买酒店公寓合同范本
- 衬衫分期购买合同模板
- 房屋购买指标转让合同
- 学校装修购买材料合同
- 手表代替钻戒购买合同
- T∕DZJN 515-2026 分布式储能系统接入微电网技术规范
- 2025-2026学年四川省达州市经开区八年级(上)期末语文试卷(含详细答案解析)
- 2025-2030中国民宿行业经营现状分析与未来投资价值评估研究报告
- 公司员工购车补贴政策与协议书
- 单晶4H-SiC晶片的集群电极电化学机械抛光基础研究
- 2026年毛概期末考试试题库100道带答案(轻巧夺冠)
- 11080《工程数学》国家开放大学期末考试题库
- 雨课堂学堂在线学堂云《临床流行病学(山东大学)》单元测试考核答案
- 自然语言处理:大模型理论与实践 课件 第七章 多模态大模型架构
- 棋牌室场所安全管理制度
- 员工环境管理培训
评论
0/150
提交评论