认证考试第七章 数据库系音统的恢复和并发操纵技巧.pptVIP

  • 3
  • 0
  • 约6.36千字
  • 约 110页
  • 2019-03-09 发布于福建
  • 举报

认证考试第七章 数据库系音统的恢复和并发操纵技巧.ppt

认证考试第七章 数据库系音统的恢复和并发操纵技巧

事务:是一个不可分割的操作序列,该操作序列要么全做,要么全不做。 强调:事务和程序是两个概念。 一个程序中可以包含多个事务。;隐式控制:由DBMS按缺省规定自动划分。 显式控制: BEGIN TRANSACTION [事务开始] COMMIT [事务提交,重新改写数据库] ROLLBACK [事务提交,发生错误撤消]; BEGIN TRANSACTION DELETE FROM S WHERE S#=‘10002’ DELETE FROM SC WHERE S#=‘10002’ ROLLBACK;1、原子性(Atomicity) 事务是不可分割的工作单位 2、一致性(Consistency) 事务提交后,数据库从一个一致性状态变到另一个一致性状态。;例:现假设一个公司数据库中有两个账户S,C,分别有存款30万元和20万元,现从S账户上的取出10,万元放入到C账户上。;S:200000 C:200000 ,,中间状态;3、隔离性(Isolation) 在事务完成之前,它对数据库产生的结果不能被其它事务引用。 4、持续性(Durability) 一旦事务执行成功(提交),其对数据库产生的效果永久有效。;T1的修改被T2覆盖了!;事务的特性,;故障是不可避免的 计算机硬件故障 系统软件和应用软件的错误 操作员的失误 恶意的破坏 故障的影响 运行事务非正常中断 破坏数据库;数据库管理系统对故障的对策 DBMS提供恢复子系统 保证故障发生后,能把数据库中的数据从错误状态恢复到某种逻辑一致的状态 保证事务ACID 恢复技术是衡量系统优劣的重要指标;数据库的恢复: 把数据库从错误状态恢复到某一已知的正确状态。;1.事务内部故障 可能造成事务执行失败 预期故障(逻辑错误): 通过在程序中加判断条件来实现 非预期的故障(系统错误): 如由于死锁而被迫撤销的事务等;BEGIN TRANSACTION READ(sal) FROM table1; sal = sal – amout; IF (sal 0) THEN {PRINT “Not enough money!”; ROLLBACK;} ELSE {WRITE(sal); READ(sum) FROM table2; sum = sum + amout; WRITE(sum); COMMIT;};2.系统故障 造成系统停止运转的任何事件(需要系统重新启动) 原因:硬件错误、操作系统故障、突然停电等。 特点:故障影响???在运行的所有事务,但不破坏数据库。可能会造成数据库中数据的不一致性。其原因: 故障发生时,尚未完成的事务的结果可能已送入到物理数据库。 故障发生时,有些已完成的事务所做的数据更改还在缓冲区中,尚未写到物理数据库中。;3.介质故障 是指存储数据库的磁盘发生故障。 原因:可能是磁盘损坏、磁头碰撞、瞬时强磁场干扰等。 特点:使数据库受到破环。虽然可能性小,但破坏性最大。;两个关键问题: 1 如何建立冗余数据 2 如何利用这些冗余数据实施数据库恢复;一、什么是转储;转储;1、数据转储 转储:定期将DB复制到其它外存保存(副本) 1、转储类型 静态转储:在系统空闲的时候进行,转储期间不允许对数据库进行操作。 优点:简单、保证副本和数据库数据的一致性。 缺点:需等待。 ;利用静态转储副本进行恢复;动态转储;利用动态转储副本进行恢复;2、转储方式 海量转储:每次转储数据库中的全部数据 增量转储:每次转储上一次转储后更新过的数据 ;转储策略;登记日志文件;一、日志文件的内容;3.,日志文件内容(以记录为单位) 各个事务的开始标记(BEGIN,TRANSACTION) 各个事务的结束标记(COMMIT或ROLLBACK) 各个事务的所有更新操作 与事务有关的内部更新操作 日志文件中的一个日志记录,(log,,record);4.,基于记录的日志文件;事务标识(标明是哪个事务) 操作类型及对象(插入、删除、修改,记录内部标识) 更新前后的值 常用格式:Ti,start, , , Ti,update,sno,oldval,newval Ti,commit, ,

文档评论(0)

1亿VIP精品文档

相关文档