第8章 数据与数据库安全 8.1 数据安全 8.1.1 数据安全 数据安全一般有两个含义:一是在数据的使用过程中,赋予不同的用户以不同的权限,实现机要数据的保密性;二是保证数据在存取和传输过程中的低出错率,避免机要数据的丢失、泄露、受扰和损毁等现象的发生。 数据安全主要包括数据存储和传输两方面的安全。存储安全包括存储环境安全、存储介质安全、存储管理等方面的安全;传输安全包括信息错误发送、非法拦截、泄露、缺损等内容。

Slides:



Advertisements
Similar presentations
面向侧面的程序设计 方林博士 本文下载地址:
Advertisements

LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
6 Copyright © Oracle Corporation, All rights reserved. 维护控制文件.
初级会计电算化 (用友T3) 制作人:张爱红.
第三章 数据类型和数据操作 对海量数据进行有效的处理、存储和管理 3.1 数据类型 数据源 数据量 数据结构
Oracle数据库 Oracle 子程序.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
在PHP和MYSQL中实现完美的中文显示
计算机基础知识 丁家营镇九年制学校 徐中先.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Hadoop I/O By ShiChaojie.
基于云计算的数据安全 保护策略研究 报告人:王 立 伟.
SVN的基本概念 柳峰
Chinese Virtual Observatory
中国科学技术大学 肖 明 军 《网络信息安全》 中国科学技术大学 肖 明 军
存储系统.
大学计算机基础 典型案例之一 构建FPT服务器.
辅导课程六.
大数据管理技术 --NoSQL数据库 HBase 陈 辉 大数据分析技术.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
Windows网络操作系统管理 ——Windows Server 2008 R2.
Windows网络操作系统管理 ——Windows Server 2008 R2.
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
S 数控机床故障诊断与维修.
第17章 网站发布.
数据挖掘工具性能比较.
CPU结构和功能.
VSS使用简介 王树升
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
SOA – Experiment 2: Query Classification Web Service
第13章 数据库的备份与恢复 13.1 数据库备份设备 13.2 数据库备份 13.3 数据库恢复.
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
微机系统的组成.
顺序表的删除.
实验讲评
VisComposer 2019/4/17.
主要内容: 无线局域网的定义 无线传输介质 无线传输的技术 WLAN的架构 无线网络搭建与配置 无线网络加密配置
商业分析平台-语义元数据 用友集团技术中心 边传猛 2013年 11月 06日.
Cassandra应用及高性能客户端 董亚军 来自Newegg-NESC.
姚金宇 MIT SCHEME 使用说明 姚金宇
实验七 安全FTP服务器实验 2019/4/28.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
IT 安全 第 9节 通信和网络控制.
iSIGHT 基本培训 使用 Excel的栅栏问题
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
数据报分片.
本节内容 文件系统 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
Visual Basic程序设计 第13章 访问数据库
Touch Github = Touch the World
机械设备的完整性和可靠性管理 Maintenance integrity & reliability.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Python 环境搭建 基于Anaconda和VSCode.
WSAAsyncSelect 模型 本节内容 视频提供:昆山爱达人信息技术有限公司 视频录制:yang
Google的云计算 分布式锁服务Chubby.
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
3.8 局域网应用实例 某省劳动和社会保障网络中心组网实例 会议中心的无线组网实例.
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
第四章 UNIX文件系统.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
RefWorks使用指南 归档、管理个人参考文献.
入侵检测技术 大连理工大学软件学院 毕玲.
实验六、COM类型病毒分析实验 实验开发教师: 刘乃琦 谌黔燕.
Presentation transcript:

第8章 数据与数据库安全 8.1 数据安全 8.1.1 数据安全 数据安全一般有两个含义:一是在数据的使用过程中,赋予不同的用户以不同的权限,实现机要数据的保密性;二是保证数据在存取和传输过程中的低出错率,避免机要数据的丢失、泄露、受扰和损毁等现象的发生。 数据安全主要包括数据存储和传输两方面的安全。存储安全包括存储环境安全、存储介质安全、存储管理等方面的安全;传输安全包括信息错误发送、非法拦截、泄露、缺损等内容。

