2017年西安理工大学745数据库系统复试仿真模拟三套题
● 摘要
一、简答题
1. 关系数据库管理系统的工作过程是什么?给出数据库管理系统插入一个记录的活动过程,画出活动过程本意图。
DBMS 是一个复杂而有序的整体,【答案】图是DBMS 的运行过程示例。结合图,给出DBMS
插入一条记录的活动过程。
图 数据库管理系统的运行过程
(1)用户通过应用程序向DBMS (以RDBMS 为例)发出调用数据库数据的INSERT 命令。在命令中给出一个关系名和所插入的元组值。
DBMS 先对命令进行语法检查、(2)语义检查和用户存取权限检查。语义检查的具体做法是,DBMS 读取数据字典,检查是否存在该关系及相应的字段,值的数据类型是否正确。检查该用户是否具有该关系上执行INSERT 操作的权限。若未能通过检查就拒绝执行INSERT 命令,返回有关的错误提示信息。
(3)DBMS 查看存储模式,找到新记录所应插入的位置和相应的页面P 。
(4)DBMS 在系统缓冲区中找到一个空页。
(5)DBMS 根据步骤(3)的执行结果,向操作系统发出读取物理页而P 的命令。
(6)操作系统执行读操作。将数据页P 读入系统缓冲区中的空白页处。
(7)DBMS 根据插入命令和数据字典的内容将数据转化成内部记录的格式。
(8)DBMS 将数据记录写入系统缓冲区的页面P 中。
(9)DBMS 将执行事务的提交。把状态信息(如成功或不成功的指示)、例外状态信息等返回给应用程序。(这里未考虑多用户并发控制的问题。)
2. UNDO 操作和REDO 操作各做些什么事情?
【答案】(1)在恢复操作中,REDO 操作称为重做,UNDO 操作称为撤消。如果数据库被破坏,利用日志文件 执行REDO 操作,将两个数据库状态之间的所有修改重新做一遍。这样,建
立了新的数据库,同时也没丢失对数据库的更新操作。
(2) REDO 处理的方法是正向扫描日志文件,重新执行登记的操作。如果数据库未被破坏,但某些数据可 能不可靠,这时,可通过日志文件执行REDO 操作,把已经结束的、不可靠的事务进行REDO 处理。
(3)UNDO 处理的方法是反向扫描日志文件,对每个UNDO 事务的更新操作执行逆操作,即对已插入的新 记录执行删除操作,对己删除的记录重新插入,对已修改的数据库用旧值代替新值。
3. 数据字典的内容和作用是什么?
【答案】(1)数据字典是系统中各类数据描述的集合。数据字典的内容通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。数据项是组成数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流和数据存储的逻辑内容。
(2)数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完善。
4. 试述数据库系统的组成。
【答案】数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
(1)硬件平台及数据库。由于数据库系统数据量都很大,加之DBMS 丰富的功能使得自身的规模也很大,因此整个数据库系统对硬件资源提出了较高的要求:①要有足够大的内存,存放操作系统、DBMS 的核心模块、数据缓冲区和应用程序;②有足够的大的磁盘或磁盘阵列等设备存放数据库,有足够的磁带(或光盘)作数据备份;③要求系统有较高的通道能力,以提高数据传送率。
(2)软件。①DBMS ; ②支持DBMS 运行的操作系统;③具有与数据库接口的高级语言及其编译系统;④以DBMS 为核心的应用开发工具;⑤为特定应用环境开发的数据库应用系统。
(3)人员。开发、管理和使用数据库系统的人员主要是:数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。
5. 举例说明对并发事务的某个调度是可串行化的,而这些并发事务不一定遵守两段锁协议。
【答案】举例如下:
6. 举例说明对数据库安全性产生威胁的因素。
【答案】(1)滥用过高权限:当用户(或应用程序)被授予超出了其工作职能所需的数据库访问权限时,这些权限可能会被恶意滥用。例如,一个大学管理员在工作中只需要能够更改学生的联系信息,不过他可能会利用过高的数据库更新权限来更改分数。
(2)滥用合法权限:用户还可能将合法的数据库权限用于未经授权的目的。假设一个恶意的医务人员拥有可以通过自定义Web 应用程序查看单个患者病历的权限。通常情况下,该Web 应用程序的结构限制用户只能查看单个患者的病史,即无法同时查看多个患者的病历并且不允许复制电子副本。但是,恶意的医务人员可以通过使用其他客户端(如MS-Excel )连接到数据库,来规避这些限制。通过使用MS-Excel 以及合法的登录凭据,该医务人员就可以检索和保存所有患者的病历。
(3)权限提升:攻击者可以利用数据库平台软件的漏洞将普通用户的权限转换为管理员权限。漏洞可以在存储过程、内置函数、协议实现甚至是SQL 语句中找到。例如,一个金融机构的软件开发人员可以利用有漏洞的函数来获得数据库管理权限。使用管理权限,恶意的开发人员可以禁用审计机制、开设伪造的帐户以及转帐等。
二、应用题
7. 为在某种程度上保证某数据库系统可靠地运行,在SQL Server 2000环境中,对其制定有下列三种备份策略。假设对此数据库进行一次完全备份需要4小时,差异备份需要2小时,日志备份需要1小时。设所有备份都是从凌晨1:00开始。
策略1:每周周日进行一次完全备份,每周周一至周六每天进行一次日志备份;
策略2:每周周日进行一次完全备份,每周周一至周六每天进行一次差异备份;
相关内容
相关标签