数据库知识培训资料9811.docx

上传人:you****now 文档编号:63380213 上传时间:2022-11-24 格式:DOCX 页数:43 大小:177.98KB
返回 下载 相关 举报
数据库知识培训资料9811.docx_第1页
第1页 / 共43页
数据库知识培训资料9811.docx_第2页
第2页 / 共43页
点击查看更多>>
资源描述

《数据库知识培训资料9811.docx》由会员分享,可在线阅读,更多相关《数据库知识培训资料9811.docx(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据库知知识数据库管管理系统统的功能能和特征征数据库库模型(概概念模式式、外模模式、内内模式)数据模型,ER图,第一范式、第二范式、第三范式数据操作(集合运算和关系运算)数据库语言(SQL)数据库的控制功能(并发控制、恢复、安全性、完整性)数据仓库和分布式数据库基础知识1、数据据库知识识1.1数数据管理理技术的的发展数据据管理技技术的发发展阶段段:人工工阶段:数据处处理方式式是批处处理。其其特点是是: 数数据不保保存 没没有专用用的软件件对数据据进行管管理 只只有程序序概念,没没有文件件概念 一一组数据据对应一一个程序序,即数数据是面面向程序序的文件件系统阶阶段:数数据处理理方式有有批处理理,

2、也有有联机实实时处理理。其特特点是: 数数据可长长期保存存在外存存上 数数据的逻逻辑结构构与物理理结构有有了区别别,但简简单 文文件组织织已多样样化,有有索引文文件、链链接文件件和直接接存取文文件等,但但文件之之间相互互独立,没没有联系系 数数据不再再属于某某个特定定的程序序,可重重复使用用,但数数据结构构和程序序之间的的依赖关关系并未未根本改改变。其缺点是是: 数数据冗余余性 数数据不一一致性 数数据联系系弱数据据库阶段段:其特特点是: 用用关系模模型表示示复杂的的数据模模型 有有较高的的数据独独立性 数数据库系系统为用用户提供供了方便便的用户户接口 数数据库管管理系统统提供了了四个方方面的

3、数数据控制制能力数据完完整性、数据安安全性、数据库库的并发发控制、数据库库的恢复复数据库的的基本概概念数据据库(DDB):是存存储在一一起的相相关数据据的集合合。DBB能为各各种用户户共享,具具有最小小冗余度度,数据据间联系系密切,而而又有较较高的程程序与数数据的独独立性。数据据库管理理系统(DBMS):DBMS是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS可分为层次型、网状型、关系型、面向对象型。数据据库系统统(DBBS):即是是采用了了数据库库技术的的计算机机系统,是是实现有有组织地地、动态态存储大大量关联

4、联数据,方方便多用用户访问问的计算算机软件件、硬件件和数据据资源而而组成的的系统。数据据库技术术:研究究数据库库的结构构、存储储、设计计、管理理和使用用的一门门软件学学科。1.2数数据模型型表示示实体类类型及实实体之间间联系的的模型称称为“数据模模型”。数据据模型是是严格定定义的概概念的集集合,数数据库的的数据模模型应包包括数据据结构(指指对实体体类型和和实体之之间联系系的表达达和实现现)、数数据操作作(指对对数据库库的检索索和更新新两大类类操作)和和完整性性约束(给给出数据据及其所所具有的的制约合合依赖规规则)33个部分分。数据据模型的的种类很很多。目目前广泛泛使用的的数据模模型可分分为两种

5、种:概念念数据模模型和结结构数据据模型。概念数据据模型这是是一种独独立于任任何计算算机系统统的模型型,完全全不涉及及信息在在计算机机系统中中的表示示,用于于建立信信息世界界的数据据模型,是是现实世世界的第第一层抽抽象,是是用户和和数据库库设计人人员进行行交流的的工具,其其中最著著名的模模型是“实体联联系模型型”(ER模型型)。ER模型型直接从从现实世世界中抽抽取出实实体类型型及实体体间联系系图(EER图)表表示数据据模型。一般遇遇到实际际问题时时,总是是先设计计一个EER模型型,然后后再把EER模型型转换成成与DBBMS关关联的数数据模型型。结构数据据模型(亦亦称基本本数据模模型):这是是直接

6、面面向数据据库的逻逻辑数据据结构,通通常有一一组严格格定义了了语法和和语义的的数据库库语言,用用来定义义、操纵纵数据库库中的数数据。其其主要有有层次、网状、关系模模型三种种。层次模模型:用用树型(层层次)结结构表示示实体类类型及实实体之间间联系的的数据模模型称为为层次模模型。层层次结构构是一棵棵树,树树的结点点是记录录类型,非非根结点点有且只只有一个个父结点点。上一一层记录录类型和和下一层层记录类类型的联联系是11:M联系。网状模模型:用用从结构构(网络络结构)表表示实体体类型及及实体间间联系的的数据模模型称为为网状模模型。记记录之间间的联系系通过指指针实现现,M:N联系容容易实现现(一个个M

7、:N联系可可拆成两两个1:M联系),查查询效率率高。关系模模型:用用规范化化了的二二维表格格结构表表示实体体集,用用键表示示实体间间联系。通常是是若干个个关系模模型组成成的集合合。1.3数数据库系系统的结结构n数据据库的数数据体系系结构数据库的的数据体体系结构构分成33个级别别:内部部级、概概念级、外部级级。从某某个角度度看到的的数据特特性称为为数据视视图。 外外部级最最接近用用户,是是用户看看到的数数据特性性,用户户的数据据视图称称为外模模型。 概概念级是是涉及到到所有用用户的数数据定义义,也就就是全局局的数据据视图,称称为概念念模型。 内内部级是是最接近近于物理理存储设设备,涉涉及到实实际

8、数据据的存储储方式。物理存存储的数数据视图图称为内内模型。这些模型型用数据据库的数数据定义义语言(DDL)描述后,分别得到外模式、概念模式、内模式。为实现这个抽象级别的转换,数据库和管理系统在这级结构之间提供了两层映象:外模式概念模式映象和概念模式内模式映象数据库管管理系统统的主要要目标:把数据据作为可可管理的的资源处处理。数据库管管理系统统的个个重要功功能:数数据库的的定义功功能、数数据库的的操纵功功能、数数据库的的保护功功能、数数据库的的维护功功能、数数据字典典。数据库的的全局结结构:DBS的的某些功功能是由由计算机机的OSS提供的的,OSS提供了了DBSS最基本本的服务务,因此此 DBB

9、S必须须在OSS基础上上工作。在DBBS中就就应包含含DBMMS和OS之间间的界面面。DBS的的全局结结构由数数据库用用户、数数据库管管理系统统的查询询处理器器、数据据库管理理系统的的存储管管理器和和磁盘存存储器中中的数据据结构等等部分组组成。1.4关关系模型型和关系系运算n基本本概述关系数数据库是是应用关关系数据据模型来来建立和和处理数数据库中中的数据据。这其其中主要要涉及几几个重要要的概念念。u关系关系实实际上就就可以看看作是一一个二维维表。其其中,表表的每一一列称为为属性,并并用属性性名来标标识。每每个属性性的取值值范围,就就是该属属性所对对应的值值域。表表的每一一行称为为元组。约定该该

10、表的行行、列的的次序的的改变,不不改变关关系的语语义性质质。对于一个个关系,应应该具备备下列性性质: 关关系中每每一个属属性值都都是不可可分解的的; 关关系中不不允许出出现相同同的元组组;不让让用户考考虑元组组的顺序序; 用用户在使使用时应应考虑列列的顺序序。u关系系模型关系模型型是目前前最流行行的一种种数据模模型,它它是用二二维表格格结构表表示实体体集,关关键码表表示实体体间的联联系。u关关键字(键键)I.候候选键关系中的的某一属属性或属属性组,若若它的值值可以唯唯一标识识关系中中的一个个元组而而又不含含有多余余的属性性,则称称该属性性或属性性组为候候选关键键字。II.主键键关系模式式中用户

11、户正使用用的候选选关键字字称为主主关键字字。III. 外关关键字若模式RR中某属属性集是是其他模模式的候候选键,那那么该属属性集对对模式RR而言就就是外关关键字。IV.超键键关系模式式中,为为唯一标标识元组组的属性性集称为为超键。n关系系模型关系模型型遵循数数据库的的3级体系系结构。u关系模模式数据库的的概念模模式定义义为关系系模式的的集合。每个关关系模式式就是记记录类型型。u关系子子模式这是对用用户所用用到的那那部分数数据的描描述。除除了指出出用户用用到的数数据外,还还应指出出数据与与模式中中相应数数据的联联系,即即指出子子模式与与模式之之间的对对应性。u关系存存储模式式(关系系内模式式)这

12、是作为为文件看看待的,每每个元组组就是一一个记录录。关系模型型有3个部分分构成:u数据结结构关系模型型采用的的数据结结构是关关系。u关系操操作关系系模型提提供一组组完备的的关系运运算,以以支持对对数据库库的各种种操作。关系运运算的理理论是关关系代数数和关系系演算。u关系系的完整整性在关系模模型中,数数据的约约束条件件通过三三类完整整性约束束条件来来描述。即:I.实实体完整整性要求关系系中的元元组的主主键值不不能是空空值。II.参照照完整性性要求在关关系中不不允许引引用不存存在的实实体。III. 用户户定义的的完整性性这是针对对某一具具体数据据的约束束条件,由由应用环环境决定定,例如如属性的的值

13、限制制。n关系代代数关系查询询语言根根据其理理论基础础的不同同分成两两大类:u关关系代数数语言:查询操操作是以以集合操操作为基基础的运运算。u关关系演算算语言:查询操操作是以以谓词演演算为基基础的运运算。其中,关关系代数数是以集集合代数数为基础础发展起起来的,它它是以关关系为运运算对象象的一组组高级运运算的集集合。关关系代数数的运算算可分为为两类:基本运算算操作:并、差差、笛卡卡尔积、投影和和选择。组合运算算操作:交、联联接、自自然联接接和除。另外,还还有几种种扩充的的关系代代数操作作:外联联接(左左外联接接和右外外联接)、外部并并和半联联接。以下对几几种常用用的关系系运算作作一个简简单的介介

14、绍。u基基本运算算1.并设有两个个关系RR和S具有相相同的关关系模式式,关系系R和S的并是是由属于于R或属于于S的元组组组成的的集合,记记为RS。形式式定义如如下:RRSttRtS2.差设有两个个关系RR和S具有相相同的关关系模式式,关系系R和S的差是是由属于于R但不属属于S的元组组组成的的集合,记记为RS。形式式定义如如下:RRSttRtS3.笛笛卡儿积积设关系RR和S元数分分别为rr和s。定义义R和S的笛卡卡儿积是是一个(r+ss)元的的元组集集合,每每个元组组的前rr个分量量来自RR的一个个元组,后后s个分量量来自SS的一个个元组,记记为RS形式定定义如下下:RStttr,tstrRts

15、S若R有mm个元组组,S有n个元组组,则RRS有(mnn)个元元组。4.投投影该操作是是对关系系进行垂垂直分割割,消去去某些列列,并重重新安排排列的顺顺序,再再删去重重复元组组。5.选择这个操作作是根据据某些条条件对关关系作水水平分割割,即选选择符合合条件的的元组。条件可可用命题题公式FF表示,FF中的运运算对象象是常数数(用引引号括起起来)或或元组分分量(属属性名或或列的序序号)。运算符符有算术术比较运运算符(,)和逻辑运算符(,)。F(RR)ttRF(tt) trrue为选择择运算符符,F(R)表示从从R中挑选选满足公公式F的元组组所构成成的集合合。常量量用引号号括起来来,而属属性号或或属

16、性名名不要用用引号括括起来。u组组合运算算1.交设有两个个关系RR和S具有相相同的关关系模式式,关系系R和S的交是是由属于于R又属于于S的元组组组成的的集合,记记为RS。形式式定义如如下:RRSttRtS2.联接(又又称联接)从关系RR和S的笛卡卡尔积中中选取属属性值之之间满足足一定条条件的元元组,记记为:RSi(i+j)(RS) ij这里R的的元数是是r,是算术术比较运运算符。RS操作是是在R和S iij的笛卡卡尔积中中挑选第第i个分量量和第(r+j)个分量满足运算的元组组成的新的关系。3.自自然联接接两个关系系R和S的自然然联接用用RS表示,具具体计算算过程如如下:A)计算算RSB)设设R

