故障恢复与事务处理

故障恢复与事务处理

ID:37400163

大小:1.57 MB

页数:63页

时间:2019-05-12

故障恢复与事务处理_第1页
故障恢复与事务处理_第2页
故障恢复与事务处理_第3页
故障恢复与事务处理_第4页
故障恢复与事务处理_第5页
资源描述:

《故障恢复与事务处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第八章故障恢复与事务处理本章小结8.1事务的基本概念8.2数据库恢复概述8.3恢复的实现技术8.4故障恢复8.5事务并发控制8.6封锁的粒度第八章事务管理8.1事务的基本概念1、事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。事务和程序关系:(1)程序是静止的,事务是动态的。事务是程序的执行而不是程序本身。(2)一个程序可分为多个独立部分同时执行,每一执行则是一个不同的事务,即一个程序中可包含多个事务事务生成:用户显式地定义事务由DBMS按缺省自动划分事务8.1事务的基本概念在SQL语言中,定义事务的语句有三条:BEG

2、INTRANSACTION事务开始COMMIT-----事务提交ROLLBACK-----事务回滚事务的分类:(1)只读型SETTRANSACTIONREADONLY(2)读/写型SETTRANSACTIONREADWRITE8.1事务的基本概念2、事务的特性(ACID)原子性:要么全做,要么全不做。一致性:事务执行的结果必须使数据库从一个一致性状态变到另一个一致性状态。隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持续性:一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。8.1事务的基本概念

3、一个说明ACID特性的例子事务:从帐户A转$50到帐户B:1.read(A)2.A:=A–503.write(A)4.read(B)5.B:=B+50write(B)Consistency–事务执行完毕后A和B帐户金额之和必须保持不变。8.1事务的基本概念Atomicity–事务在[步骤3,step6]之间失败,系统必须确保此更新没有在系统中没有遗留痕迹,否则将导致不一致。Durability–一旦用户被告知事务已经完成(即转帐成功),则该事务对数据库所做的更新操作必须是永久性的,即使出现某些失败的情形.Isolation–若在[步骤3,step6],有另外一个事务允许存取被部分更新的数

4、据库,则它将看到一个不一致的数据库。(即A+B的和小于它应该有的值).通过串行地执行事务,可以确保隔离性,但是事务的并发执行可以带来更多的好处.8.1事务的基本概念事务的一致性必须建立在用户程序逻辑正确性的基础之上。即:当用户提交事务的时候,必须保证当它运行完毕之际,将数据库保持在一个一致性的状态。DBMS通过恢复机制来确保事务的原子性和永久性。隔离性是通过提供一套并发控制的机制而得以实现。8.1事务的基本概念3、事务的状态执行事务事务无法继续正常执行事务回滚,数据库恢复到事务开始前状态最后一条语句被执行后成功完成,永久写入数据库活动状态失败状态中止状态提交状态部分提交状态事务定义语句与

5、状态的关系ROLLBACKCOMMITBEGINTRANSACTION8.1事务的基本概念4、更新事务的执行与恢复更新事务的执行要求:更新事务在活动状态下对数据库的任何修改都不能直接在磁盘中进行,而只能在内存缓冲区中进行。更新事务的恢复:(1)从活动状态转入失败状态的恢复(2)从局部提交状态转入失败状态的恢复。8.1事务的基本概念5.事务处理面对的问题和要求。事务执行期间,数据库可能是不一致的。事务提交后,数据库必须是一致的。主要处理两种情况:(1)多个事务的并发执行:并发控制。(2)各类型原因所导致的失败,硬件故障,系统崩溃等:故障恢复。故障种类:事务故障,系统故障,硬件故障数据库的恢

6、复:指DBMS必须具有把数据库从错误状态恢复到某一已知的正确状态(亦称为一致状态或完整状态)的功能。数据库恢复原理:冗余建立冗余数据常用技术:(1)数据转储(2)登记日志文8.2恢复技术概述8.3恢复的实现技术一、数据转储1.数据转储的概念转储即DBA定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本或后援副本。正常运行TaTbTf故障发生点得到副本转储运行事务恢复装副本重新运行事务数据转储与恢复[例]8.3恢复的实现技术2、静态转储和动态转储(1)静态转储:是在系统中无运行事务时进行的转储操作。静态转储得到的一定是一个数据一致性的副本。(2)动态转

7、储:是指转储期间允许对数据库进行存取或修改。后备副本需配合日志文件。3、海量转储和增量转储(1)海量转储:每次转储全部数据库。(2)增量转储:每次只转储上一次转储后更新过的数据。8.3恢复的实现技术二、登记(建立)日志文件1、日志文件的格式和内容日志文件—用来记录事务对数据库的更新操作的文件。日志文件主要有两种格式:以记录为单位以数据块为单位8.3恢复的实现技术(1)以记录为单位的日志文件内容:事务开始、结束标记操作对象(表、属性等

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

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

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