1.数据安全的重要性 在信息系统中存有重要的数据、档案或历史纪录,不论是对企业用户,还是对个人用户来讲都是至关重要的,一旦不慎丢失,就可能造成不可估量的损失,轻则辛苦积累起来的心血会付之东流;严重的则会影响企业的正常运作,给科研、生产造成巨大的损失。 由于计算机病毒的数目越来越多、隐蔽性越来越强、破坏力也越来越大,轻则影响程序运行、系统死机、严重的格式化所有数据、损坏硬件,给用户带来巨大的损失。可见数据在存储中是难以保证其安全的。对企业来说,数据的安全足以决定企业的生存和发展,不能掉以轻心。所以为了保障生产、销售、开发的正常运行,必须采取先进、有效的措施以防范于未然。

2.威胁数据安全的因素 l      由于一个系统或设备的物理损坏使数据丢失。 l      人为错误导致偶然地删除一个文件或重新格式化一个磁盘。 l      黑客远程侵入计算机并损害信息。 l      病毒破坏数据或感染文件。 l      非法复制或删除计算机上信息或侵占整个单元系统。 l      火灾或洪水等自然灾害破坏网络或计算机等设备。 l      电源瞬间波动损害网络设备、文件等。 l    磁性存储器接触到有磁性的物质使文件被清除等现象。

3.保护数据安全常用的方法   (1)加强存取控制、防止非法访问。这样既可防止合法用户有意或无意的越权访问,也可防止非法用户的入侵。 (2)数据加密。数据加密方法有很多种,具体采用什么方法可根据实际情况来确定。 (3)网络加密。通常网络有三种对传输数据进行加密的保护方式,即链路加密、节点加密和点对点加密。 (4)数据安全管理。它应包括:防止数据信息被无意泄露或被窃;防止计算机病毒感染和破坏;有效、适时的数据备份和对备份介质的妥善保管。

8.1.2 数据完整性 1.数据完整性 数据完整性的目的就是保证计算机系统,或计算机网络系统上的信息处于一种完整和未受损坏的状态。这意味着数据不会由于有意或无意的事件而被改变或丢失。数据完整性的丧失意味着发生了导致数据被丢失或被改变的事情。为此,首先应该检查导致数据完整性被破坏的常见的原因,以便采用适当的方法予以解决,从而提高数据完整性的程度。 一般来说,影响数据完整性的因素主要有: (1)硬件故障 影响数据完整性的硬件故障有I/O控制器故障、电源故障、存储器故障、芯片和主板故障、介质、设备和其他备份的故障等。 (2)网络故障

软件也是威胁数据完整性的一个重要因素。由于软件问题而影响数据完整性有下列几种途径: (3)逻辑问题 软件也是威胁数据完整性的一个重要因素。由于软件问题而影响数据完整性有下列几种途径: l  操作系统错误。所有的操作系统都有自己的错误,这是众所周知的。此外,系统的应用程序接口(API)被第三方开发商用来为最终用户提供服务,第三方根据公开发布的API功能来编写其软件产品,如果这些API工作不正常就会产生数据被破坏的情况。 l  软件问题。在软件开发过程中,需求分析如果没有正确地反映用户的实际需要,系统就有可能生成一些无用的数据和错误的数据;软件错误或缺陷也是由逻辑问题而起,当然会影响数据的完整性。 l  文件损坏。文件损坏是由于一些物理的或网络的问题导致文件被破坏。文件也可能由于系统控制或应用逻辑中一些缺陷而造成损坏。如果被损坏的文件将会又被其他的过程调用而生成新的数据。 l  数据交换错误。在文件转换过程中,如果生成的新的文件不具有正确的格式,也会产生数据交换错误。 l 容量错误。在软件运行过程中,系统容量如内存不够也是导致出错的原因。

(4)灾难性事件 常见的灾难性事件有火灾、水灾、风暴、工业事故、蓄意破坏和恐怖活动等。 (5)人为因素 由于人类的活动对数据完整性所造成的影响是多方面的,它给数据完整性带来的常见的威胁包括:意外事故、缺乏经验、压力和恐慌、通信不畅、蓄意的报复破坏和窃取等。

