欢迎来到天天文库
浏览记录
ID:40127067
大小:570.05 KB
页数:133页
时间:2019-07-22
《《数据库管理》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库实用教程(第三版)第八章数据库管理第八章数据库管理教学内容:事务的定义,事务的ACID性质,事务的状态变迁图。恢复的定义、基本原则和实现方法,故障的类型,检查点技术。并发操作带来的三个问题,X锁、PX协议…,活锁、死锁,并发调度、串行调度、并发调度的可串行化,两段封锁法。完整性的定义,完整性子系统的功能,完整性规则的组成;SQL中的三大类完整性约束,SQL3中的触发器技术。安全性的定义、级别,权限,SQL中的安全性机制。检查点技术并发操作、封锁带来的若干问题,并发调度的可串行化。SQL中完整性约束的实现:断言、触发器技术。安全性中的授权
2、语句。教学重点:§1事务的概念一、事务的定义形成一个逻辑工作单元的数据库操作的汇集,称为事务(transaction)。例:在关系数据库中,一个事务可以是一条SQL语句、一组SQL语句或整个程序。事务和程序是两个概念。一般地说:一个程序中包含多个事务。事务的开始和结束可以由用户显式控制。如果用户没有显式地定义事务,则由DBMS按照缺省自动划分事务。在SQL语言中,定义事务的语句由三条:事务开始:事务提交:事务回滚:BEGINTRANSACTIONCOMMITROLLBACK二、事务的ACID性质为了保证数据完整性(数据是正确的),要求事务具有下列四个性质:原子
3、性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)。上述四个性质称为事务的ACID性质。三、事务的状态变迁BEGINTRANSATIONABORTABORT活动失败局部提交提交异常终止ENDTRANSATIONCOMMITROLLBACK§2数据库的恢复DBMS的恢复管理子系统:采取一系列措施保证在任何情况下保持事务的原子性和持久性,确保数据不丢失、不破坏;当发生系统故障时,数据库可恢复到正确状态。一、故障分类事务故障系统故障介质故障二、数据库恢复技术恢复机制涉及的两个关键问题:如何建立冗余数据;
4、如何利用这些冗余数据实施数据库的恢复。建立冗余数据最常用的技术是数据库转储和登录日志文件。1、数据转储转储是指DBA将整个数据库复制到永久存储器的过程。这些备用的数据文本称为后备副本或后援副本。一旦系统发生介质故障,数据库遭到破坏,可以将副本重新装入,把数据库恢复起来。转储运行事务故障发生点tatbtf正常运行重装后备副本重新运行事务恢复2.登记日志文件(Logging)日志文件是记录事务对数据库的更新操作的文件。日志文件的存储结构----日志记录的表示:①事务开始记录:②更新数据记录:③事务终止记录:5、OMMIT>更新数据日志记录与每一个数据库写操作WRITE(Q)相对应其中:Ti:事务名;X:操作类型;A:数据项;V1:原始值;V2:新值日志文件在数据库恢复过程中起着重要的作用。为保证数据库的可恢复性,登记日志文件必须遵循两条原则:①登记的次序必须严格按并行事务执行的时间次序。②必须先写日志文件,再写数据库。转储运行事务故障发生点tatbtf正常运行重装后备副本利用日志文件恢复事务继续运行介质故障恢复登记日志文件三、恢复策略当系统运行过程中发生故障,利用数据库后备副本和日志文件将数据库恢复到故障前的某个一致性状态。不同故障其恢复6、技术不一样:1.事务故障的恢复事务故障是指事务在运行至正常终止点前被中止,此时恢复子系统应撤销(UNDO)此事务已对数据库进行的修改。事务故障恢复的具体做法如下:①反向扫描日志文件(即从最后向前扫描日志文件),查找该事务的更新操作。②对该事务的更新操作执行逆操作。即将日志记录中“更新前的值”写入数据库:若记录中是插入操作,则相当于做删除操作;若记录中是删除操作,则做插入操作;若是修改操作,则用修改前值代替修改后值。返回③继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。④如此处理下去,直至读到此事务的开始标记,事务故障恢复就完成了。事务故障的恢复是7、由系统自动完成的,不需要用户干预。2.系统故障的恢复系统故障造成数据库不一致状态的原因有两个:未完成事务对数据库的更新已写数据库;已提交事务对数据库的更新还留在缓冲区没来得及真正写入数据库.恢复操作:撤销故障发生时未完成的事务,重做已完成的事务。具体做法如下:①正向扫描日志文件(即从头开始扫描日志文件):找出在故障发生前:已提交事务(既有记录,也有记录),将其事务标识记入重做队列。尚未完成的事务(有记录,无记录),将其事务标识记入撤销队列。②对撤销队列中的各个事务进行撤销(UN8、DO)处理进行撤销(UNDO)处理的方
5、OMMIT>更新数据日志记录与每一个数据库写操作WRITE(Q)相对应其中:Ti:事务名;X:操作类型;A:数据项;V1:原始值;V2:新值日志文件在数据库恢复过程中起着重要的作用。为保证数据库的可恢复性,登记日志文件必须遵循两条原则:①登记的次序必须严格按并行事务执行的时间次序。②必须先写日志文件,再写数据库。转储运行事务故障发生点tatbtf正常运行重装后备副本利用日志文件恢复事务继续运行介质故障恢复登记日志文件三、恢复策略当系统运行过程中发生故障,利用数据库后备副本和日志文件将数据库恢复到故障前的某个一致性状态。不同故障其恢复
6、技术不一样:1.事务故障的恢复事务故障是指事务在运行至正常终止点前被中止,此时恢复子系统应撤销(UNDO)此事务已对数据库进行的修改。事务故障恢复的具体做法如下:①反向扫描日志文件(即从最后向前扫描日志文件),查找该事务的更新操作。②对该事务的更新操作执行逆操作。即将日志记录中“更新前的值”写入数据库:若记录中是插入操作,则相当于做删除操作;若记录中是删除操作,则做插入操作;若是修改操作,则用修改前值代替修改后值。返回③继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。④如此处理下去,直至读到此事务的开始标记,事务故障恢复就完成了。事务故障的恢复是
7、由系统自动完成的,不需要用户干预。2.系统故障的恢复系统故障造成数据库不一致状态的原因有两个:未完成事务对数据库的更新已写数据库;已提交事务对数据库的更新还留在缓冲区没来得及真正写入数据库.恢复操作:撤销故障发生时未完成的事务,重做已完成的事务。具体做法如下:①正向扫描日志文件(即从头开始扫描日志文件):找出在故障发生前:已提交事务(既有记录,也有记录),将其事务标识记入重做队列。尚未完成的事务(有记录,无记录),将其事务标识记入撤销队列。②对撤销队列中的各个事务进行撤销(UN
8、DO)处理进行撤销(UNDO)处理的方
此文档下载收益归作者所有