1 / 27
文档名称:

《数据库系统概论》讲义.ppt

格式:ppt   大小:190KB   页数:27
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《数据库系统概论》讲义.ppt

上传人:rabbitco 2017/1/20 文件大小:190 KB

下载得到文件列表

《数据库系统概论》讲义.ppt

相关文档

文档介绍

文档介绍:软件学院郭文明 《数据库系统概论》讲义 7. 数据库恢复技术?事务的概念?数据库故障分类?数据库恢复技术?数据库恢复策略?检查点?数据库镜像软件学院郭文明 《数据库系统概论》讲义 事务的基本概念?事务处理技术主要包括数据库恢复和并发控制。?事务定义–事务是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。例如银行转帐。– SQL 中事务的定义事务以 Begin transaction 开始,mit work 或 Rollback work 结束。 Commit work 表示提交,事务正常结束。 Rollback work 表示事务非正常结束,撤消事务已做的操作,回滚到事务开始时状态。软件学院郭文明 《数据库系统概论》讲义 事务的基本概念–事务通常由高级数据操纵语言或编程语言( C或 java ) 书写的用户程序的执行所引起。–示例银行转帐:事务 T从A帐户过户 50¥到 B帐户。 T: read (A); A := A – 50; write (A); read (B); B := B + 50; write (B); read (X) :从数据库传送数据项 X到事务的工作区中。 write (X) :从事务的工作区中将数据项 X写回数据库。软件学院郭文明 《数据库系统概论》讲义 事务的基本概念?事务特性( ACID) –原子性( Atomicity) 事务中包含的所有操作要么全做,要么全不做。原子性由恢复机制实现。–一致性( Consistency) 事务的隔离执行必须保证数据库的一致性。事务开始前,数据库处于一致性的状态;事务结束后,数据库必须仍处于一致性状态。数据库的一致性状态由用户来负责。如银行转帐,转帐前后两个帐户金额之和应保持不变。如删除学生记录的同时应当删除学生选课记录。软件学院郭文明 《数据库系统概论》讲义 事务的基本概念–隔离性( Isolation) 系统必须保证事务不受其它并发执行事务的影响。对任何一对事务 T 1,T 2,在T 1看来, T 2要么在 T 1开始之前已经结束,要么在 T 1完成之后再开始执行。隔离性通过并发控制机制实现。–持久性( Durability) 一个事务一旦提交之后,它对数据库的影响必须是永久的,即使系统出现故障时也如此。系统发生故障不能改变事务的持久性。持久性通过恢复机制实现。软件学院郭文明 《数据库系统概论》讲义 数据库故障种类?事务故障?系统故障?介质故障?计算机病毒软件学院郭文明 《数据库系统概论》讲义事务的状态活动状态失败状态部分提交状态提交状态中止状态初始状态事务无法继续正常执行事务回滚,数据库恢复到事务开始前状态最后一条语句被执行后成功完成,永久写入数据库软件学院郭文明 《数据库系统概论》讲义事务故障?从帐户甲转 20000 元到帐户乙 Begin transaction 读帐户甲余额 balance if (balance>=amount) update 帐户表 set balance=balance - amount where 帐户=帐户甲 update 帐户表 set balance=balance + amount where 帐户=帐户乙 insert into 明细表 values( 日期,帐户甲,帐户乙, amount, 操作员) endif commit ?任何一句更新语句违反完整性均引发事务故障。软件学院郭文明 《数据库系统概论》讲义事务故障?事务的恢复:一个事务失败了,应该能够撤消该事务对数据库的影响。如果有其它事务读取了失败事务写入的数据,则该事务也应该撤消。?事务故障:事务由于运算溢出、事务发生死锁被撤消、更新违反完整性而引起的事务非正常结束。软件学院郭文明 《数据库系统概论》讲义系统故障?前面转帐例子中运行完第一句更新后突然断电即引发系统故障,系统故障必将重新启动数据库。?系统故障:事务由于硬件错误、操作系统错误、 DBMS 软件错误、突然断电而引起的事务非正常结束。?系统故障的恢复:重新启动数据库时,必须撤消未完成的事务;对于已经完成的事务可能并未完全写入到数据库中,必须重新执行所有已经提交的事务。