2.提高数据完整性的办法 (1)备份 备份是用来恢复系统和数据最常用的方法之一。备份操作是把正确的完整的数据拷贝到磁带等介质上,如果系统的数据完整性受到了不同程度的损坏,可以用备份系统将最近一次的系统备份恢复到信息系统中去。 (2)镜像技术 镜像是在两个或多个磁盘或磁盘子系统上生成同一个数据的镜像视图的信息存储过程,一个叫主镜像系统,另一个叫从镜像系统。按主从镜像存储系统所处的位置可分为本地镜像和远程镜像。本地镜像的主从镜像存储系统是处于同一个RAID阵列内,而远程镜像的主从镜像存储系统通常是分布在跨城域网或广域网的不同节点上。

(3)归档 在信息系统中,归档操作的意思是把文件从网络系统的在线存储器上复制到磁带或光学介质上以便长期保存;或在文件复制的同时删除旧文件,使网络上的剩余存储空间变大一些。 (4)分级存储管理 分级存储管理与归档很相似,它是一种能将软件从在线存储器上归档到靠近在线存储器上的自动系统,也可以进行相反的过程。从实际使用的情况来看,它对数据完整性比使用归档方法具有更多的好处。 (5)奇偶检验 奇偶校验提供一种监视的机制来保证不可预测的内存错误,防止服务器出错以至造成数据完整性的丧失。 (6)故障发生前的预兆分析 故障前预兆分析是根据部件的老化或不断出错所进行的分析。一般情况下部件的老化或损坏都是需要一个过程的,常伴有各种表象的发生,通过分析可判断出问题的所在,为故障的排除提供科学的依据。 (7)灾难恢复计划 灾难给信息系统带来的破坏力是巨大的,灾难恢复计划是在废墟上如何重建系统的指导性文件。

8.1.3 容错与冗余技术 1. 容错技术 提高信息系统的可靠性有两种方法。一种是避错,即构造一个不包含故障的“完美”的系统,其手段是采用正确的设计和质量控制尽量避免把故障引进系统,要绝对做到这一点实际上是不可能的。一旦系统出了故障,则通过检测和核实来消除故障的影响,进而自动地或人工地恢复系统。第二种方法是容错,即当系统出现某些指定的硬件或软件的错误时,系统仍能执行规定的一组程序,或者说程序不会因系统中的故障而中断或被修改,并且执行结果也不包含系统中故障所引起的差错。

2.容错系统的分类 根据容错技术的不同,可以将容错系统分成五种不同的类型: (1)高可用度系统。 (2)长寿命系统。 (3)延迟维修系统。 2.容错系统的分类  根据容错技术的不同,可以将容错系统分成五种不同的类型: (1)高可用度系统。 (2)长寿命系统。 (3)延迟维修系统。 (4)高性能计算系统。 (5)关键任务计算系统。

3.容错系统的实现方法 根据执行任务的不同,常用的实现容错系统的方法有: (1)冗余备件 (2)负载平衡 (3)镜像 (4)复现 (5)冗余系统配件

4.网络冗余 在网络系统中,传输介质和其他的网络连接部件都必须有持续正常运行的备用途径。以提高主干网和网络互连设备的可靠性。 (1)主干网的冗余 (2)开关控制设备 (3)路由器 (4)Pipes软件

8.1.4 备份与恢复技术 1.数据备份的意义 顾名思义,数据备份就是将数据以某种方式加以保留,以便在系统遭受破坏或其他特定情况下,重新加以利用的一个过程。数据备份并非是可做可不做的事,对于信息系统来说建立备份是必需的。 数据备份在存储系统中的地位和作用是不容忽视的。对一个完整的信息系统而言,备份工作是必不可或缺的组成部分。其意义不仅在于防范意外事件的破坏,而且还是历史数据保存归档的最佳方式。换言之,即便是系统运行正常,没有任何数据丢失或破坏现象的发生,备份工作仍然具有非常大的意义――为进行历史数据查询、统计、研究和分析,以及重要信息归档保存提供了可能。

