第10章 数据库恢复

第10章 数据库恢复

ID:39293575

大小:1.61 MB

页数:68页

时间:2019-06-29

第10章 数据库恢复_第1页
第10章 数据库恢复_第2页
第10章 数据库恢复_第3页
第10章 数据库恢复_第4页
第10章 数据库恢复_第5页
资源描述:

《第10章 数据库恢复》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数据库恢复技术内容要求了解数据库的一致性状态;数据库运行中可能产生的故障类型,以及对数据库造成的影响。掌握事务的基本概念和事务的ACID性质;数据库恢复的实现技术;日志文件的内容及作用。举一反三:恢复的基本原理,针对不同故障的恢复策略和方法。本讲内容一、事务的基本概念二、数据库恢复概述三、故障的种类四、恢复的实现技术五、恢复策略六、具有检查点的恢复技术七、数据库镜像事务概念的引出——银行转账操作序列1读出账号A的余额R2R-1万—>R3中断4B账号的余额没有变。从账号A转出1万元到账号B我的1万元呢?一、事务的基本概念1.事务

2、的定义2.事务的ACID性质3.事务的状态变迁图1、事务(transaction)一个数据库操作序列,是数据库应用程序的基本逻辑单元。这些操作要么都做,要么都不做,是一个不可分割的执行单位。主要是更新操作事务标记:BEGINTRANSACTIONCOMMIT或ROLLBACK……事务开始事务提交:事务完成了其包含的所有活动,正常结束事务回滚(中止):撤消已做的所有操作,回到事务开始时的状态§1事务的基本概念示例CreatetableMyFriends{namechar(6)notnull,sexchar(2),phonecha

3、r(11)notnull}BegintransactioninsertintoMyFriends(name,sex)values(‘王国庆’,’男’)updateMyfriendssetphone=‘01067846050’wherename=‘王国庆’commit关于事务事务和程序是两个概念。BEGINTRANSACTION表示事务的开始COMMIT/ROLLBACK表示事务的结束。(1)COMMIT表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据库的更新写到磁盘的物理数据库中,事务正常结束。(2)ROLLBA

4、CK表示回滚,即在事务运行的过程中发生了某种例外,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。说明:这里的操作指对数据库的更新操作。思考:查询操作,对COMMIT的结果有影响吗?有必要做ROLLBACK吗?示例例:设银行数据库中有一转账事务T,从帐号A转一笔款($50)到帐号B,其操作如下:T:read(A);A:=A-50;write(A);read(B);B:=B+50;write(B).对应的程序T:BEGINTRANSACTIONread(A);A:=A-50;write(

5、A);if(A<0)ROLLBACK;else{read(B);B:=B+50;write(B);COMMIT;}SQL事务控制流程BegintransactionCommitRollbackSQL语句SQL语句执行成功SQL语句执行失败事务开始时的数据库更新后的数据库读写操作对数据库的访问是建立在读和写两个操作的基础上的:(1)Read(X):把数据X从磁盘的数据库中读到内存的缓冲区中。(2)Write(X):把数据X从内存的缓冲区写回磁盘的数据库。说明:在系统运行时,write操作未必导致数据立即写回磁盘,很可能先暂存在内

6、存缓冲区中,稍后再写回磁盘。2.事务的特性(ACID特性)(1)原子性(Atomicity)(2)一致性(Consistency)(3)隔离性(Isolation)(4)持续性(Durability)2、事务应具有的性质(P248)(1)原子性(Atomicity):事务执行时的不可分割性,即事务所包含的活动要么都做,要么都不做若事务因故障而中止,则要设法消除该事务所产生的影响,使数据库恢复到该事务执行前的状态。(2)一致性(Consistency):事务对数据库的作用应使数据库从一个一致状态到另一个一致状态例如:一个帐号的收

7、支之差应等于余额。飞机订票系统,事务执行前后,座位与订出座位等信息必须一致。(3)隔离性(Isolation):多事务并发执行,应象各事务独立执行一样,不能相互干扰。一个正在执行的事务其中间结果不能为其它事务所访问。例如:有两个事务,在同一帐号上存款和贷款:贷款事务T1存款事务T2存入款100元贷出款50元CommitRollbackT2中止,T1也必须中止,造成链式事务中止(cascadingaborts)余额10元(4)持久性(Durability):一旦事务提交,不论执行何种操作或发生何种故障,都不应对该事务的执行结果有

8、任何影响。3、事务管理任务事务管理的任务就是要保证事务满足上述性质。使事务不具有上述性质的因素可能是:(1)事务在运行过程中被强行终止;(2)多个事务并行运行时,不同事务的操作交叉执行。能恢复因此事物管理又分为两个方面:恢复:保证事务在故障时满足上述性质的技术。并发控制:保证

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。