7.3数据库备份与恢复.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.3数据库备份与恢复

数据库技术 教 师:曾晓东 电 话E_mail:zengxiaodong@263.net 第7章 数据库保护 7.1 事务的基本概念 7.2 并发控制 7.3 数据库备份与恢复 7.1 事务的基本概念 7.1.1 事务 7.1.2 事务的特征 7.1.3 SQL事务处理模型 7.1.1 事务 事务是用户定义的数据操作系列,这些操作作为一个完整的工作单元,一个事务内的所有语句被作为一个整体,要么全部执行,要么全部不执行。 例如:对于一个转帐活动:A帐户转帐给B帐户n元钱,这个活动包含两个动作: 第一个动作:A帐户 - n 第二个动作:B帐户 + n 7.2.2 事务的特征 原子性(Atomicity) :指事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。 一致性(Consistency) :指事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性(Isolation) :指数据库中一个事务的执行不能被其它事务干扰。 持久性(Durability) :也称为永久性指事务一旦提交,则其对数据库中数据的改变就是永久的。 保证事务的ACID特性是事务处理的重要任务。事务的ACID特性可能遭到破坏的因素有: 多个事务并行运行时,不同事务的操作有交叉情况; 事务在运行过程中被强迫停止。 7.2.3 SQL事务处理模型 隐式事务:隐式事务是每一条数据操作语句都自动地成为一个事务。 显式事务:有显式的开始和结束标记的事务。 ISO事务处理模型 T-SQL事务处理模型 ISO事务处理模型 明尾暗头――事务的开头是隐含的,事务的结束有明确标记 A.事务结束符 COMMIT:事务成功结束符, ROLLBACK:事务失败结束符, B.事务提交方式 自动提交:每条SQL语句为一个事务 指定位置提交:在事务结束符或程序正常结束处提交 C.事务起始/终止位置 程序的首条SQL语句或事务结束符后的语句。 在程序正常结束处或COMMIT语句处成功终止; 在程序出错处或或ROLLBACK处失败终止。 示例 UPDATE 支付表 SET 帐户总额 = 帐户总额 - n WHERE 帐户名 = ‘A’ UPDATE 支付表 SET 帐户总额 = 帐户总额 + n WHERE 帐户名 = ‘B’ COMMIT T-SQL事务处理模型 每个事务都有显式的开始和结束标记。 事务的开始标记是: BEGIN TRANSACTION | TRAN 事务的结束标记为: COMMIT [TRANSACTION|TRAN] ROLLBACK [TRANSACTION|TRAN] 示例 例如前边的转帐例子用Transact-SQL事务处理模型描述为: BEGIN TRANSACTION UPDATE 支付表 SET 帐户总额 = 帐户总额-n WHERE 帐户名 = ‘A’ UPDATE 支付表 SET 帐户总额 = 帐户总额+n WHERE 帐户名 = ‘B’ COMMIT 7.2 并发控制 7.2.1 并发控制概述 7.2.2 并发控制措施 7.2.3 封锁协议 7.2.4 死锁 7.2.5 并发调度的可串行性 7.2.6 两段锁协议 7.2.1 并发控制概述 数据库中的数据是一个共享的资源,因此会有很多用户同时使用数据库中的数据, 在多用户系统中,可能同时运行着多个事务,而事务的运行需要时间,并且事务中的操作是在一定的数据上进行的。 当系统中同时有多个事务在运行时,特别是当这些事务是对同一段数据进行操作时,彼此之间就有可能产生相互干扰的情况。 并发事务的相互干扰示例 A、B两个订票点恰巧同时办理同一架航班的飞机订票业务。设其操作过程及顺序如下: A订票点(事务A)读出航班目前的机票余额数,假设为10张; B订票点(事务B)读出航班目前的机票余额数,也为为10张; A订票点订出6张机票,修改机票余额为10-6=4,并将4写回到数据库中; B订票点订出5张机票,修改机票余额为10-5=5,并将5写回到数据库中; 丢失数据修改 读“脏”数据 不可重复读 产生“幽灵”数据 属于不可重复读的范畴。 指当事务T1按一定条件从数据库中读取了某些数据记录后,事务T2删除了其中的部分记录,或者在其中添加了部分记录,则当T1再次按相同条件读取数据时,发现其中莫名其妙地少了(对删除)或多了(对插入)一些记录。 这样的数据对T1来说就是“幽灵”数据或称“幻影”数据。 7.2.2 并发控制措施 控制目标:事务运行过程中尽可能隔离事务外操作对本事务数据环境的影响。 在数据库环境下,并发控制的主要方式是封锁机制,即加锁(Lock

文档评论(0)

2752433145 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档