第6讲 数据库管理.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文档。上传文档
查看更多
第6章 数据库管理学习目的与要求:   本章总的要求是:了解事务的概念,了解数据库的恢复、并发控制、完整性和安全性技术。了解和掌握这些技术在SQL语言中的实现方式。   考核知识点与考核要求   6.1事务(领会)   6.2数据库的恢复(领会)   6.3数据库的并发控制(领会)   6.4数据库的完整性   完整性子系统的功能(领会)SQL中的完整性约束(简单应用)SQL3的触发器(领会)   数据库的安全性   安全性问题(领会)SQL中的安全性机制(简单应用)常用的安全性措施(领会) 6.1 事务 DBMS对DB的监控,称为数据库的管理,也称为数据库的保护。 它分为四个方面:数据库的恢复、并发控制、完整性控制和安全性控制。  1.事务的概念:   事务是一个操作序列 。这些操作要么什么都做,要么都不做,是一个 不可分割 的工作单位。事务以BEGIN TRANSACTION语句开始,以COMMIT(提交)语句或ROLLBACK(回退或撤消)语句结束。   一个程序的执行可通过若干事务的执行序列来完成。  2.事务的性质:   为保证数据库的完整性,事务必须具有下列四个性质:   1.原子性(automicity)一个事务中对数据库的操作,是一个不可分割的整体。   2.一致性(consistency)数据不会因事务的执行而遭受破坏。   3.隔离性(isolation)在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样。   4.持久性(durability)一个事务一旦完成全部操作,它对数据库的所有更新应永久地反映在数据库中。 6.2 数据库的恢复 1.数据库的可恢复性定义? 系统能把数据库从被破坏、不正确的状态,恢复到最近一个正确的状态,DBMS的这种能力称为数据库的可恢复性 2.典型的恢复策略: 为保证可恢复性,平时应做好转储和建立日志。日志库记录事务的开始、结束标志,记录事务对数据库的每一次插入、删除和修改前后的值 3.故障类型和恢复方法 1)事务故障 2)系统故障 3)介质故障 3.故障类型和恢复方法 1)事务故障 2)系统故障 3)介质故障 6.3 数据库的并发控制  1.并发控制带来的三类问题:   (1)丢失更新的问题   (2)不一致分析问题   (3)“脏数据”的读出。(在数据库技术中,未提交的随后又被撤消的数据为“脏数据”。)  2.封锁技术   锁:是一个与数据项相关的变量,对可能应用于该数据项上的操作而言,描述了该数据项的状态。通常在数据库中每个数据项都有一个锁。 X封锁的规则称为PX协议,其内容为:任何企图更新记录R的事务必须先执行LOCK X(R)操作,以获得对该记录进行寻址的能力,并对它取得X封锁。如果未获得X封锁,那么这个事务进入等待状态,一直到获准X封锁,事务继续进行。   简记为:先锁X,再执行,取不到,就等待。   S封锁的规则称为PS协议:其内容为:任何要更新记录R的事务必须先执行LOCK S(R)操作,以获得对该记录寻址的能力并对它取得S封锁。如果未获准S封锁,那么这个事务进入等待状态,一直到获准S封锁,事务才继续进行下去。当事务获准对记录R的要封锁后,在记录R修改前必须把S封锁升级为X封锁。   简记为:先锁S,再执行,锁不到,就等待,若要修改则升X 。 3. 锁的主要类型: 1) 排他锁 (x锁、写锁):如果事务T对某个数据R(可以是数据项,记录、数据集乃至整个数粥库〕实现了x锁,那么在T对数据R解除封锁之前,不允许其他事务再对该数据加任何类型的锁,这种锁称为“x锁”。 2) 共享锁 (S锁、读锁):如果事务T对某数据加S锁后,仍允许其他事务再对该数据加S锁,但在对该数据的所有S锁都解除之前决不允许任何事务对该数据加X锁。 4. 封锁的粒度:封锁对象的大小。封锁的粒度与系统的并发程度成反比。 5. 调度:事务的执行次序。如果多个事务依次执行,称为事务的串行调度:如果利用分时的方法,同时处理多个事务,则称为事务的并发调度。 6. 可串行化调度:每个事务中,语句的先后顺序在各种调度中始终保持一致。在这个前提下,如果一个并发调度的执行结果与某一串行调度的执行结果等价,那么这个并发调度称为“可串行化的调度”.否则是“不可串行化的调度。” 6.4 数据库的完整性  1.数据库的完整性   是指数据的正确性、有效性和相容性。数据库中数据发生错误,往往是由非法更新引起的(I)正确性:是指数据的合法性。2)有效性:是指数据是否属于所定义的有效范围。3)相容性:是指表示同一事实的两个数应相同,不一致就是不相容。2. SQL中的完整性约束)   数据库完整性是通过DBMS的完整性子系统实现的,它有两个功能:   (1)监督事务的执行,并测试是否违反完

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档