- 1、本文档共97页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8.2数据库恢复技术.ppt
第8章 数据库保护 ;8.1 并发控制 ; 并发操作有两个明显的好处:
1. 提高系统的资源利用率
一个事务在不同的执行阶段需要的资源是不同的,有时需要CPU,有时需要通信,有时需要输入设备,……。 如果事务只能串行操作,则会造成资源的极大空闲。 事务并发执行, 则可交叉使用各种资源,可以明显的提高系统资源的利用率。 ; 2. 改善短事务的响应时间
有两个事务T1和T2,T1的执行时间很长,T2所需的时间很短。 在串行执行的情况下,若T1比T2稍早执行,则T2要等待很长的时间才能得到响应。 短事务响应时间过长是不应该的。而在并发情况下,T2可与T1并发执行,响应时间可明显缩短。
; 8.1.1 并发可能出现的问题
并发操作如果不加控制,可能引起数据的不一致性: 丢失更新、 读脏数据和不可重复读。
一、 丢失更新(lost update)
图 8 ― 1(a)给出了两个事务T1和T2恰好都执行修改同一数据的过程。
① T1首先读入数据A(准备修改);
② T2接着也读入数据A(与T1读入的值相同); ;图 8 ― 1 并发可引起数据的三类不一致性
(a) 丢失修改; (b) 读脏数据; (c) 不可重复读; ③ T1把A值加100后写回数据库,T1提交;
④ T2也把A值加100后写回数据库,T2提交;
A值明明加了两个100,但数据库中A值却只比原来多100!如果A值是某账号的存款余额,T1和T2是两个客户在不同地点向该账号付款的两个不同事务,后果的严重性就显而易见了。 ; 二、 读脏数据(Dirty Read)
图 8 ― 1(b)给出了两个事务T1和T2的执行过程。
① T1读入数据B,增加100后写回数据库;
② T2读入数据B;
③ T1由于某原因而被撤销(RollBack),即数据B已恢复原值。
此时,T2所读到的B值已不是数据库中B的值。 这种不一致性就是读脏数据的结果。
; 三、 不可重复读(Non―Repeatable Read)
图 8 ― 1(c)中:
① T1读入C值;
② T2读入C值,修改后,又写回数据库,T2提交;
③ T1再次读入C值。
但T1发现此时读入的C值却与前面读入的C值不同。 这就是不可重复读的含义。 上述现象的产生,其原因在于一个事务未执行完时,就开始执行另一个事务了。 如果一个事务在修改数据时,其他事务不得修改同一数据,就不会产生丢失更新的情况; ; 如果一个事务在更新数据时,其他事务不得读取该数据,则不会产生读脏数据的情况,也不会产生不可重复读的情况,这就是封锁(Locking)的目的。 当然,在有些情况下,数据库应用时出现一些不一致也是允许的,例如读脏数据、 不可重复读等,在这种情况下,对封锁的要求就可弱一些,从而增强系统并发的程度,降低系统的开销。
; 8.1.2 封锁(Locking)
封锁是普遍采用的一种并发控制手段,封锁可避免并发操作可能出现的问题。 所谓封锁就是某事务在对某对象(表、 记录等)执行操作前,先对此对象加上自己的锁。 加锁后,其他事务对此对象的操作就受到了规定的限制。 当然,该事务完成自己的操作之后,必须把加上的锁撤销,以使其他事务可执行各种操作。 ; 如果只有一种锁,锁上后其他事务不能对该对象执行任何操作,那就失去了并发的意义。因此,锁的基本类型有两种: 排它锁和共享锁。
一、 排它锁(Exclusive Lock,简称X锁、 写锁)
一个事务对某数据对象成功的加了X锁后,其他事务就不能对此对象加锁,也就不能对此对象执行任何操作,只有该事务才可对此对象执行读和修改的操作。 可见,只有数据对象未被任何其他事务加锁时,对它的X锁请求才会成功,否则将失败。
; 二、 共享锁(Share Lock,简称S锁、 读锁)
一个事务对某数据对象成功地加了S锁后,其他事务不能对该对象加上X锁,但可以再
您可能关注的文档
最近下载
- PDCA循环在降低采集血标本不合格率中的应用.pptx VIP
- 山东兖矿集团委培试卷.pdf VIP
- 胸痛三联征的影像学检查.pptx VIP
- 2025上半年中级软件水平考试《软件设计师(综合知识)》新版真题卷(含详细解析).docx VIP
- 亨德尔 咏叹调 我亲爱的恋人 mio caro bene罗德琳达钢琴伴奏正谱.pdf VIP
- 2025广西百色工业投资发展集团有限公司招聘27人备考题库及答案解析.docx VIP
- 许昌学院鲲鹏产业学院实训室项目.doc VIP
- 2025广西百色工业投资发展集团有限公司招聘27人笔试备考题库附答案解析.docx VIP
- 数字经济产业学院建设方案.pptx VIP
- ME8206系列_C2.0微盟原厂规格书.pdf VIP
文档评论(0)