- 1、本文档共96页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章-事务与并发控制
第9章 事务与并发控制 关于数据库保护 9.1 事务 事务概念(举例) 9.1.2 事务的特性(ACID特性) 原子性(Atomicity) :指事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。 一致性(Consistency) :指事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性(Isolation) :指数据库中一个事务的执行不能被其它事务干扰。 持久性(Durability) :也称为永久性指事务一旦提交,则其对数据库中数据的改变就是永久的。 举例:事务及其特征 问题:设银行数据库中有一转账事务T,从账号A转一笔款子($50)到账号B。 相应的事务: T:read(A); A:=A–50; write(A); read(B); B:=B + 50; write(B). 原子性(A,B同时被修改或同时保持原值) 一致性(A+B的值不变) 隔离性 持久性 事务提交与撤销 事务中操作完成后,可以提交事务 (COMMIT),也可以撤销事务 (ROLLBACK)。 提交事务(COMMIT) 撤消事务(ROLLBACK) SQL Server设置隐含事务方式的命令是: SET IMPLICIT_TRANSACTIONS ON 取消隐含事务方式的命令是: SET IMPLICIT_TRANSACTIONS OFF 事务应用举例1 事务应用举例2---银行转帐业务处理事务示意 9.2 并发控制 9.2.1 并发控制概述 数据库中的数据是一个共享的资源,因此会有很多用户同时使用数据库中的数据, 在多用户数据库系统中,允许多个用户同时使用的数据库系统,可能同时运行着多个事务,而事务的运行需要时间,并且事务中的操作是在一定的数据上进行的。 当系统中同时有多个事务在运行时,特别是当这些事务是对同一段数据进行操作时,彼此之间就有可能产生相互干扰的情况。 并发控制概述 不同的多事务执行方式 事务串行执行 每个时刻只有一个事务运行,其他事务必须等到这个事务结束以后方能运行 不能充分利用系统资源,发挥数据库共享资源的特点 并发控制概述 交叉并发方式 在单处理机系统中,事务的并行执行是这些并行事务的并行操作轮流交叉运行 单处理机系统中的并行事务并没有真正地并行运行,但能够减少处理机的空闲时间,提高系统的效率 并发控制概述 并发控制概述 同时并发方式 多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务真正的并行运行 并发控制概述 事务并发执行带来的问题 会产生多个事务同时存取同一数据的情况 可能会存取和存储不正确的数据,破坏事务一致性和数据库的一致性 并发控制概述 并发操作带来数据的不一致性实例 [例1]飞机订票系统中的一个活动序列 ① 甲售票点(事务T1)读出某航班的机票余额A,设A=16; ② 乙售票点(事务T2)读出同一航班的机票余额A,也为16; ③ 甲售票点卖出一张机票,修改余额A←A-1,所以A为15,把A写回数据库; ④ 乙售票点也卖出一张机票,修改余额A←A-1,所以A为15,把A写回数据库 结果明明卖出两张机票,数据库中机票余额只减少1 并发控制概述 1.丢失数据修改 丢失数据修改 丢失数据修改 这种情况称为数据库的不一致性,是由并发操作引起的。 在并发操作情况下,对T1、T2两个事务的操作序列的调度是随机的。 若按上面的调度序列执行, T1事务的修改就被丢失。 原因:第4步中T2事务修改A并写回后覆盖了T1事务的修改 2. 读“脏”数据 读“脏”数据是指: 事务T1修改某一数据,并将其写回磁盘 事务T2读取同一数据后,T1由于某种原因被撤销 这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致 T2读到的数据就为“脏”数据,即不正确的数据 读“脏”数据 读“脏”数据 3. 不可重复读 不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。 不可重复读 不可重复读包括三种情况: (1)事务T1读取某一数据后,事务T2对其做了修改,当事务T1再次读该数据时,得到与前一次不同的值 不可重复读 不可重复读 T1读取B=100进行运算 T2读取同一数据B,对其进行修改后将B=200写回数据库。 T1为了对读取值校对重读B,B已为200,与第一次读取值不一致 不可重复读 (2)事务T1按一定条件从数据库中读取了某些数据记录后,事务T2删除了其中部分记录,当T1再次按相同条件读取数据时,发现某些记录消失了 (3)事务T1按一定条件从数据库中读取某些数据记录后,事务T2插入了一些记录,当T
您可能关注的文档
- 第6章-成本模型.ppt
- 第6章-控制文件和日志文件.ppt
- 第6章-向页面添加动态内容.ppt
- 第6章-SPSS方差分析.ppt
- 第6章-电子商务系统分析.ppt
- 第6章-网站管理.ppt
- 第6章-职业规划服务.ppt
- 第6章-软件过程的项目管理.ppt
- 第6章-电子商务服务管理和运营.ppt
- 第6章-项目成本决算与项目审计.ppt
- 2022重庆资源与环境保护职业学院招聘笔试真题附答案详解.docx
- 2023三亚航空旅游职业学院招聘笔试真题及参考答案详解.docx
- 2022邯郸幼儿师范高等专科学校招聘笔试真题及答案详解一套.docx
- 2022西安外事学院招聘笔试真题及答案详解1套.docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患).docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患)170.docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患)178.docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患)176.docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患)182.docx
- 2025年“安全生产月”活动实施方案(查找身边安全隐患).docx
最近下载
- 热分布报告样本.pdf
- 2025年一建一级建造师建筑实务案例分析考点重点知识总结高分笔记.pdf VIP
- 手足口病的诊断与治疗课件.ppt VIP
- 会计法律法规答题答案.doc VIP
- 我国商业银行开展绿色信贷业务存在的问题和对策.docx VIP
- 医院消防安全除患整治攻坚行动工作总结8篇.docx VIP
- 《桃花源记》比较阅读85篇(历年中考语文文言文阅读试题汇编)(含答案与翻译)(截至2020年).doc
- 2025年北京东城区高三一模高考英语试卷试题(含答案详解).docx
- 2024潍坊护理职业学院招聘笔试真题及参考答案详解一套.docx VIP
- 年产300吨2-乙酰呋喃分离工段的工艺设计.docx
文档评论(0)