17、和S的公共共属性是是A1,A2,A3,.AAk.,挑挑选RS中满足足R.AA1=SS.A11,R.A2,.,R.Ak=S.AAk的那那些元组组C)去掉掉S.AA1,SS.A22,.S.AAkRS可用下下列形式式定义:RSi11i2,.,imm(R.AA1=SS.A11.R.AAk=SS.Akk(RS)。4.除法设两个关关系R和S的元数数分别为为r和s(rss0),那那么RS是一个个(rs)元的的元组的的集合。(RS)是满满足下列列条件的的最大关关系,其其中每个个元组tt与S中每个个元组uu组成的的新元组组必在在关系RR中。RS的的具体计计算过程程如下:A) TT=1,22,.r-ss(R)B)

18、 W=(TS)-R求出出TS中不在在R的元组组C) VV=1,22,.r-s(WW)D) RRS=TT-V因此RS1,2,.r-s (R)- 1,22,.r-ss (1,22,.r-ss (RR) S) -R )。1.5关关系数据据库SQQL语言言SQL数数据库的的数据体体系结构构SQL数数据库的的数据体体系结构构基本上上也是33级结构构,但术术语与传传统关系系模型术术语不同同。SQQL中,关关系模型型称为“基本表表”,存储储模式称称为“存储文文件”,子模模式称为为“视图”,元组组称为“行”,属性性称为“列”。SQL语语言的组组成一个SQQL数据据库是表表的汇集集,它用用一个或或多个SSQL模

