简述系统故障时的数据库策略

如题所述

10. 分E-R图之间的冲突主要有属性冲突、 命名冲突 、结构冲突三种。 11. SQL语言集数据 定义 、数据 查询 、数据 操纵 、 数据_____控制______功能于一体。 12. E-R图的主要元素是______实体型______、____属性________、_____联系_______。 13. 关系系统的完整性控制包括_______实体完整性_____、__参照完整性__________、______用户定义的完整性______。 14. 关系模式R的码都为单属性,则R一定是第 二_ 范式。 15. 数据库系统一般包括数据库、_____数据库管理系统______、______应用系统_____、____数据库管理员_______与用户。 16. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据 冗余度大、_______插入异常_______、修改异常和删除异常。 17. 如果两个实体之间具有m:n联系,则将它们转换为关系模型的结果是_____3____个表。 18. 数据库设计的一般步骤有:需求分析、概念结构设计 、 逻辑结构设计 、 物理结构设 计 、 数据库的实施 、运行与维护等。 19.语句 select ascii('D'), char(67) 的执行结果是:____68_____和___C_____。 20.语句 select lower('Beautiful') , rtrim('我心中的太阳 ') 的执行结果是:beautiful ___和_我心中的太阳____。 21.完整性约束包括__实体___完整性、__域____完整性、参照完整性和用户定义完整性。 22.在SQL Server 2008中,数据库对象包括_表__、__视图__、触发器、过程、列、索引、约束、规则、默认和用户自定义的数据类型等。 23.语句 select day('2004-4-6'), len('我们快放假了.') 的执行结果是:__6___和__7___。 24.语句 select round(13.4321,2), round(13.4567,3)的执行结果是:__13.4300__和____13.4570_____。<取n位小数、四舍五入> 25.事务(Transaction)可以看成是由对数据库的若干操作组成的一个单元,这些操作要么__全部完成___,要么_全部取消______(如果在操作执行过程中不能完成其中任一操作)。 26. SQL Server 2008 采用的身份验证模式有__Windows身份验证___模式和__混合_模式。 27触发器定义在一个表中,当在表中执行__insert______、__update___或delete操作时被触发自动执行。 28.SQL Server复制有快照复制、___事务____复制和__合并___复制3种类型。 简答题 1. 说明视图与基本表的区别和联系。 答:视图是从一个或几个基本表导出的表,它与基本表不同,它是一个虚表,(2分)数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。 2. 简述事务的特性。 答:事务具有四个特性,即ACID特性:(1分) (1)原子性:事务中包括的所有操作要么都做,要么都不做。(1分) (2)一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。(1分) (3)隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。(1分) (4)持续性:事务一旦提交,对数据库的改变是永久的。(1分) 3. 试述关系模型的参照完整性规则。 答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系)(2分),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)(1.5分)或者等于S中某个元组的主码值(1.5分)。 4. 简述系统故障时的数据库恢复策略。 答:正像扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入REDO队列,同时找出故障发生时尚未完成的事务,将其事务标识记入UNDO队列(2分);对UNDO队列中的各个事务进行撤销处理(1.5分);对REDO队列中的各个事务进行重做处理。(1.5分) 5.在SQL Server 2008中,使用视图的好处是什么? 答: (1) 为用户集中需要的数据,简化了数据的用户操作; (2) 对用户隐藏了数据库设计的复杂性; (3) 简化用户权限的管理; (4) 组织数据导出到其它应用程序; 6. 简述使用游标的步骤。 答: Step1:声明游标:declare 游标名 cursor for select语句; Step2:打开游标:open 游标名; Step3:处理数据: fetch insert delete update语句 Step4:关闭游标:close 游标名; Step5:释放游标:deallocate 游标名; 7.简述SQL Server 2008的安全性管理机制,涉及登录账号、用户、角色以及权限分配。 答: (1)计算机的连接 (2)SQL Server服务器登录(登录、固定服务器角色) (3)数据库的访问(用户/角色:固定/自定义数据库角色) (4)数据表(视图)的访问(select insert update delete) (5)存储过程/内嵌表值函数的访问(execute/select) (6)数据表(视图)中列(字段)的访问(select update) 8. 事务控制语句的使用方法是什么? 答: begin transaction „„ -- A组语句序列 save transaction 保存点1 „„ -- B组语句序列 if @@error <> 0 rollback transaction 保存点1 --若发生错误,回滚到”保存点1” else commit transaction --若没有错误,先提交A组语句,再提交B组语句。 五、设计题 现有关系数据库如下: 数据库名:学生成绩数据库 学生表(*学号,姓名,性别,民族) 课程表(*课程号,课程名称,任课教师) 成绩表(*学号,*课程号,分数) 用SQL语言实现下列功能的sql语句代码: 1. 创建数据库[学生成绩数据库]代码(2分); create database [学生成绩数据库] go use [学生成绩数据库] go 2. 创建[课程表]代码(2分); 课程表(课号 char(6),名称) 要求使用:主键(课号)、非空(名称) create table课程表( [课程号] char(6) primary key, [课程名称] char(40) not null ) 3. 创建[学生表]代码(2分); 学生表(学号 char(6),姓名,性别,民族) 要求使用:主键(学号)、默认(民族)、非空(民族,姓名)、检查(性别) create table 学生表( [学号] char(6) primary key, [姓名] nchar(4) not null, [性别] nchar(1) check ([性别] in ('男', '女')), [民族] nchar(8) default '汉' not null ) 4. 创建[成绩表]代码(2分); 成绩表(学号,课程号,分数) 要求使用:外键(成绩表.学号,成绩表.课程号)、检查(分数) create table成绩表( [学号] char(6) references 学生表(学号), [课程号] char(6) references 课程表(课号), [成绩] integer check ([成绩] between 0 and 100) ) 5. 将下列课程信息添加到课程表中 课号 课程名称 100001 大学语文 100002 大学英语 100003 西班牙语 insert 课程表 values('100001', '大学语文') insert 课程表 values('100002', '大学英语') insert 课程表 values('100003', '西班牙语') 6. 写出创建成绩表视图(学号,姓名,课号,课程名称,成绩)的代码; create view [成绩表视图] as select 成绩表.学号,学生表.姓名,成绩表.课程号,课程表.课程名称,成绩表.成绩 from 成绩表,学生表,课程表 where 成绩表.学号=学生表.学号 and 成绩表.课号=课程表.课号 7. 写出创建分数存储过程用于计算某门课程成绩最高分、最低分、平均分 create procedure [分数] @课程名 nchar(16) as select 课程名称, 最高分=max(分数)、最低分=min(分数)、平均分=avg(分数) from 成绩表视图 where 课程名称 = @课程名 8. 检索姓李的女同学的信息:姓名、性别、民族。 Select 姓名,性别,民族 From 学生表 Where 姓名 like ‘李%’ and 性别=’女’ 9. 定义一事务向成绩表中插入学号=‘20030021’的多条记录,并检验若该同学成绩超过4门,则回滚事务,即成绩无效,否则成功提交。 Begin transaction Insert 成绩表 values(‘20030021’,’001’,88); Insert 成绩表 values(‘20030021’,’002’,99); Insert 成绩表 values(‘20030021’,’003’,77); Insert 成绩表 values(‘20030021’,’004’,66); Declare @num int; Set @num=(select count(*) from 成绩表 where 学号=’20030021’); If @num>4 Rollback transaction; Else Commit transaction; Go
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-08-12
系统故障的恢复要完成两方面的工作,既要撤销所有末完成的事务,还要重做所有已提交的事务,这样才能将数据库真正恢复到一致的状态。具体做法如下。
(1)正向扫描日志文件,查找尚未提交的事务,将其事务标识记人撤销队列。同时查找已经提交的事务,将其事务标识记入重做队列。
(2)对撤销队列中的各个事务进行撤销处理。
(3)对重做队列中的各个事务进行重做处理。进行重做处理的方法是正向扫描日志文件,按照日志文件中所登记的操作内容,重新执行操作,使数据库恢复到最近某个可用状态。