2.备份的误区 备份只是一种手段,备份的目的是为了防止数据灾难,缩短停机时间,保证数据安全,服务器硬件升级;而备份的最终目的是尽可能快地恢复网络信息系统所需要的数据和系统信息。目前,很多系统管理人员以及CIO对备份的认识还存在着一定的误区。主要存表现在: (1)用拷贝来代替备份 (2)用双机、磁盘阵列、镜像等系统冗余替代数据备份 (3)系统备份命令代替备份 (4)用双机、磁盘阵列、镜像等系统冗余替代数据备份 (5)只备份数据文件

3.备份与恢复操作的种类 (1)备份的种类 备份包括全盘备份、增量备份、差异备份、按需备份和排除。 (2)恢复操作的种类 3.备份与恢复操作的种类   (1)备份的种类 备份包括全盘备份、增量备份、差异备份、按需备份和排除。 (2)恢复操作的种类 恢复操作通常可以分成如下三类:全盘恢复、个别文件恢复和重定向恢复。

4.备份技术 当对大量的信息进行备份时,备份性能便成了非常重要的问题。被用于提高网络备份性能的技术有:RAID技术、设备流、磁带间隔和压缩等。 (1)RAID技术 (2)设备流 (3)磁带间隔 (4)压缩

8.2 数据库安全 8.2.1 数据库系统的安全 1.数据库安全的威胁 (1)篡改 8.2 数据库安全 8.2.1 数据库系统的安全 1.数据库安全的威胁 (1)篡改 篡改指的是对数据库中的数据未经授权进行修改,从而使其失去真实性的行为。篡改的形式多种多样,在造成影响之前也是很难被发现的。一般来说,发生篡改的现象主要有个人利益驱动、隐藏证据、恶作剧和无知等因素。 (2)损坏 信息系统中数据的丢失是数据库安全所面对的另一个威胁。其表现的形式是:表和整个数据库部分或全部被删除、移走或破坏。产生损坏的原因主要有破坏、恶作剧和病毒等。 (3)窃取 窃取一般是针对敏感数据,窃取的手法除了将数据复制到软盘之类的可移动的介质上以外,也可以把数据打印后取走。导致窃取的原因有工商业间谍的窃取、不满和要离开的员工的窃取,还有就是被窃取的数据可能比想象中更有价值。

2.数据库的故障 数据库的故障是指从保护安全的角度出发,数据库系统中会发生的各种故障。这些故障主要包括:事务内部的故障、系统故障、介质故障和计算机病毒与黑客等。 (1)事务(Transaction)内部的故障多发生于数据的不一致性, (2)系统故障又称软故障,是指系统突然停止运行时造成的数据库故障。 (3)介质故障又称硬故障,主要指外存故障。 (4)病毒所致的故障。 (5)黑客所致的故障 。

8.2.2 数据库安全系统特性 1.数据独立性 数据独立于应用程序之外。理论上数据库系统的数据独立性分为以下两种。 8.2.2 数据库安全系统特性 1.数据独立性 数据独立于应用程序之外。理论上数据库系统的数据独立性分为以下两种。 (1)物理独立性。数据库的物理结构的变化不影响数据库的应用结构,从而也就不能影响其相应的应用程序。这里的物理结构是指数据库的物理位置、物理设备等。 (2)逻辑独立性。数据库逻辑结构的变化不会影响用户的应用程序,数据类型的修改、增加,改变各表之间的联系都不会导致应用程序的修改。 这两种数据独立性都要靠DBMS来实现。到目前为止,物理独立性已经能基本实现,但逻辑独立性实现起来非常困难,数据结构一旦发生变化,一般情况下,相应的应用程序都要作或多或少的修改。追求这一目标也成为数据库系统结构复杂的一个重要原因。

2.数据安全性 一个数据库能否实现防止无关人员得到他不应该知道的数据,是数据库是否实用的一个重要指标。如果一个数据库对所有的人都公开数据,那么这个数据库就不是一个可靠的数据库。 3.数据的完整性 (1)正确性。 (2)有效性。 (3)一致性。

