第04章051011数据保护.docx
- 文档编号:4771978
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:14
- 大小:84.03KB
第04章051011数据保护.docx
《第04章051011数据保护.docx》由会员分享,可在线阅读,更多相关《第04章051011数据保护.docx(14页珍藏版)》请在冰豆网上搜索。
第04章051011数据保护
一、单项选择题
1下面哪个不是数据库系统必须提供的数据控制功能___________。
A安全性B可移植性C完整性D并发控制
2保护数据库,防止XX的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的_________。
A安全性B完整性C并发控制D恢复
3数据完整性保护中的约束条件主要是指_______________。
A用户操作权限的约束B用户口令校对
C值的约束和结构的约束D并发控制约束
4下面的几种故障中,会破坏正在运行的数据库的是________________。
A中央处理器故障B操作系统故障
C突然停电D瞬时的强磁场干扰
5数据库的__________是指数据的正确性和相容性。
A安全性B完整性C并发控制D恢复
6使某个事物永远处于等待状态,而得不到执行的现象称为_____________。
A死锁B活锁C串行调度D不可串行调度
7下列SQL语句中,能够实现“收回用户U4对学生表(STUD)中学号(XH)的修改权”这一功能的是______________。
AREVOKEUPDATE(XH)ONTABLEFROMU4
BREVOKEUPDATE(XH)ONTABLEFROMPUBLIC
CREVOKEUPDATE(XH)ONSTUDFROMU4
DREVOKEUPDATE(XH)ONSTUDFROMPUBLIC
8将查询SC表的权限授予用户U1,并允许该用户将此权限授予其他用户。
实现此功能的SQL语句是_______________。
AGRANTSELECTTOSCONU1WITHPUBLIC
BGRANTSELECTONSCTOU1WITHPUBLIC
CGRANTSELECTTOSCONU1WITHGRANTOPTION
DGRANTSELECTONSCTOU1WITHGRANTOPTION
9下列几种情况中,不破坏数据库的是_____________。
A磁盘的磁头碰撞B突然停电
C瞬时的强磁场干扰D磁盘损坏
10下列不是数据库恢复采用的方法是______________。
A建立检查点B建立副本C建立日志文件D建立索引
11写一个修改到数据库中,与写一个表示这个修改的运行记录到日志文件中是两个不同的操作,对这两个操作的顺序安排应该是_______________。
A前者先做B后者先做
C由程序员在程序中作安排D哪一个先做由系统决定
12“年龄在15至30岁之间”这种约束属于DBMS的____________功能。
A恢复B并发控制C完整性D安全性
13在第一个事务以S封锁方式读取数据A时,第二个事务对数据A的读方式会遭到失败的是_____________。
A实现X封锁的读B实现S封锁的读
C不加封锁的读D实现共享型封锁的读
14事务的隔离性是由DBMS的__________实现的。
A事务管理子系统B恢复管理子系统
C并发控制子系统D完整性子系统
15用于实现数据库存取安全性的SQL语句是____________。
ACREATETABLEBCOMMITCGRANT和REVOKEDROLLBACK
16在数据库系统中,对存取权限的定义称为___________。
A命令B授权C定义D审计
17数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的__________。
A可靠性B一致性C完整性D安全性
18授权编译系统和合法性检查机制一起组成了________子系统。
A安全性B完整性C并发控制D恢复
19_________是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A程序B命令C事务D文件
20事务的原子性是指____________。
A事务中包括的所有操作要么都做,要么都不做。
B事务一旦提交,对数据库的改变是永久的。
C一个事务内部的操作及使用的数据对并发的其他事务是隔离的。
D事务必须是使数据库从一个一致性状态变到另一个一致性状态。
21事务是数据库进行的基本单位。
如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于_________状态。
A安全性B一致性C完整性D可靠性
22事务的一致性是指__________。
A事务中包括的所有操作要么都做,要么都不做
B事务一旦提交,对数据库的改变是永久的
C一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D事务必须是使数据库从一个一致性状态变到另一个一致性状态
23事务的隔离性是指_________。
A事务中包括的所有操作要么都做,要么都不做
B事务一旦提交,对数据库的改变时永久的
C一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D事务必须是使数据库从一个一致性状态变到另一个一致性状态
24事务的持续性是指_______。
A事务中包括的所有操作要么都做,要么都不做
B事务一旦提交,对数据库的改变时永久的
C一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D事务必须是使数据库从一个一致性状态变到另一个一致性状态
25多用户的数据库系统的目标之一是使它的每个用户好像面对着一个单用户的数据库一样使用它,为此数据库系统必须进行____________。
A安全性控制B完整性控制C并发控制D可靠性控制
26设有两个事务T1、T2,其并非操作如图6.1所示,下面评价正确的是___________。
A该操作不存在问题B该操作丢失修改
C该操作不能重复读D该操作读“脏”数据
27设有两个事务T1、T2,其并发操作如图6.2所示,下面评价正确的是________。
A该操作不存在问题B该操作丢失修改
C该操作不能重复读D该操作读“脏”数据
28设有两个事务T1、T2,其并发操作如图6.3所示,下面评价正确的是_________。
A该操作不存在问题B该操作丢失修改
C该操作不能重复读D该操作读“脏”数据
29设有两个事务T1、T2,其并发操作如图6.4所示,下面评价正确的是_________。
A该操作不存在问题B该操作丢失修改
C该操作不能重复读D该操作读“脏”数据
30设有两个事务T1、T2,它们对数据A的并发操作如图6.5所示(其中SLockA表示对数据A上S锁,UnLockA表示对数据A解锁,Commit表示提交操作)。
下面评价正确的是______和______。
A该操作不能重复读B该操作丢失修改
C该操作符合完整性要求D该操作的第
(1)步中,事务T1应申请X锁
E该操作的第
(2)步中,事务T2不可能得到对A的锁
31解决并发操作带来的数据不一致问题的常用方法是___________。
A封锁B恢复C存取控制D协商
32若事务T对数据R已加X锁,则其事务对数据R__________。
A可以加S锁,但不能加X锁B不能加S锁,但可以加X锁
C可以加S锁,也可以加X锁D不能加任何锁
33不允许任何其他事务对这个锁定目标再加任何类型锁的锁是_________。
A共享锁B排它锁C共享锁或排它锁D以上都不是
34数据库中的封锁机制是_____的主要方法。
A完整性B安全性C并发控制D恢复
35关于“死锁”,下列说法正确的是________。
A死锁是操作系统中的问题,数据库操作中不存在
B在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库
C当两个用户竞争相同资源时不会发生死锁
D只有出现并发操作时,才有可能出现死锁
36对并发操作若不加以控制,可能会带来________问题。
A不安全B死锁C死机D不一致
37数据库系统的并发控制的主要方法是采用____________机制。
A拒绝B改为串行C封锁D不加任何控制
38若数据库中只包含成功事务提交的结果,则此数据库就称为处于_______状态。
A安全B一致C不安全D不一致
39若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为______。
A事务故障B系统故障C介质故障D运行故障
40若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分或全部损失,这种情况称为________。
A事务故障B系统故障C介质故障D运行故障
41_________用来记录对数据库中数据进行的每一次更新操作。
A后援副本B日志文件C数据库D缓冲区
42后援副本的用途是________。
A安全性保障B一致性控制C故障后恢复D数据的转储
43用于数据库恢复的重要文件是_________。
A数据库文件B索引文件C日志文件D备注文件
44日志文件是用于记录___________。
A程序的运行过程B数据操作
C对数据的所有更新操作D程序执行的结果
45并发操作会带来哪些数据不一致性问题__________。
A丢失修改、不可重复读、读“脏”数据、死锁
B不可重复读、读“脏”数据、死锁
C丢失修改、读“脏”数据、死锁
D丢失修改、不可重复读、读“脏”数据
46数据库恢复的基础是利用转储的冗余数据。
这些转储的冗余数据包指。
A数据字典、应用程序、审计档案、数据库后备副本
B数据字典、应用程序、日志文件、审计档案
C日志文件、数据库后备副本
D数据字典、应用程序、数据库后备副本
47在数据库的安全性控制中,为了保证用户只能存取他有权取的数据。
在授权的定义中,数据对象的,授子系统就越灵活。
A范围越小B范围越大
C约束越细致D范围越适中
48数据库恢复通常可以采取如下方法:
(1)定期将数据库做成___①_____。
(2)在进行事务处理过程中将数据库更新的全部内容写入___②_____。
(3)在数据库系统运行正确的情况下,系统按一定时间间隙设立__③__,新的建立后意味着旧的_③___去掉,即在内存缓冲区中的内容还没有写入到磁盘中去的有关状态__③____记录都写入到磁盘文件中去,这种文件称为____③______。
(4)发生故障时,用当时数据内容和___④__的更新前的映像,将文件恢复到最近的__⑤__状态。
(5)用(4)不能恢复数据时,可以用最新的_①___和_④____得更新映像将文件恢复到最新的___⑤_____状态。
A副本文件B日志文件C检查点文件D死锁文件
E两套文件F主文件G库文件
二、填空题
1数据库保护包含数据的__________、__________、_____________、___________。
2数据的安全性是指__________________________________________________。
3安全性控制的一般方法有___________、_____________、____________、____________和视图的保护五级安全保护措施。
4存取权限包括两个方面的内容,一个是_______________________,另一个是________________________________。
5_____________________________和_______________________________一起组成了安全性子系统。
6______________________是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
7有两种基本类型的锁,它们是________________和__________________。
8并发控制是对用户的__________________加以控制和协调。
9若事务T对数据对象A加了S锁,则其他事务只能对数据A再加___________锁,不能加___________________,直到事务T释放A上的锁。
10若事务在运行过程中,由于种种原因,使事务未运行到正常终点之前就被撤销,这种情况就称为_______________________。
11事务在修改数据R之前必须先对其加X锁,直到事务结束才释放,称为__________协议。
Commit表示事务____________结束,RollBack表示事务___________结束。
12如果多个事务依次执行,则称事务是___________执行;如果利用分时的方法,同时处理多个事务,则称事务是_______________执行。
13使某个事务永远处于等待状态,得不到执行的现象称为_____________。
有两个或两个以上的事务处于等待状态,每个事务都在等待其中另一个事务解除死锁,它才能继续下去,结果任何一个事务都无法执行,这种现象称为____________。
14数据库恢复时将数据库从______________状态恢复到_______________的功能。
15数据库系统在运行过程中,可能会发生故障。
故障主要有_________、_____________介质故障和____________四类。
16数据库系统在运行过程中,可能会发生各种故障,其故障对数据库的影响总结起来有两类:
___________________________和_____________________________。
17数据库系统是利用存储在外存上其他地方的______________________来重建被破坏的数据库。
它主要有两种:
________________和____________________。
18制作后援副本的过程称为______________________。
它又分为____________________和__________________________。
19事务故障、系统故障的恢复是由____________________完成的,介质故障是由__________完成的。
20数据库的完整性是指数据的__________________和________________。
21数据库系统中对存取权限的定义称为______________________。
22在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用________________语句,收回所授的权限使用______________语句。
23系统在运行过程中,由于种种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据不受影响,这种情况称为_______________________。
24系统在运行过程中,由于某种硬件故障,使存储在存上的数据部分或全部损失,这种情况称为__________________。
25完整性约束是指_____________________、___________________和_________________。
26实体完整性是指在基本表中,____________________________。
27参照完整性是指在基本表中,_____________________________________________。
28为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不唯一时,DBMS就_____________________。
29并发控制的主要方法是__________________机制。
30如果数据库中只包含成功事务提交的结果,就说数据库处于_______________状态。
31对并发操作如果不加以控制,可能带来的不一致性有___________、_______________和______________________。
32并发控制的主要方法是采用______________机制,其类型有___________和____________两种。
三、问答题
1叙述数据库实现完整性检查的方法。
答:
要实现数据库完整性的检查,系统要提供定义完整性约束条件的机制以及提供检查是否违背完整性约束条件的方法。
当DBMS发现用户的操作违背了完整性约束条件时,就采取一定的控制。
具体的控制是随系统而定的。
2什么是事务?
答:
事务是DBMS的基本工作单位,它是用户定义的一组逻辑一致的程序序列。
它是不可分割的工作单位,其中包含的所有操作,要么都执行,要么都不执行。
数据库是一个共享资源,它允许多个用户程序并发地存取数据库中的数据。
但是,如果系统中对并发执行的操作不加以控制,就会存取和存储不正确的数据,破坏数据库的完整性。
并发控制的主要方法就是采用封锁机制。
封锁就是一个事务在对某个数据对象进行操作前,先向系统发出请求,对其加锁。
3事务中的提交和回滚是什么意思?
答:
事务中的提交是提交事务的所有操作。
具体的说就是将事务中所有对数据库的更新写回到磁盘上物理数据库中去,事务正常结束。
事务中的回滚是数据库回滚到事务开始时的状态。
具体的说就是在事务运行过程中发生了某种故障,事务不能继续运行,系统将事务中对数据库的所有已完成的更新操作全部撤销,使数据库回滚到事务开始时的状态。
4在数据库中为什么要有并发控制?
答:
数据库时一个共享资源,它允许多个用户同时并行地存取数据。
若系统对并发操作不加以控制,就会存取和存储不正确的数据,破坏数据库的完整性。
并发控制的目的就是要以正确的方式调度并发操作,避免造成各种不一致性,使一个事务的执行不受另一个事务的干扰。
5并发操作会产生几种不一致的情况?
用什么方法避免各种不一致的情况?
答:
操作可能会产生丢失修改、不能重复读和读“脏”数据这三种不一致的情况。
采用封锁机制来进行并发控制,可避免各种不一致的情况。
6叙述数据库中数据的一致性级别。
答:
咋数据库的并发控制中,数据一致性级别的概念有三个:
丢失修改、不能重复读和读“脏”数据。
丢失修改是指T1和T2先后读取了同一个数据,T1把数据修改了并写回到数据库中,T2也将读取的数据修改并写回到数据库中。
这样T2提交的结果导致T1对数据库的修改丢失了。
不能重复读是指T1读取A,并进行了运算以后,T2也读取了其中的数据A,把它修改后写回到数据库,最后当T1为了对读取的值进行校对而再重读A时,读的数据是T2修改后的值,而不是T1开始读的值。
读“脏”数据是指T1修改了某一数据,并将其写回到库中,T2读了这些修改后的数据,而事务T1由于某种原因撤销了,被它修改的数据恢复了原来的值,这时T2读的数据就与库中的数据不一致了,即T2读了不正确的数据,也称T2读了“脏”数据。
7叙述封锁的概念?
答:
封锁就是事务T在对某个数据对象操作之前,先向系统发出请求,对其加锁,这样事务T就对这个数据对象有了一定的控制,其他事务就不能更新此数据,直到事务T释放它的锁为止。
8叙述数据库中死锁产生的原因和解决死锁的方法。
答:
死锁产生的原因:
封锁可以引起死锁。
比如事务T1封锁了数据A,事务T2封锁了事务B。
T1又申请封锁数据B,但因B被T2封锁,所以T1只能等待。
T2又申请封锁数据A,但A已被T1封锁,所以也处于等待状态。
这样,T1和T2处于相互等待状态而均不能结束,这就形成了死锁。
解决死锁的方法有如下三种:
(1)要求每个事务一次就要将它所需要的数据全部封锁,即一次封锁法。
(2)对数据预先规定一个封锁顺序,所有的事务都要按照这个顺序实现封锁,即顺序封锁法。
(3)允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤销,释放此事务持有的所有的锁,使其他事务能继续运行下去。
9基本的封锁类型有几种?
试叙述它们的含义。
答:
基本的封锁类型有排它锁(X锁)和共享锁(S锁)两种。
若事务T对数据A加上X锁,则只允许事务T读取和修改数据A,其他事务都不能再对数据A加任何类型的锁,直到T释放A上的锁。
若事务T对数据A加上S锁,则其他事务只能再对数据A加S锁,而不能加X锁,直到T释放A上的锁。
10数据库中为什么要有恢复子系统?
它的功能是什么?
答:
由于硬件的故障、系统软件和应用软件的错误、操作的失误以及恶意的破坏都是不可避免的,这些故障,轻则会造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中的数据部分或全部丢失。
为了保证各种故障发生后,数据库中的数据都能从错误状态恢复到某种逻辑一致状态,DBMS中的恢复子系统是必不可少的。
恢复子系统的功能就是利用冗余数据,再根据故障的类型采取相应的恢复措施,把数据库恢复到故障前的某一个时刻的一致性状态。
11什么是数据库的转储?
转储的意义是什么?
答:
对数据库制作后援副本的过程称为转储。
转储是由DBA定期将数据库复制到另一个存档用的存储设备上,转储的意义就在于:
当数据库遭到破坏时,可将后援副本重新装入,从而把数据库恢复到某个一致性状态。
12为什么要设立日志文件?
答:
设立日志文件的目的,是为了记录对数据库中数据的每一次更新操作。
从而DBMS可以根据日志文件进行事务故障的恢复和系统故障的恢复,并可结合后援副本进行介质故障的恢复。
13怎么进行系统故障的恢复?
答:
当系统故障发生时,造成数据库处于不一致状态的原因有两个,一个是一些未完成事务对数据库的部分更新已经写入数据库中,另一个是一些已经提交事务对数据库的更新还留在内存缓冲区,没来得及写回到数据库。
因此,基本的恢复可以分为以下两步:
(1)根据日志文件建立重做队列和撤销队列
从头扫描日志文件,找出故障前已经提交的事务记录,将其事务标识放入重做队列;还要找出故障前尚未完成的事务,将该事务放入撤销队列。
(2)对重做队列中的事务进行重做处理,对撤销队列中的事务进行撤销处理
对于重做处理,正向扫描日志文件,再根据重做队列,将已经完成的事务的所有操作重新执行;对于撤销处理,反向扫描日志文件,再根据撤销队列,将未完成的事务的更新操作执行逆操作。
14怎样进行介质故障的恢复?
答:
在发生介质故障时,磁盘上的物理数据库被破坏,这时的恢复操作可以分为以下几步:
(1)重装转储后援副本,使数据库恢复到转储是的一致状态;
(2)从故障开始,反向阅读日志文件,找出已经提交事务标记为重做队列;
(3)从起始点开始正向阅读日志文件,根据重做队列的记录,重做所有已经完成的事务,将数据库恢复至故障前某一时刻的一致状态。
15数据库在运行过程中可能产生的故障有哪几类?
答:
数据库在运行过程中可能产生的故障有以下几
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 04 051011 数据 保护