数据库运行过程中常见的故障有哪几类?试述对各类故障的恢复策略。
数据库运行过程中常见的故障有3类:事物故障、系统故障、介质故障。恢复策略:1、事物故障:发生事务故障时,被迫中断的事务可能已对数据库进行丁修改,为了消除该事务对数据库的影响,要利用日志文件中所记载的信息,强行回滚该事务,将数据库恢复到修改前的初始状态。为此,要检查日志文件中由这些事务所引...

系统有哪些可能的故障类型(来源),故障的处理策略是什么?
2,系统故障及其恢复系统故障是指系统在运行过程中,由于某种原因,造成系统停止运转,致使所有正在运行的事务都以非正常方式终止,要求系统重新启动。引起系统故障的原因可能有硬件错误(如CPu故障、操作系统)或DBMS代码错误、突然断电等。这时,内存中数据库缓冲区的内容全部丢失,虽然存储在外部存储设备上的...

数据库恢复中采用的常用技术和恢复策略
镜像恢复技术则是通过维护数据库的实时镜像来实现快速恢复。在这种策略中,数据库的所有写操作都会同时应用到主数据库和镜像数据库上,确保两者的数据始终保持一致。当主数据库发生故障时,系统可以迅速切换到镜像数据库,以减少故障对业务的影响。在恢复策略方面,完全恢复旨在将数据库恢复到故障发生前的完整...