4.并发控制 如果数据库应用要实现多用户共享数据,就可能在同一时刻多个用户要存取数据,这种事件叫做并发事件。当一个用户取出数据进行修改,在修改存入数据库之前如有其他用户再取此数据,那么读出的数据就是不正确的。这时就需要对这种并发操作施行控制,排除和避免这种错误的发生,保证数据的正确性。 5.故障恢复 如果数据库系统运行时出现物理或逻辑上的错误,系统能尽快地恢复正常,这就是数据库系统的故障恢复功能

8.2.3 数据库安全性 1.安全性级别 对数据库不合法的使用称为数据库的滥用。数据库的滥用可分为无意滥用和恶意滥用。无意滥用主要是指经过授权的用户操作不当引起的系统故障、数据库异常等现象。恶意滥用主要是指未经授权的读取数据(即偷窃信息)和未经授权的修改数据(即破坏数据)。 数据库的完整性尽可能的避免对数据库的无意滥用。数据库的安全性尽可能避免对数据库的恶意滥用。为了防止数据库的恶意滥用,可以在下述不同的安全级别上设置各种安全措施。 (1)环境级:对计算机系统的机房和设备加以保护,防止物理破坏。 (2)职员级:对数据库系统工作人员,加强劳动纪律和职业道德教 育,并正确的授予其访问数据库的权限。 (3)操作系统级:防止未经授权的用户从操作系统层访问数据库。 (4)网络级:由于数据库系统允许用户通过网络访问,因此,网络软件内部的安全性对数据库的安全是很重要的。 (5)数据库系统级:检验用户的身份是否合法,检验用户数据库操作权限是否正确。

2.数据库的安全性机制 在一般计算机系统中,安全措施是一级一级层层设置的。 用户要进入计算机系统,系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准许进入计算机系统。对已经进入系统的用户,DBMS要进行存取控制,只允许用户执行合法操作。操作系统一级也会有自己的保护措施。数据最后还可以以密码形式存储在数据库中。数据库的安全机制主要有标识与鉴别、存取控制、视图以及加密等技术。 (1)标识与鉴别 (2)访问控制 (3)视图机制 (4)审计方法 (5)数据加密

8.2.4 数据库完整性 1.数据库完整性的分类 (1)静态完整性约束(状态约束) (2)动态完整性约束(变迁约束)

2.数据库完整性的定义与验证 (1)固有约束与隐式约束 (2)显式约束 (3)动态约束的定义

8.2.5 数据库并发控制 1.基于锁的并发控制技术 锁是数据项上的并发控制标志,它有两种类型:共享锁(Shared Lock,简称S锁)和排它锁(Exclusive Lock,简称X锁)。 基于锁的并发控制是事务对数据操作前必须获得对该数据的锁,完成操作后在适当时候释放锁,而得不到锁的事务处于等待状态。 (1)封锁协议 (2)封锁粒度 (3)死锁 (4)死锁的检测和处理 (5)死锁的预防

为了区别事务开始执行的先后,每个事务在开始执行时,由系统赋予一个唯一的、随时间增长的整数,称为时间戳(Time Stamp,TS)。 2.基于时间戳的并发控制技术    为了区别事务开始执行的先后,每个事务在开始执行时,由系统赋予一个唯一的、随时间增长的整数,称为时间戳(Time Stamp,TS)。 基于时间戳的并发控制是按时间戳的顺序对冲突进行处理,使一组事务的交叉执行等价于一个由时间戳确定的串行序列,其目的是保证冲突的读操作和写操作按照时间戳的顺序执行。

3.基于版本的并发控制技术 实质上,基于版本的并发控制方法是将版本管理引入到数据库应用中。数据库版本是数据库的一个视图,它反映了数据库在某种情况下的数据存储情况。多用户版本是指同一数据库在一次完整的设计过程中,对不同用户及同一用户在此过程中的不同时刻的多个数据视图。在应用开始时,每个应用将初始数据读至自己的工作区,形成该任务的初始版本。在任务的执行过程中,每一应用在自己的工作区内对数据进行操作,利用版本来记录每次操作的结果。由于操作是在各自的工作区内完成,所以可以并行进行,互不干扰。各任务结束后,将各任务的最终版本进行合并。

