第7章系统实现技术.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据库原理及应用》教案 1 第 7 章 系统实现技术 教学目的 :本章涉及到实现 DBMS 的具体技术,在 DBS 运行时, DBMS 要对 DB 进行监控,以保证整个系统的正常运行,防止数据意外丢失和不 一致数据的产生。 DBMS 对 DB 的监控,也称为对 DB 的保护。 教学重点 :1.事务 2.并发控制 3.恢复 4.安全性 .完整性 教学难点 :并发控制中的加锁 7.1 事务 教学目的 :使学生掌握事务的概念,事务是 DBMS 中一个重要的概念,是 并发控制和恢复的单位 教学重点: 1.事务的性质 2.事务的并发执行 教学内容: 7.1.1 事务的基本概念 定义:事务——形成一个逻辑工作单位的数据库的操作的汇集。 或:是由用户定义的一个 DB 的操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。 事务和程序是两个概念,一般的,一个程序可包含多个事务。 程序 事务 事务 begin transaction 开始 显示定义 commit 提交 事务的定义 事务的 end transaction结束 roll back 回退 默认按缺省自动划分 7.1.2 事务的 ACID 性质 为了保证 DB 的完整(正确),事务应具有以下四个性质 2 《数据库原理及应用》教案 原子性( atoinicity ) 一个事务是不分割的操作序列,要么全做,要么全不做 一致性( consistency) 事务的执行必须从一个使 DB 一致的状态到另一个是使 DB 一致的状态。既: DB 不会因事务的执行而遭受破坏。 如:一公司在银行有两个帐号。从 A 帐号—— B 帐号转 10000 元,既可定义一个事务。 A-10000 B+10000 3. 隔离性( isolation) 一个事务的执行不能被其他事务打扰, 在并发事务操作时, 系统应保证与这些事务独执行时结果一样。 4. 持久性( durability ) 一个事务一旦完成全部操作后,它对 DB 的所有更新应永久反映在 DB 中。即使以后系统发现故障,也应保留这个事务的结果。 上述四个性质分别有 DBMS 相应的子系统实现。 由 DBMS 的事务管理子系统实现。 由 DBMS 测试完整性约束自动完成。 由 DBMS 的并发控制子系统实现。 由 DBMS 恢复控制子系统实现。 DB 的访问是建立在读,写两个操作的基础上的 .read(x):把数据 X 从 DB 读到内存缓冲区 .write(x): 把数据 X 从内存缓冲区写回 DB (在实际操作时, write(x) 未必就写回 DB 很可能先暂存在系统缓冲区,然后再写回硬盘。先假定 write(x) 写回磁盘。) 举例说明事务的 ACID 性质: 例:银行 DB 有转帐事务 Ti, 从帐号 A 转 50 元到帐号 B Ti: read(A) A:=A-50 Write(A) Read(B) B=B+50 Write(B) (1) 原子性: 由事务的原子性保持事务的一致性,但事务的执行有一定的时间,在某一个时刻会不一致,是正常的 《数据库原理及应用》教案 3 (2) 一致性: A-50,B+50 A+B 的和不变 (3) 隔离性: 在 A-50 后,突然插入一个事务来计算 A+B ,那肯定会不对,这就 要由 DBMS 的并发控制来控制。 (4) 持久性: 事务正确执行后,仍长期保存,不能丢失 7.1.3 事务的状态变迁 read/write begin 活 end 局 部 commit transaction transaction abort 失 roll back  提 异 常 1、活动状态: 事务开始执行,即进入“活动”状态,在活动状态执行对 DB 进行读 /写, 但“写”并不立即写到硬盘,可暂存在系统缓冲区。 2、提交 事务执行完后,进入该状态,但对 DB 的修改很可能在缓冲区内,所以事务并未真正结束。 3、失败 两种 没有运行到事务的最后一个语句就中止事务的修改未写到硬盘 4、异常中止 在“失败”状态的事务,很可能对硬盘的数据进行了一部分修改,为了保 证事务的原子性,应撤消 undo,执行 rollback 回退到事务执行前的状态。恢复 子系统完成 在异常中止时:重新启动事务:由硬件等原因造成。 取消事务:由事务内逻辑错误。 5、提交 在局部提交后,并发控制系统将检查该事务与并发事务是否发生干扰,通过检查后,系统执行 commit。 4 《数据库原理及应用》教案 把对 DB 的修改的全部写到硬盘,成功结束。 事务结束有两个状态: commit roll back 7.1.4 事务的并发执行 为了提高事务的执行效率,使多个事务并发执行。 定义: 事务的执行次序称为“调度” 。 如果多个事务依次执行,则称为事务的

文档评论(0)

173****1527 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档