自考地区
全国 北京 上海 天津 重庆 河北 山西 辽宁 吉林 黑龙江 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 海南 四川 贵州 云南 陕西 甘肃 青海 内蒙古 广西 宁夏 新疆 西藏
您所在的位置 桃李自考网 > 自考复习资料 >

【复习资料】2019年4月自考《数据库原理及应用》考试重点六

2019-04-11 16:42 来源:桃李自考网 成人自考

第六章 数据库管理
要求、目标:
了解数据库的恢复、数据库的安全性,熟悉事务、数据库的并发控制、数据库的完整性。
一、事务
1.DBMS对DB的监控,称为数据库的管理,也称为数据库的保护。它分为四个方面:数据库的恢复、并发控制、完整性控制和安全性控制。
2.事务:是构成单一逻辑工作单元的操作集合,要么完整地执行,要么完全不执行。DBS运行的最小逻辑工作单位是“事务”,所有对数据库的操作,都要以事务作为一个整体单位来执行或撤销。
3.一个事务由应用程序中的一组操作序列组成,在程序中,事务以BEGIN  TRANSACTION开始,以COMMIT语句或ROLLBACK语句结束。COMMIT语句表示事务执行成功地结束(提交);ROLLBACK语句表示事务执行不成功地结束(应该“回退)。
4.事务的ACID性质:
1)原子性(Atomicity):一个事务对数据库的所有操作,是一个不可分割的工作单元。这些操作要么全部执行,要么什么也不做。
2)一致性(Consistency):一个事务独立执行的结果,应保持数据库的一致性,即数据不会因事务的执行而遭受破坏。
3)隔离性(Isolation):在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样。
4)持久性(Durability):一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中,不会丢失。
二、数据库的恢复
1.数据库的可恢复性:系统能把数据库从被破坏、不正确的状态,恢复到最近一个正确的状态,DBMS的这种能力称为可恢复性。
2.为保证可恢复性,平时应做好转储和建立日志。日志库记录事务的开始、结束标志,记录事务对数据库的每一次插入、删除和修改前后的值。
3.常见故障分三类:事务故障、系统故障(硬件故障、软件(DBMS、OS或应用程序)错误、掉电等,不破坏数据库)、介质故障。
事务故障和系统故障的恢复由系统自动进行,而介质故障的恢复需要DBA配合执行。系统故障通常称为软故障,介质故障通常称为硬故障。
三、数据库的并发控制
1.并发操作带来的三个问题:丢失更新、读脏数据(把未提交的随后被撤销的数据称为“脏数据”)、不可重复读。采用“封锁”技术解决这些问题。
2.锁:是一个与数据项相关的变量,对可能应用于该数据项上的操作而言,锁描述了该数据项的状态。通常在数据库中每个数据项都有一个锁。
3.锁的主要类型:
1)排他锁(X锁、写锁):如果事务T对某个数据R(可以是数据项、记录、数据集乃至整个数据库)实现了X锁,那么在T对数据R解除封锁之前,不允许其他事务再对该数据加任何类型的锁,这种锁称为“X锁”。
2)共享锁(S锁、读锁):如果事务T对某数据加上S锁后,仍允许其他事务再对该数据加S锁,但在对该数据的所有S锁都解除之前决不允许任何事务对该数据加X锁。
4.封锁的粒度:封锁对象的大小。封锁粒度与系统的并发度成反比。
5.调度:事务的执行次序。如果多个事务依次执行,称为事务的串行调度;如果利用分时的方法,同时处理多个事务,则称为事务的并发调度。
6.可串行化调度:每个事务中,语句的先后顺序在各种调度中始终保持一致。在这个前提下,如果一个并发调度的执行结果与某一串行调度的执行结果等价,那么,这个并发调度称为“可串行化的调度”,否则是“不可串行化的调度。”
四、数据库的完整性
1.数据库的完整性:是指数据的正确性、有效性和相容性,防止错误的数据进入数据库。
1)正确性:是指数据的合法性。
2)有效性:是指数据是否属于所定义的有效范围。
3)相容性:是指表示同一事实的两个数据应相同,不一致就是不相容。
2、SQL中的完整性约束
1)域约束
例:CREATE   DOMAIN  COLOR  CHAR(6)  DEFAULT  ‘???’
CONSTRAINT  VALID_COLORS
CHECK (VALUE  IN(‘Red’,‘Yellow’,‘Blue’,‘Green’,‘???’))
定义完后,该域便可作为一种数据类型使用,如用在CREATE  TABLE中。
2)基本表约束
主要有三种形式:候选键定义、外键定义和检查约束定义。这些定义都可在前面加CONSTRAINT  <约束名>,也可以省略。
候选键的定义:UNIQUE(<列名序列>)或PRIMARY  KEY(<列名序列>)
UNIQUE方式:表示值惟一;
PRIMARY  KEY:值惟一,并且自动设为非空。一个基本表只能指定一个主键。
检查约束的定义:
例:CHECK(AGE>=18  AND  AGE<=20)
3)断言:如果完整性约束牵涉面较广,与多个关系有关,或者与聚合操作有关,应使用断言。
3.触发器:是一个能由系统自动执行对数据库修改的语句。有时也称为主动规则(相对于前面的各种被动约束机制)。
五、数据库的安全性
1.数据库的安全性:是指保护数据库,防止不合法的使用,以免数据的泄密、更改或破坏。
2.SQL中的安全性机制:
提供四个:视图、权限、角色和审计
1)视图:使系统具有三个优点:数据安全性(用来对无权用户屏蔽数据)、逻辑数据独立性和操作简便性。视图不占存储空间。
2)权限:授权语句GRANT、回收语句REVOKE
3)角色:
在SQL中,用户是实际的人或是访问数据库的应用程序。而角色是一组具有相同权限的用户,实际上角色是属于目录一级的概念。
用户和角色之间存在多对多联系,即一个用户可以参与多个角色,一个角色也可授予多个用户。
4)审计:
用于安全性目的的数据库日志,称为审计追踪。