19、模式定义义。一个SQQL表由由行集构构成,一一行是列列的序列列,每列列对应一一个数据据项。一个表或或者是一一个基本本表,或或者是一一个视图图。基本本表是实实际存储储在数据据库的表表,视图图是由若若干基本本表或其其他视图图构成的的表的定定义。SQL包包括了所所有对数数据库的的操作,主主要有44个部分分:数据据定义(SQL DDL)、数据操纵(SQL DML)、访问数据控制、嵌入式SQL语言的规定。SQL DDDL主要要是定义义基本表表、视图图、索引引3个部分分:基本本表的定定义、修修改、撤撤销基本表的的定义可可用“CREEATEE TAABLEE”语句实实现,增增加属性性可以用用“ALTTER.

20、AADD.”语句,删删除属性性可以用用“ALTTER.DDROPP.”语句;删除已已存在的的表可用用“DROOP TTABLLE.”语语句。视图的的定义和和撤销视图的定定义可以以用CRREATTE VIEEW语句句实现。视图的的撤消可可以用DDROPP VVIEWW语句实实现。索引的的定义和和撤销索引的定定义可以以用CRREATTE ,用用DROOP撤销销。SQLL DMML 数数据查询询语句SQL的的查询语语句只有有SELLECTT语句。SELLECTT查询语语句在关系代代数中最最常用的的式子是是“投影选选择联接接表达式式”:A1,A2,.Ann(F(R11R2.Rm),这这里R11,R2,

21、.Rm为为基本表表,F是公式式,A11,A2,.An为为属性。针对这这个表达达式,SSQL 设计了了SELLECTT句型:SELCCET AA1,AA2,.AAnFROMM RR1,RR2,.RRmWHERRE F在WHEERE子子句的条条件表达达式F中可出出现下列列操作符符和运算算特点:算术比比较符、逻辑运运算符、集合运运算符、集合成成员资格格运算符符、谓词词和聚合合函数。库函数数 CCOUNNT(*) 计算算元组的的个数COOUNTT(列名名) 对对某一列列中的值值计算个个数。 SSUM(列名) 求某某一列值值的总和和 AAVG(列名) 求求某一列列值的平平均值 MMAX(列名) 求某某一

22、列值值中的最最大值 MMIN(列名) 求求某一列列值中的的最小值值SELLECTT语句完完整的句句法SELEECT 目目标表的的列名或或列表达达式序列列FROMM 基本表表或(和)视图序序列WHEERE行条件件表达式式GROOUT BY 列名序序列HAVVINGG组条件件表达式式DRDDER BY 列名序.前两个句句子是必必不可少少的,后后面的44个句子子可以缺缺省。整整个语句句的语义义如下:从FRROM子子句中列列出的表表,选取取满足WWHERRE子句句中给出出的行条条件表达达式的元元组,然然后按GGROUUP子句句(分组组子句)中中指定列列的值分分组,再再提取满满足HAAVINNG子句句中

23、组条条件表达达式的那那些组,按按SELLECTT子句给给出的列列名或列列表达式式求值输输出。OORDEER子句句(排序序子句)是是对输出出的目标标表进行行排序,可可附加说说明ASSC(升升序)或或DESSC(降降序)SQLL DMML的数数据更新新语句INSEERT 插插入语句句DELEETE 删删除语句句UPDAATE 修修改语句句SQLL的访问问控制SQL的的访问控控制功能能主要是是指对用用户访问问数据的的控制。有授权权语句和和回收语语句。授权语句句的格式式如下:GRANNT 权权限表ON 表表名TO 用用户名表表WITTH GGRANNT OOPTIION该语句把把表的使使用权授授予指定

24、定的若干干用户。在有WWITHH GRRANTT OPPTIOON短语语时,被被授权的的用户还还可将获获得的权权限再转转授给其其他用户户。权限限表中的的权限可可以有:SELLECTT, IINSEERT, DEELETTE, UPDDATEE, EEXPAAND, INNDEXX, AALL PRIIVILLEGEES。回收语句句格式:REVOOKE 权限限表ON 表表名FROMM 用户户名表该语句把把已授给给指定用用户的在在指定表表上的使使用权限限收回。嵌入式式SQLL由于SQQL是基基于关系系模型的的语言,而而高级语语言是基基于整数数、实数数、字符符、记录录、数组组等的数数据类型型,因此此

25、两者之之间有很很大的区区别,称称为有缝缝隙。为为了能在在宿主语语言的程程序中嵌嵌入SQQL语句句,有一一些规定定:I.在程程序中要要区分SSQL语语句和宿宿主语言言的语句句;II.在在嵌入的的SQLL语句中中可以引引用宿主主语言的的程序变变量,但但主语言言的语句句不能引引用数据据库中的的各种变变量(属属性名、关系名名),SSQL的的集合处处理方式式与宿主主语言的的单记录录处理方方式之间间的协调调用游标标技术实实现。1.6 数据库库设计数据库应应用系统统的开发发是一项项软件工工程,但但又有自自身的特特点,所所以称为为“数据库库工程”。数据据库系统统从开始始规划、设计、实现、维护到到最后被被新的系

26、系统取代代而停止止使用的的整个期期间,称称为数据据库系统统生存期期。此生生存期可可分为77个阶段段:规划划、需求求分析、概念设设计、逻逻辑设计计、物理理设计、实现、运行和和维护。按照规范范设计的的方法,考考虑数据据库及其其应用系系统开发发全过程程,将数数据库设设计分为为以下六六个阶段段:需求分分析阶段段需求收集集和分析析,结果果得到数数据字典典描述的的数据需需求(和和数据流流图描述述的处理理需求)。概念结结构设计计阶段通过对用用户需求求进行综综合、归归纳与抽抽象,形形成一个个独立于于具体DDBMSS的概念念模型,可可以用EE-R图图表示。逻辑结结构设计计阶段将概念结结构转换换为某个个DBMMS

27、所支支持的数数据模型型(例如如关系模模型),并并对其进进行优化化。数据库库物理设设计阶段段为逻辑数数据模型型选取一一个最适适合应用用环境的的物理结结构(包包括存储储结构和和存取方方法)。数据库库实施阶阶段运用DBBMS提提供的数数据语言言(例如如SQLL)及其其宿主语语言(例例如C),根根据逻辑辑设计和和物理设设计的结结果建立立数据库库,编制制与调试试应用程程序,组组织数据据入库,并并进行试试运行。数据库库运行和和维护阶阶段数据库应应用系统统经过试试运行后后即可投投入正式式运行。在数据据库系统统运行过过程中必必须不断断地对其其进行评评价、调调整与修修改。设计一个个完善的的数据库库应用系系统不可

28、可能一蹴蹴而就,它它往往是是上述六六个阶段段的不断断反复。1.7关关系数据据库规范范化理论论为了使数数据库设设计的方方法走向向完备,人人们研究究了规范范化理论论,指导导我们设设计规范范的数据据库模式式。按属属性间依依赖情况况来区分分,关系系规范化化的程度度为第一一范式、第二范范式、第第三范式式、BCCNF范范式和第第四范式式等。函数依赖赖数据依赖赖是现实实世界中中属性间间联系和和约束的的抽象,是是数据的的内在性性质。函数依赖赖(fuuncttionnal deppenddenccy,FD )是一一种最重重要、最最基本的的数据依依赖。其其具体定定义如下下:设有关系系模式RR(U),X和Y是属性性

29、集U的子集集,FDD是行为为XY的一个个命题,只只要r是R的关系系,对rr中任意意两个元元组都有有“X值相等等蕴涵YY值相等等”,那么么函数依依赖XY在关系系模式RR(U)中成成立。FD与侯侯选键之之间的关关系:若若存在XX-UU,并且且不存在在X的任意意真子集集X1,使使得X11-UU成立,那那么就称称X为关系系的一个个侯选键键。函数依赖赖还有几几条推理理规则:自反性;增广性性;传递递性;并并规则;分解规规则;伪伪传递规规则;模式分分解:目目的是消消除冗余余和操作作异常问问题模式分解解的三个个定义:l 分解具具有“无损连连接性”l 分解要要“保持函函数依赖赖”l 分解既既要“保持函函数依赖赖

30、”,又要要具有“无损连连接性”。关系模式式分解的的两个特特性实际际涉及到到两个数数据库模模式的等等价性问问题。包包括数据据等价和和依赖等等价两个个方面:数据等价价:两个个数据库库实例应应表示同同样的信信息内容容,用“无损联联接”衡量。依赖等价价:两个个数据库库模式应应有相互互逻辑关关系的函函数依赖赖集,此此时数据据的语义义是不会会出现差差错的。例:关系系模式 S-LL-C(SNOO,SDEEPT,SLOOC,CNOO,G)中,SLLOC为为学生的的住处,并并且每个个系的学学生住在在同一个个地方。这里码为为(SNNO,CCNO)。函数数依赖有有:(SNOO,CNNO) G SNOSDEEPT,(

31、SNOO,CNNO) SDEEPT SNOOSLOOC,(SNOO,CNNO) SLOOCSDEPPTSLOOC用投影分分解把关关系模式式S-LL-C分分解为33NF范范式,且且保持函函数依赖赖。解法:对RU,FF中的的函数依依赖集FF进行“极小化化处理”。F= SNNO,CCNOG,SNOOSDEEPT,SDEEPTSLOOC 。 R中中没有不不在F中出现现的属性性。不存在在XAF,且XAA=U,接接着做第第 = 4 * GGB2 步。对F按按具有相相同左部部的原则则分组。r=SSC SNOO,CNNO,GG ,SNOO,CNNOG,S-DD SSNO,SDEEPT , SNOOSDEEPT

32、,D-L SSDEPPT,SSLOCC , SDDEPTTSLOOC范式范式(nnormmal forrm,NF)是是衡量关关系模式式的优劣劣的标准准。范式式有很多多种,与与数据依依赖有着着直接的的联系。第一范式式1NFF如果关系系模式RR中,每每个分量量是不可可分的数数据项,就就称R属于第第一范式式。第二范式式2NFF若关系模模式R属于1NNF,且且每个非非主属性性完全函函数依赖赖于候选选关键字字,则称称R属于第第二范式式。第三范式式3NFF若关系模模式R属于1NNF,且且每个非非主属性性都不传传递依赖赖于R的候选选关键字字,则称称R属于第第三范式式。这里的主主属性是是指键的的属性,而而不是

33、任任何键的的属性就就是非主主属性BC范式式BCNNF若关系模模式R属于1NNF,且且每个属属性都不不传递依依赖于RR的候选选关键字字,则称称R属于BCC范式。由上可知知,4种范式式之间的的关系:BCNNF33NF2NFF1NNF1.8数数据库保保护n概概述在数据库库系统运运行时,DBMS要对数据库进行监控,以保证整个系统的正常运转,保证数据库中的数据安全可靠、正确有效,防止各种错误的产生,这就是对数据库的保护,有时也称为“数据控制”。这具体包括以下四个方面:u数数据库的的恢复u完完整性控控制(主主键约束束,外键键约束,属属性的值值域约束束)u并并发控制制(琐机机制)u安安全性控控制(存存储控制

34、制,审计计,视图图保护和和日志监监视)n事务事务务在数据据库里面面是一个个十分重重要的概概念。数数据库系系统运行行的基本本工作单单位是事事务。它它相当于于操作系系统中的的进程,一一个事务务由应用用程序中中的一组组操作序序列组成成。实际上,事事务可以以看作是是一个原原子,是是一个不不可分割割的操作作序列。事务中中包括的的所有操操作要么么都执行行,要么么都不执执行。事务通常常以BEEGINN TRRANSSACTTIONN语句开开始,它它主要涉涉及两个个语句。、u事事务提交交语句CCOMMMITu事事务回滚滚语句RROLLLBACCK事务的特特性:事务具有有四个特特性:原原子性(Atomicity

35、)、一致性(Consistency)、隔离性(Isolation)和持续性(Durability)。这个四个特性也简称为ACID特性。1原子子性:事事务是数数据库的的逻辑工工作单位位,事务务中包括括的诸操操作要么么都做,要要么都不不做。2一致致性:事事务执行行的结果果必须是是使数据据库从一一个一致致性状态态变到另另一个一一致性状状态。因因此当数数据库只只包含成成功事务务提交的的结果时时,就说说数据库库处于一一致性状状态。如如果数据据库系统统运行中中发生故故障,有有些事务务尚未完完成就被被迫中断断,系统统将事务务中对数数据库的的所有已已完成的的操作全全部撤消消,滚回回到事务务开始时时的一致致状态

36、。3隔离离性:一一个事务务的执行行不能被被其他事事务干扰扰。即一一个事务务内部的的操作及及使用的的数据对对其他并并发事务务是隔离离的,并并发执行行的各个个事务之之间不能能互相干干扰。4持续续性:持持续性也也称永久久性(PPermmaneencee),指指一个事事务一旦旦提交,它它对数据据库中数数据的改改变就应应该是永永久性的的。接下下来的其其他操作作或故障障不应该该对其执执行结果果有任何何影响。数据库恢恢复:尽管数据据库系统统中采取取了各种种保护措措施来防防止数据据库的安安全性和和完整性性被破坏坏,保证证并发事事务的正正确执行行,但是是计算机机系统中中硬件的的故障、软件的的错误、操作员员的失误

37、误以及恶恶意的破破坏仍是是不可避避免的,这这些故障障轻则造造成运行行事务非非正常中中断,影影响数据据库中数数据的正正确性,重重则破坏坏数据库库,使数数据库中中全部或或部分数数据丢失失,因此此数据库库管理系系统(恢恢复子系系统)必必须具有有把数据据库从错错误状态态恢复到到某一已已知的正正确状态态(亦称称为一致致状态或或完整状状态)的的功能,这这就是数数据库的的恢复。故障的种种类:一、事务务内部的的故障事务务内部的的故障有有的是可可以通过过事务程程序本身身发现的的(见下下面转帐帐事务的的例子),有有的是非非预期的的,不能能由事务务程序处处理的。二、系统统故障系统统故障是是指造成成系统停停止运转转的

38、任何何事件,使使得系统统要重新新启动。例如,特特定类型型的硬件件错误(CPU故障)、操作系统故障、DBMS代码错误、突然停电等等。这类故障影响正在运行的所有事务,但不破坏数据库。这时主存内容,尤其是数据库缓冲区(在内存)中的内容都被丢失,所有运行事务都非正常终止。发生系统故障时,一些尚未完成的事务的结果可能已送入物理数据库,有些已完成的事务可能有一部分甚至全部留在缓冲区,尚未写回到磁盘上的物理数据库中,从而造成数据库可能处于不正确的状态。为保证数据一致性,恢复子系统必须在系统重新启动时让所有非正常终止的事务回滚,强行撤消(UNDO)所有未完成事务。重做(Redo)所有已提交的事务,以将数据库真

39、正恢复到一致状态。三、介质质故障系统统故障常常称为软软故障(Soft Crash),介质故障称为硬故障(Hard Crash)。硬故障指外存故障,如磁盘损坏、磁头碰撞,瞬时强磁场干扰等。这类故障将破坏数据库或部分数据库,并影响正在存取这部分数据的所有事务。这类故障比前两类故障发生的可能性小得多,但破坏性最大。四、计算算机病毒毒计算算机病毒毒是具有有破坏性性、可以以自我复复制的计计算机程程序。计计算机病病毒已成成为计算算机系统统的主要要威胁,自自然也是是数据库库系统的的主要威威胁。因因此数据据库一旦旦被破坏坏仍要用用恢复技技术把数数据库加加以恢复复。恢复策略略:1事务务故障的的恢复事事务故障障是

40、指事事务在运运行至正正常终止止点前被被中止,这这时恢复复子系统统应利用用日志文文件撤消消(UNNDO)此此事务已已对数据据库进行行的修改改。事务务故障的的恢复是是由系统统自动完完成的,对对用户是是透明的的。系统统的恢复复步骤是是:. 反反向扫描描文件日日志(即即从最后后向前扫扫描日志志文件),查查找该事事务的更更新操作作。. 对对该事务务的更新新操作执执行逆操操作。即即将日志志记录中中“更新前前的值”写入数数据库。这样,如如果记录录中是插插入操作作,则相相当于做做删除操操作(因因此时“更新前前的值”为空)。若记录录中是删删除操作作,则做做插入操操作,若若是修改改操作,则则相当于于用修改改前值代

41、代替修改改后值。. 继继续反向向扫描日日志文件件,查找找该事务务的其他他更新操操作,并并做同样样处理。. 如如此处理理下去,直直至读到到此事务务的开始始标记,事事务故障障恢复就就完成了了。 2系统统故障的的恢复前面面已讲过过,系统统故障造造成数据据库不一一致状态态的原因因有两个个,一是是未完成成事务对对数据库库的更新新可能已已写入数数据库,二二是已提提交事务务对数据据库的更更新可能能还留在在缓冲区区没来得得及写入入数据库库。因此此恢复操操作就是是要撤消消故障发发生时未未完成的的事务,重重做已完完成的事事务。系统统故障的的恢复是是由系统统在重新新启动时时自动完完成的,不不需要用用户干预预。系统的

42、恢恢复步骤骤是:. 正正向扫描描日志文文件(即即从头扫扫描日志志文件),找找出在故故障发生生前已经经提交的的事务(这这些事务务既有BBEGIIN TTRANNSACCTIOON记录录,也有有COMMMITT记录),将将其事务务标识记记入重做做(REEDO)队队列。同同时找出出故障发发生时尚尚未完成成的事务务(这些些事务只只有BEEGINN TRRANSSACTTIONN记录,无无相应的的COMMMITT记录),将将其事务务标识记记入撤消消(UNNDO)队列。. 对对撤消队队列中的的各个事事务进行行撤消(UNDDO)处处理。进行UNNDO处处理的方方法是,反反向扫描描日志文文件,对对每个UUND

43、OO事务的的更新操操作执行行逆操作作,即将将日志记记录中“更新前前的值”写入数数据库。. 对对重做队队列中的的各个事事务进行行重做(REDDO)处处理。进行行REDDO处理理的方法法是:正正向扫描描日志文文件,对对每个RREDOO事务重重新执行行日志文文件登记记的操作作。即将将日志记记录中“更新后后的值”写入数数据库。3介质质故障的的恢复发生生介质故故障后,磁磁盘上的的物理数数据和日日志文件件被破坏坏,这是是最严重重的一种种故障,恢恢复方法法是重装装数据库库,然后后重做已已完成的的事务。具体地地说就是是:. 装装入最新新的数据据库后备备副本(离离故障发发生时刻刻最近的的转储副副本),使使数据库库恢复到到最近一一次转储储时的一一致性状状态。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理手册

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