怎样进行系统故障的恢复
系统故障的恢复主要依赖于事先制定的恢复计划和策略,包括数据备份、故障检测机制、冗余系统设计等方面。在系统故障发生时,首要任务是迅速而准确地识别故障点。这通常依赖于监控系统,它能实时检测系统的运行状态并提供异常报告。一旦检测到故障,应立即启动应急响应流程。例如,如果是硬件故障,如服务器宕机,...

什么是RAID冗余备份?
此外,在数据库系统中,通过定期备份数据库文件,可以在数据库受损时恢复到某个时间点的状态,确保数据的完整性和可用性。总之,冗余备份是一种重要的数据存储策略,通过创建和存储数据的多个副本,提高了数据的可用性和系统的容错性。在实际应用中,应根据需求和场景选择合适的备份方式,并定期测试备份数据...

我给高分,求重邮试题
5.简述系统故障时的数据库恢复策略。四、设计题(本大题共5小题,每小题4分,共20分) 现有关系数据库如下:� 学生(学号,姓名,性别,专业)� 课程(课程号,课程名,学分)� 学习(学号,课程号,分数)�分别用关系代数表达式和SQL语句实现下列1—5小题(注意:每小题都要分别写出关系代数表达式和SQL语句!!!

failover详细介绍
失效备援,或称failover,是一种关键的系统备份策略,当主系统组件如处理器、服务器或数据库出现故障时,备用组件能立即接手其工作,确保系统持续运行,提高故障容忍度。这种方法广泛应用于个人电脑和网络环境中,例如保护个人电脑处理器免受故障影响,以及在互联网中确保网络组件或服务器如连接通道、存储设备...

日志回档什么意识
日志回档是一种数据处理策略,通常用于数据库或系统管理中。当系统出现故障或异常时,可以通过回滚日志记录到先前的状态来恢复数据或解决故障。这种方式可以有效避免数据丢失和不一致的情况。2. 日志回档的应用场景:日志回档在多种场景下都发挥着重要作用。例如,在进行软件更新时,如果更新导致系统出现问题或...

openGauss数据库故障定位思路?
1、日志。数据库日志记录了数据库服务端启动、运行或停止时出现的问题,当数据库在启动、运行或停止的过程中出现问题时,数据库用户可以通过运行日志快速分析问题的产生原因,并根据不同的原因采取相应的处理方法,尽可能地解决问题。2、视图。数据库提供了许多视图,用于展示数据库的内部状态,在定位故障时...

数据库恢复数据库恢复的三种方式
当数据库因硬件或软件故障无法正常运行时,恢复策略的选择至关重要。针对不同的故障情况,有三种主要的恢复方法:应急恢复、版本恢复和前滚恢复。首先,应急恢复旨在防止数据库陷入不一致或不可用状态。在事务执行过程中,如果遇到意外中断,数据库可能处于不一致状态。此时,需要通过回滚未完成的事务并完成已...

相似回答