4.基于事务类的并发控制技术 利用存储过程(stored procedure)来访问数据库,假设每个存储过程属于一个互不相交的冲突类。一个冲突类里的过程仅存取数据库中的某一特定部分,而不同的冲突类则工作在数据库的不同部分。对每一个冲突类C均存在一个先进先出(First In First Out ,FIFO)的类队列(Class Queue ,CQ)。当一个事务T开始且T∈C,T被加入到CQ中。若T是队列CQ中唯一的事务,则T将被提交给数据管理器去执行;若在队列CQ中还有其它的事务,则T等待。当一个事务成为队列中的第一个事务并提交后,则从相应的队列中移出该事务,队列中下一个在等待的事务被提交执行。

8.2.6 数据库的备份与恢复 1.数据库的备份 (1)备份方案的评估 8.2.6 数据库的备份与恢复 1.数据库的备份 (1)备份方案的评估    对数据库备份方案的评估主要指的是在制订数据库备份方案之前必须对下列问题进行分析,在分析的基础上作出评估。 1)用的评估 2)技术评估 (2)数据库备份的类型 常用的数据库备份的方法有冷备份、热备份和逻辑备份三种。 1) 冷备份。 2) 热备份。 3)逻辑备份。

2.数据库的恢复     恢复技术大致可以分为三种:单纯以备份为基础的恢复技术、以备份和运行日志为基础的恢复技术和基于多备份的恢复技术。 (1)单纯以备份为基础的恢复技术    单纯以备份为基础的恢复技术是由文件系统恢复技术演变过来的,即周期性地把磁盘上的数据库复制或转储到磁带上。由于磁带是脱机存放的,系统对它没有任何影响。当数据库失效时,可取最近一次从磁盘复制到磁带上的数据库备份来恢复数据库,即把备份磁带上的数据库复制到磁盘的原数据库所在位置上。利用这种方法,数据库只能恢复到最近备份的一次状态,从最近备份到故障发生期间的所有数据库的更新数据将会丢失。这意味着备份的周期越长,丢失的更新的数据也就越多。

(2)以备份和运行日志为基础的恢复技术0    系统运行日志用于记录数据库运行的情况,一般包括三个内容:前像(Before Image,BI)、后像(After Image,AI)和事务状态。    所谓的前像是指数据库被一个事务更新时,所涉及的物理块更新后的影像,它以物理块为单位。前像在恢复中所起的作用是帮助数据库恢复更新前的状态,即撤销更新,这种操作称为撤销(undo)。   后像恰好与前像相反,它是当数据库被某一事务更新时,所涉及的物理块更新前的影像,其单位和前像一样以物理块为单位。后像的作用是帮助数据库恢复到更新后的状态,相当于重做一次更新。这种操作在恢复技术中称为重做(Redo)。    运行日志中的事务状态记录每个事务的状态,以便在数据库恢复时作不同处理。基于备份和日志为基础的这种恢复技术,当数据库失效时,可取出最近备份,然后根据日志的记录,对未提交的事务用前像卷回,这称为后恢复(Backward Recovery);对已提交的事务,必要时用后像重做,称向前恢复(Forward Recovery)。

(3)基于多备份恢复技术    多备份恢复技术的前提是每一个备份必须具有独立的失效模式(Independent Failure Mode),这样可以利用这些备份互为备份,用于恢复。所谓独立失效模式是指各个备份不致于因同一故障而一起失效。获得独立失效模式的一个重要的要素是各备份的支持环境尽可能地独立,其中包括不共用电源、磁盘、控制器以及CPU等。在部分可靠要求比较高的系统中,采用磁盘镜像技术,即数据库以双数据库的形式存放在二个独立的磁盘系统中,为了使失效模式独立,两个磁盘系统有各自的控制器和CPU,但彼此可以相互切换。在读数时,可以选读其中任一磁盘;在写数据时,两个磁盘都写入同样的内容,当一个磁盘中数据丢失时,可用另一个磁盘的数据来恢复。