第2章_ORACLE11g简介

上传人:s9****2 文档编号:579343604 上传时间:2024-08-26 格式:PPT 页数:48 大小:754KB
返回 下载 相关 举报
第2章_ORACLE11g简介_第1页
第1页 / 共48页
第2章_ORACLE11g简介_第2页
第2页 / 共48页
第2章_ORACLE11g简介_第3页
第3页 / 共48页
第2章_ORACLE11g简介_第4页
第4页 / 共48页
第2章_ORACLE11g简介_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《第2章_ORACLE11g简介》由会员分享,可在线阅读,更多相关《第2章_ORACLE11g简介(48页珍藏版)》请在金锄头文库上搜索。

1、第第2章章ORACLE 11g简介介本章学习内容本章学习内容2.1 2.1 Oracle 11gOracle 11g产品版本概述产品版本概述2.2 Oracle 11g2.2 Oracle 11g特性特性2.3 Oracle 11g2.3 Oracle 11g体系结构体系结构OracleOracle数据库是数据库是OracleOracle(中文名称叫甲骨文)公司的(中文名称叫甲骨文)公司的核心产品,核心产品,OracleOracle数据库是一个适合于大中型企业的数据库是一个适合于大中型企业的数据库管理系统。在所有的数据库管理系统中,数据库管理系统。在所有的数据库管理系统中,OracleOrac

2、le的主要用户涉及面非常广,包括:银行、电信、的主要用户涉及面非常广,包括:银行、电信、移动通信、航空、保险、金融、电子商务和跨国公司移动通信、航空、保险、金融、电子商务和跨国公司等。等。OracleOracle系统主要由系统主要由Oracle databaseOracle database和和Oracle application Oracle application serverserver两大拳头产品以及两大拳头产品以及OracleOracle管理程序包等其他产品组管理程序包等其他产品组成。成。2.12.1 Oracle 11gOracle 11g产品版本概述产品版本概述针对不同的组织和个

3、人对数据库性能、价格的不针对不同的组织和个人对数据库性能、价格的不同需求,同需求,OracleOracle数据库数据库 11g11g提供了提供了4 4个版本,即标个版本,即标准版准版1 1、标准版、企业版与个人版。、标准版、企业版与个人版。标准版标准版1 1:最基础的版本,包括基本的数据库:最基础的版本,包括基本的数据库功能,仅许可在最高容量为两个处理器的服务功能,仅许可在最高容量为两个处理器的服务器上使用。器上使用。标准版:除了包含标准版标准版:除了包含标准版1 1的易用性、能力和的易用性、能力和性能外,还利用了性能外,还利用了RACRAC(真正应用集群)提供了(真正应用集群)提供了对更大型

4、的计算机和服务集群的支持。支持最对更大型的计算机和服务集群的支持。支持最多多4 4个处理器的服务器集群。个处理器的服务器集群。2.1.1 Oracle 11g版版本本简简介介企业版:为关键任务的应用程序提供高效、可企业版:为关键任务的应用程序提供高效、可靠、安全的数据管理,企业版可以运行在靠、安全的数据管理,企业版可以运行在WindowsWindows、LinuxLinux和和UNIXUNIX的集群服务器或单一服的集群服务器或单一服务器上,包含了务器上,包含了OracleOracle数据库的所有组件。数据库的所有组件。个人版:只提供个人版:只提供 OracleOracle作为作为DBMSDBM

5、S的基本数据的基本数据管理服务,适用于单用户开发环境,对系统配管理服务,适用于单用户开发环境,对系统配置要求也较低,主要面向开发技术人员使用。置要求也较低,主要面向开发技术人员使用。2.1.1 Oracle 11g版版本本简简介介OracleOracle还提供了具有先进技术的可选产品,这些技术能够满足关还提供了具有先进技术的可选产品,这些技术能够满足关键任务的联机事务处理系统键任务的联机事务处理系统(OLTP)(OLTP) 、数据仓库和互联网应用程序环、数据仓库和互联网应用程序环境最苛刻的开发和部署需求。境最苛刻的开发和部署需求。OracleOracle真正应用集群真正应用集群( (RACRA

6、C, Real Application Cluster), Real Application Cluster)RACRAC是通过集群技术来利用多个互连的计算机处理能力的计算环境。是通过集群技术来利用多个互连的计算机处理能力的计算环境。OracleOracle分区分区它为大型的底层数据库表和索引增加了重要的可管理性、可用性它为大型的底层数据库表和索引增加了重要的可管理性、可用性和性能,从而增加了数据管理环境。和性能,从而增加了数据管理环境。2.1.2 Oracle 11g可可选选产产品品概概述述OracleOracle高级安全性(高级安全性(ASOASO)它为它为OracleOracle数据库提

7、供了网络加密的一整套功能强大的验证服务,数据库提供了网络加密的一整套功能强大的验证服务,验证包括验证包括OracleOracle数据库的单点登录服务。数据库的单点登录服务。Oracle OLAPOracle OLAP(联机分析处理)(联机分析处理)它是一个可伸缩、高性能的计算引擎,它为开发分析应用程序提它是一个可伸缩、高性能的计算引擎,它为开发分析应用程序提供了完全集成的管理。供了完全集成的管理。OracleOracle数据挖掘数据挖掘它允许公司构建高级商务智能应用程序,这些应用程序能够挖掘它允许公司构建高级商务智能应用程序,这些应用程序能够挖掘企业数据库,洞察新的问题,并将这些信息集成到商务

8、应用程序用。企业数据库,洞察新的问题,并将这些信息集成到商务应用程序用。2.1.2 Oracle 11g可可选选产产品品概概述述OracleOracle空间数据库(空间数据库(Oracle spatialOracle spatial)它允许用户和应用程序开发人员将他们的空间数据紧密集成到它允许用户和应用程序开发人员将他们的空间数据紧密集成到企业应用程序中。企业应用程序中。Oracle ProgrammerOracle Programmer它是一个单独的它是一个单独的OracleOracle产品,为构建访问和操作产品,为构建访问和操作Oracle Oracle DataBaseDataBase

9、11g 11g的企业应用程序的开发人员提供了一组丰富的接的企业应用程序的开发人员提供了一组丰富的接口。口。2.1.2 Oracle 11g可可选选产产品品概概述述Oracle 11g Oracle 11g 通过新的特性和数据库优化保持了它的通过新的特性和数据库优化保持了它的数据库性能领先的记录。数据库性能领先的记录。网格计算数据库网格计算数据库网格计算网格计算(Grid Computing)(Grid Computing):是指将大量服务器和是指将大量服务器和存储设备作为一台计算机进行协调使用。存储设备作为一台计算机进行协调使用。网格计算的目的:网格计算的目的:提高或拓展企业内所有计算资源的提

10、高或拓展企业内所有计算资源的效率和利用率,以更低的成本、更高质量的服务和更效率和利用率,以更低的成本、更高质量的服务和更大的灵活性满足用户的需求。大的灵活性满足用户的需求。网格计算的资源管理:网格计算的资源管理:基础资源:构成数据存储和程序执行环境的软件和基础资源:构成数据存储和程序执行环境的软件和硬件。硬件。应用程序:业务逻辑和处理流程的编码。应用程序:业务逻辑和处理流程的编码。信息:用户需要的数据。信息:用户需要的数据。2.22.2 Oracle 11gOracle 11g特性特性网格计算数据库网格计算数据库网格计算能力包括:网格计算能力包括:服务器虚拟服务器虚拟RACRAC可以使一个数据

11、库运行在网可以使一个数据库运行在网络的多个节点上,将资源集中使用。络的多个节点上,将资源集中使用。存储虚拟存储虚拟ASMASM提供了保证数据库在线的情况提供了保证数据库在线的情况下,磁盘可以动态加载或删除。下,磁盘可以动态加载或删除。网格管理网格管理将多系统集成管理为一个逻辑组将多系统集成管理为一个逻辑组的控制台,可以管理网格中独立的节点,集中的控制台,可以管理网格中独立的节点,集中维护各组系统的配置和安全设置。维护各组系统的配置和安全设置。2.22.2 Oracle 11gOracle 11g特性特性可管理性可管理性自动诊断知识库自动诊断知识库 OracleOracle探测到系统发生错误时,

12、会自动创建探测到系统发生错误时,会自动创建 一个事件,一个事件,并且捕捉到和这个事件相关的信息,同时进行自动化数并且捕捉到和这个事件相关的信息,同时进行自动化数据库检查并通知据库检查并通知DBADBA。事件打包服务事件打包服务 当用户需要进行进一步测试或保留信息时,用此服务与当用户需要进行进一步测试或保留信息时,用此服务与某一个事件的信息打包,并且还可以将打包的信息发给某一个事件的信息打包,并且还可以将打包的信息发给OracleOracle团队,得到相关技术支持。团队,得到相关技术支持。自动地基于磁盘备份与恢复自动地基于磁盘备份与恢复 简化了备份和恢复操作。备份调度成自动化操作,自动简化了备份

13、和恢复操作。备份调度成自动化操作,自动化优化调整。备份失败时可以自动重启,确保化优化调整。备份失败时可以自动重启,确保OracleOracle能能够有一个一致的环境。够有一个一致的环境。2.22.2 Oracle 11gOracle 11g特性特性可管理性可管理性应用优化应用优化在在Oracle 11gOracle 11g中,用户可让中,用户可让OracleOracle自动将自动将3 3倍于原有性能的倍于原有性能的ProfileProfile应用到应用到SQLSQL语句上。语句上。计划管理计划管理允许用户将某一特定语句的查询计划固定下来,不管统计的数允许用户将某一特定语句的查询计划固定下来,不

14、管统计的数据变化或是数据库版本变化都不会影响、改变查询计划。据变化或是数据库版本变化都不会影响、改变查询计划。自动化内存调整自动化内存调整Oracle Oracle 11g11g数数据据库库管管理理员员只只需需要要对对内内存存参参数数进进行行配配置置就就可可实实现现全全表表的的自自动动优优化化,用用户户只只需需要要知知道道可可用用的的总总的的内内存存数数量量和和共共享享区区的的大大小小,就就可可以以自自动动完完成成对对PGAPGA、SGASGA和和操操作作系系统统的的进进程程的的内内存存分分配。配。2.22.2 Oracle 11gOracle 11g特性特性高可用性的加强高可用性的加强缩短应

15、用和数据库升级的时间缩短应用和数据库升级的时间闪回闪回( (FlashBackFlashBack) )错误能力错误能力优化优化PL/SQLPL/SQLSQLSQL新语法新语法新的新的PL/SQLPL/SQL数据类型数据类型ContinueContinue关键字关键字2.22.2 Oracle 11gOracle 11g特性特性从从可可观观察察的的体体系系结结构构上上讲讲,完完整整的的Oracle Oracle 数数据据库库包包括括数数据据库库(DB)(DB)及及其其专专门门用用来来管管理理它它的的数数据据库库管管理理系系统统(DBMS)(DBMS)两两大大部部分分。分分别别与与其其对对应应的的

16、是是存存储储结结构和软件结构。构和软件结构。体体系系结结构构存储结构存储结构软件结构软件结构物理存储结构物理存储结构逻辑存储结构逻辑存储结构进程结构进程结构内存结构内存结构既相互独立既相互独立又相互联系又相互联系图图2-1:数据库的体系结构:数据库的体系结构2.32.3 Oracle 11gOracle 11g体系结构体系结构数据库的主要功能是保存数据,换言之,数据库可以数据库的主要功能是保存数据,换言之,数据库可以看作是保存数据的容器。看作是保存数据的容器。数据库的存储结构就是数据库存储数据的方式。数据库的存储结构就是数据库存储数据的方式。OracleOracle数据库把数据存储在文件中,这

17、些保存数据库数据库把数据存储在文件中,这些保存数据库不同信息的文件组成了不同信息的文件组成了OracleOracle的物理结构。的物理结构。为了便于用户对数据库进行访问,为了便于用户对数据库进行访问,OracleOracle将数据库按将数据库按照规定的结构划分为不同级别的逻辑单元。这里指的照规定的结构划分为不同级别的逻辑单元。这里指的逻辑单元包括表、视图等常见的数据库组件。逻辑单元包括表、视图等常见的数据库组件。逻辑存储结构和物理存储结构是分离的,对物理存储逻辑存储结构和物理存储结构是分离的,对物理存储结构的管理可以不影响对逻辑存储结构的访问。结构的管理可以不影响对逻辑存储结构的访问。2.3.

18、1 数数据据库库的的存存储储结结构构数据库数据库数据文件物理结构物理结构控制文件重做日志文件物理块(OS块)数据块(Data Block)表空间(Tablespace)逻辑结构逻辑结构区(Extent)段(Segment)大小存储粒度图图2-2:Oracle 11g的存储结构的存储结构OracleOracle数据库的逻辑存储结构主要用于描述数据库的逻辑存储结构主要用于描述OracleOracle内部组织和管理数据的方式。它是内部组织和管理数据的方式。它是OracleOracle数据库存数据库存储结构的核心内容,对储结构的核心内容,对OracleOracle数据库的所有操作都数据库的所有操作都会

19、涉及到其逻辑存储结构。会涉及到其逻辑存储结构。数据库的逻辑结构是从逻辑的角度分析数据库的组数据库的逻辑结构是从逻辑的角度分析数据库的组成。它包括方案成。它包括方案(Schema)(Schema)、数据块、数据块(Data Block)(Data Block)、区间区间(Extent)(Extent)、段、段(Segment)(Segment)、表、表(Table)(Table)和表空间和表空间( (TablespaceTablespace) )等。等。数据库由若干个表空间组成,表空间由又由多个段数据库由若干个表空间组成,表空间由又由多个段组成,段由区间组成,区间则由数据块组成。组成,段由区间组

20、成,区间则由数据块组成。2.3.1.1 数数据据库库的的逻逻辑辑存存储储结结构构1. 方案方案方方案案是是用用户户使使用用的的一一系系列列数数据据库库对对象象的的集集合合。一一个个用用户户一一般般对对应应一一个个方方案案,该该用用户户的的方方案案名名等等于用户名,并作为该用户的默认方案。于用户名,并作为该用户的默认方案。1. 方案方案方案对象直接处理数据库数据的逻辑结构,如:方案对象直接处理数据库数据的逻辑结构,如:表表(Table)(Table)数数据据库库中中最最常常用用的的数数据据存存储储单单元元,是是包含数据库中所有数据的数据库对象。包含数据库中所有数据的数据库对象。视视图图(View

21、)(View)虚虚拟拟的的表表,视视图图可可以以把把表表或或其其他他视视图图的的数数据据按按照照一一定定的的条条件件组组合合起起来来。视视图图不不包包含含数数据据,它只是从基表中读取数据。它只是从基表中读取数据。索索引引(Index)(Index)是是一一种种可可选选的的数数据据结结构构,在在表表中中的的某某些些字字段段建建立立索索引引,能能够够显显著著地地提提高高对对该该表表的的查查询询速速度度,提提高高读读取取数数据据的的效效率率,减减少少查查询询时时的的硬硬盘盘I/OI/O操作。操作。聚聚簇簇(Clusters)(Clusters)有有一一些些表表共共享享公公共共列列,并并经经常常被被同

22、同时时访访问问,为为了了提提高高数数据据存存取取效效率率,把把这这些些表表在在物物理上存储在一起,得到的表的组合叫做簇。理上存储在一起,得到的表的组合叫做簇。2.数据数据块数数据据块块是是OracleOracle管管理理数数据据库库存存储储空空间间的的最最小小数数据据存储单位,又称逻辑块或存储单位,又称逻辑块或OracleOracle块。块。一一个个数数据据块块对对应应磁磁盘盘上上一一定定数数量量的的数数据据库库空空间间,标标准准的的数数据据块块大大小小由由初初始始参参数数DB_BLOCK_SIZEDB_BLOCK_SIZE指指定定,大小一般是操作系统块大小的整数倍。大小一般是操作系统块大小的

23、整数倍。因此,数据块既是逻辑单位,也是物理单位。因此,数据块既是逻辑单位,也是物理单位。2.数据数据块数数据据块块包包括括:公公共共的的变变长长头头、表表目目录录、行行目目录录、空闲空间、行数据。空闲空间、行数据。数据块头表目录区行目录区可用空间区行数据区图图2-4:数据块的格式:数据块的格式2.数据数据块公共的变长头公共的变长头存放数据块的基本信息,如地址块的物理地址和块所属的段类型等。存放数据块的基本信息,如地址块的物理地址和块所属的段类型等。表目录表目录存放在此块中有行数据的表的信息。存放在此块中有行数据的表的信息。行目录行目录包含此块中实际行数据的信息,是已被数据行占用的空间。包含此块

24、中实际行数据的信息,是已被数据行占用的空间。空闲空间空闲空间是是一一个个块块中中未未使使用用的的区区域域。插插入入新新行行时时需需要要存存储储空空间间,更更新新数数据据也也可能造成存储空间的增加,这些存储空间都需要从空闲空间中分配。可能造成存储空间的增加,这些存储空间都需要从空闲空间中分配。行数据行数据包包含含表表或或索索引引数数据据。行行数数据据的的存存储储可可以以跨跨越越数数据据块块,一一行行数数据据块可分别存储在不同的数据块中。块可分别存储在不同的数据块中。3.区区间区间是数据库存储空间中分配的一个逻辑单元,区间是数据库存储空间中分配的一个逻辑单元,由一组相邻的数据块组成,它是由一组相邻

25、的数据块组成,它是OracleOracle分配磁盘分配磁盘空间的最小单位。空间的最小单位。区间是为数据一次性预留的一个较大的存储空间,区间是为数据一次性预留的一个较大的存储空间,直到那个区间被用满,数据库会继续申请一个新直到那个区间被用满,数据库会继续申请一个新的预留存储空间,即新区间,一直到段的最大区的预留存储空间,即新区间,一直到段的最大区间数或者是没有可用的磁盘空间可以申请。间数或者是没有可用的磁盘空间可以申请。4.段段一个表空间可以有多个段,而一个段只能属于一一个表空间可以有多个段,而一个段只能属于一个表空间。个表空间。段是由许多个区间组成,它是一个独立的逻辑存段是由许多个区间组成,它

26、是一个独立的逻辑存储结构。如果段中的区间用完了,储结构。如果段中的区间用完了,OracleOracle可以自可以自动为它分配新的区间。段中的区间可以是连续的,动为它分配新的区间。段中的区间可以是连续的,也可以是不连续的。也可以是不连续的。Oracle 11gOracle 11g数据库有数据库有4 4种类型的段,分别为:数据种类型的段,分别为:数据段、索引段、临时段和回滚段。段、索引段、临时段和回滚段。4.段段数据段数据段(Data Segment)(Data Segment):存储表中所有的数据。用户创建表的同时存储表中所有的数据。用户创建表的同时OracleOracle将为表创建数据段。将为

27、表创建数据段。在表空间中创建多少个表,该表空间就有相同数量的数据段,并且数在表空间中创建多少个表,该表空间就有相同数量的数据段,并且数据段的名称与它对应的表名相同。据段的名称与它对应的表名相同。索引段索引段(Index Segment)(Index Segment):存储表中最佳查询的所有索引数据。在使用存储表中最佳查询的所有索引数据。在使用Create IndexCreate Index语句创建语句创建索引时或在定义约束时自动创建索引,索引时或在定义约束时自动创建索引,OracleOracle都将会为该索引创建它都将会为该索引创建它的索引段。的索引段。临时段临时段(Temporary Seg

28、ment)(Temporary Segment):存储表查询排序操作期间建立的临时表中的数据。用户在执行查询存储表查询排序操作期间建立的临时表中的数据。用户在执行查询数据操作时,数据操作时,OracleOracle会专门为其分配临时段。会专门为其分配临时段。回滚段回滚段(Rollback Segment)(Rollback Segment):存储修改之前的位置和值。利用这些信息,可以撤销未提交的操作。存储修改之前的位置和值。利用这些信息,可以撤销未提交的操作。对于回滚段的管理是由对于回滚段的管理是由OracleOracle自动完成的。自动完成的。 5.表空表空间数据库可以划分为若干的逻辑存储单

29、元,这些存数据库可以划分为若干的逻辑存储单元,这些存储单元被称为表空间。储单元被称为表空间。每个数据库都至少有一个系统表空间(称为每个数据库都至少有一个系统表空间(称为SYSTEMSYSTEM表空间)。表空间)。在创建表时,需要定义保存表的表空间。在创建表时,需要定义保存表的表空间。表空间是最大的逻辑单位,对应一个或多个数据表空间是最大的逻辑单位,对应一个或多个数据文件,表空间的大小是它所对应的数据文件大小文件,表空间的大小是它所对应的数据文件大小的总和。的总和。5.表空表空间Oracle 11gOracle 11g包含以下几种表空间:包含以下几种表空间:(1)(1)大文件表空间大文件表空间它

30、只能放置一个数据文件但其数据文件可以包括它只能放置一个数据文件但其数据文件可以包括4G4G个数据块,如果个数据块,如果每个数据块的大小是每个数据块的大小是8K8K,那么大文件表空间可以达到,那么大文件表空间可以达到32T32T。啊。啊(2)SYSTEM(2)SYSTEM表空间表空间又称字典表空间。当数据库创建时,又称字典表空间。当数据库创建时,SYSYEMSYSYEM表空间会自动创建。当表空间会自动创建。当数据库打开时,数据库打开时,SYSTEMSYSTEM表空间始终存在。表空间始终存在。SYSTEMSYSTEM表空间中包含整个数据库的数据字典表、表空间中包含整个数据库的数据字典表、PL/SQ

31、LPL/SQL程序的源代程序的源代码和解释代码、数据库对象的定义等内容。码和解释代码、数据库对象的定义等内容。(3)SYSAUX(3)SYSAUX表空间表空间辅助系统表空间。数据库组件将辅助系统表空间。数据库组件将SYSAUXSYSAUX表空间作为存储数据的默认表空间作为存储数据的默认位置,因此当数据库创建或升级时,它会自动创建。位置,因此当数据库创建或升级时,它会自动创建。5.表空表空间Oracle 11gOracle 11g包含以下几种表空间:包含以下几种表空间:(4)Undo(4)Undo表空间表空间在自动撤销管理模式中,存储撤销管理消息。在自动撤销管理模式中,存储撤销管理消息。(5)T

32、emporary(5)Temporary临时表空间临时表空间保存保存SQLSQL语句在执行过程中产生的临时数据,主要是在排序过程中产语句在执行过程中产生的临时数据,主要是在排序过程中产生的临时数据。生的临时数据。表空间和方案的关系表空间和方案的关系 同一方案中的对象可以存储在不同的表空间内,表空间可以存储不同一方案中的对象可以存储在不同的表空间内,表空间可以存储不同方案中的对象。同方案中的对象。Oracle数据库数据库表空间表空间表空间表空间表空间表空间视图视图索引索引表表数据段数据段数据段数据段数据区间数据区间数据区间数据区间数据块数据块数据块数据块临时段临时段回滚段回滚段数据库表空间逻辑对

33、象数据段数据区间数据块图图2-3:逻辑结构关系图:逻辑结构关系图OracleOracle的数据在逻辑上存储在表空间中,而在物的数据在逻辑上存储在表空间中,而在物理上存储在表空间所对应的数据文件当中。理上存储在表空间所对应的数据文件当中。物理存储结构由构成数据库的操作系统文件所决物理存储结构由构成数据库的操作系统文件所决定。每个定。每个OracleOracle数据库都由数据库都由3 3种类型的文件组成:种类型的文件组成:数据文件、日志文件数据文件、日志文件和和控制文件控制文件。其中,数据文。其中,数据文件的扩展名为件的扩展名为.DBF.DBF,日志文件的扩展名为,日志文件的扩展名为.LOG.LO

34、G,控制文件的扩展名为控制文件的扩展名为.CTL.CTL。这些数据库文件为数。这些数据库文件为数据库信息提供真正的物理存储。据库信息提供真正的物理存储。2.3.1.2 数数据据库库的的物物理理存存储储结结构构1. 数据文件数据文件OracleOracle数据库有一个或多个物理的数据文件。数数据库有一个或多个物理的数据文件。数据库的数据文件包含全部数据库数据。逻辑数据据库的数据文件包含全部数据库数据。逻辑数据库结构的数据也物理地存储在数据文件中。库结构的数据也物理地存储在数据文件中。数据文件的特点:每一个数据文件只与一个数据数据文件的特点:每一个数据文件只与一个数据库相联系;一个表空间可包含一个

35、或多个数据文库相联系;一个表空间可包含一个或多个数据文件;一个数据文件只能属于一个表空间。件;一个数据文件只能属于一个表空间。2. 日志文件日志文件日日志志文文件件也也称称为为重重做做日日志志文文件件。记记录录了了所所有有对对数数据据库库数数据据的的修修改改信信息息,修修改改信信息息包包括括用用户户对对数数据据的的修修改改以以及及管管理员对数据结构的修改。理员对数据结构的修改。日日志志的的主主要要功功能能是是记记录录对对数数据据所所作作的的修修改改,所所以以对对数数据据库库作作的的全全部部修修改改记记录录在在日日志志当当中中。在在出出现现故故障障时时,如如果果不不能能将将修修改改数数据据永永久

36、久地地写写入入数数据据文文件件,则则可可利利用用日日志志得得到修改记录,从而保证已发生的操作成果不会丢失。到修改记录,从而保证已发生的操作成果不会丢失。为为了了防防止止日日志志文文件件本本身身的的故故障障,OracleOracle允允许许镜镜像像日日志志,在不同磁盘上维护两个或多个日志副本。在不同磁盘上维护两个或多个日志副本。3.控制文件控制文件数据库控制文件是一个较小的二进制文件,用于描述数据数据库控制文件是一个较小的二进制文件,用于描述数据库结构,用以支持数据库成功地启动和运行。库结构,用以支持数据库成功地启动和运行。每个每个OracleOracle数据库有一个控制文件,记录数据库的物理结

37、数据库有一个控制文件,记录数据库的物理结构。构。控制文件包含数据库名称、数据库数据文件和日志文件的控制文件包含数据库名称、数据库数据文件和日志文件的名字、位置和数据库建立日期、表空间信息、检查点信息、名字、位置和数据库建立日期、表空间信息、检查点信息、当前日志序列数据等信息。当前日志序列数据等信息。数据库的控制文件用于标识数据库和日志文件,当开始数数据库的控制文件用于标识数据库和日志文件,当开始数据库操作时它们必须处于可写状态。据库操作时它们必须处于可写状态。当数据库的物理组成更改时,当数据库的物理组成更改时,OracleOracle会自动更改该数据库会自动更改该数据库的控制文件,任何数据库管

38、理员都不能直接编辑控制文件的控制文件,任何数据库管理员都不能直接编辑控制文件。Oracle数据库数据库数据文件数据文件日志文件日志文件控制文件控制文件物理块物理块物理块物理块物理块物理块数据库物理文件物理块图图2-4:物理存储结构:物理存储结构软件结构是由内存结构和进程结构共同组成。软件结构是由内存结构和进程结构共同组成。SGA (System Global Area,系统全局区)数据高速缓存日志高速缓存共享池大池Java池PGA (Program Global Area,程序全局区)Background Processes,后台进程服务进程排序区会话区堆栈区DBWRPMONSNPnRECOL

39、GWRSMONCKPTARCH图图2-5:软件结构:软件结构2.3.2 数数 据据 库库 的的 软软 件件 结结 构构内存结构是内存结构是OracleOracle数据库体系中最为重要的一部数据库体系中最为重要的一部分,内存也是影响数据库性能的第一因素。分,内存也是影响数据库性能的第一因素。按照内存的使用方法的不同,按照内存的使用方法的不同,OracleOracle数据库的内数据库的内存又可以分为系统全局区(存又可以分为系统全局区(System Global AreaSystem Global Area,SGASGA)和程序共享区()和程序共享区(Program Global AreaProgr

40、am Global Area,PGAPGA)两种内存结构。)两种内存结构。2.3.2.1 内内存存结结构构1.1.系统全局区(系统全局区(SGASGA)SGASGA是一组共享内存结构,其中包含一个是一组共享内存结构,其中包含一个OracleOracle数据库例数据库例程数据及控制信息。如果有多个用户同时连接到同一个例程数据及控制信息。如果有多个用户同时连接到同一个例程,则此例程的程,则此例程的SGASGA数据由这些用户共享。因此,数据由这些用户共享。因此,SGASGA也称也称为共享全局区(为共享全局区(System Global AreaSystem Global Area)。)。SGASGA

41、包含以下数据结构:包含以下数据结构:数据缓冲区数据缓冲区重做日志缓冲区重做日志缓冲区共享池共享池 Java Java池池大池大池1.1.系统全局区(系统全局区(SGASGA)SGASGA包含以下数据结构:包含以下数据结构:数据缓冲区数据缓冲区(Database Buffer Cache)(Database Buffer Cache)用来保存从数据文件中读取最近的数据块信息,其中的用来保存从数据文件中读取最近的数据块信息,其中的数据被所有用户共享。当用户第一次执行查询或修改数据数据被所有用户共享。当用户第一次执行查询或修改数据信息时,后台进程将所需的数据从数据文件读取出来,装信息时,后台进程将所

42、需的数据从数据文件读取出来,装入数据缓冲区。当再有用户访问同样的数据时,入数据缓冲区。当再有用户访问同样的数据时,OracleOracle就就可直接从缓冲区把数据返回给用户。可直接从缓冲区把数据返回给用户。重做日志缓冲区重做日志缓冲区SGASGA中的循环缓冲区,用于记录数据库发生改变的信息。中的循环缓冲区,用于记录数据库发生改变的信息。1.1.系统全局区(系统全局区(SGASGA)共享池共享池用于缓存与用于缓存与SQLSQL或或PL/SQLPL/SQL语句、数据字典、资源锁以及其语句、数据字典、资源锁以及其他控制结构相关的数据。他控制结构相关的数据。 Java Java池池(Java Pool

43、)(Java Pool)为为JavaJava命令提供语法分析。命令提供语法分析。大池大池它是数据库管理员配置的可选内存区域,用于分配大量它是数据库管理员配置的可选内存区域,用于分配大量的内存,处理比共享池更大的内存。大池用于大内存操作,的内存,处理比共享池更大的内存。大池用于大内存操作,提供了相对独立的内存空间。需要大池的操作有:数据库提供了相对独立的内存空间。需要大池的操作有:数据库的备份和恢复操作;执行并行化的数据库操作;执行具有的备份和恢复操作;执行并行化的数据库操作;执行具有大量排序的大量排序的SQLSQL语句。语句。2. 2. 程序共享区(程序共享区(PGAPGA)PGAPGA是包含

44、是包含OracleOracle进程数据和控制信息的内存区域。进程数据和控制信息的内存区域。它在它在OracleOracle进程启动时由进程启动时由OracleOracle创建,是创建,是OracleOracle进程进程的私有内存区域,不能共享,只有的私有内存区域,不能共享,只有OracleOracle进程才能对进程才能对其进行访问。其进行访问。PGAPGA可以分为堆栈区和数据区两部分。可以分为堆栈区和数据区两部分。OracleOracle使用内存存储以下信息:程序代码;连接会话使用内存存储以下信息:程序代码;连接会话的信息,包括当前并未激活的会话;程序运行过程中的信息,包括当前并未激活的会话;

45、程序运行过程中的信息(例如当前查询的状态等);的信息(例如当前查询的状态等);OracleOracle进程共享进程共享和通信的信息;缓冲区中的数据,这些数据同时保存和通信的信息;缓冲区中的数据,这些数据同时保存在外存储器中。在外存储器中。进进程程是是操操作作系系统统中中的的一一种种机机制制,它它可可执执行行一一系系列列的的操操作作步步骤骤;是是一一个个可可以以独独立立调调用用的的活活动动,用用于于完完成成指指定定的的任任务务。进程通常有自己的专用存储区。进程通常有自己的专用存储区。所有连接到所有连接到OracleOracle的用户都必须运行以下两个模块的代码的用户都必须运行以下两个模块的代码来

46、访问来访问OracleOracle数据库例程。这些模块都是通过进程运行的。数据库例程。这些模块都是通过进程运行的。(1)(1)应用程序或应用程序或OracleOracle工具:例如预编译程序或工具:例如预编译程序或SQL*PlusSQL*Plus等,对等,对SQLSQL语句进行处理。语句进行处理。(2)Oracle(2)Oracle服务器代码:用于解释和处理应用程序的服务器代码:用于解释和处理应用程序的SQLSQL语语句。句。2.3.2.2 进进程程结结构构OracleOracle进程分为服务器进程和用户进程。进程分为服务器进程和用户进程。用户进程:是在服务器内存上运行的程序。用户进程用户进程

47、:是在服务器内存上运行的程序。用户进程向服务器进程请求信息。向服务器进程请求信息。服务器进程:接收用户进程发出的请求,根据请求与服务器进程:接收用户进程发出的请求,根据请求与数据库通信,完成与数据库的连接操作和数据库通信,完成与数据库的连接操作和I/OI/O访问。访问。2.3.2.2 进进程程结结构构数据库后台进程:负责完成数据库的后台管理工作的服务器进数据库后台进程:负责完成数据库的后台管理工作的服务器进程。程。系统监控进程系统监控进程(SMON)(SMON):在数据库系统启动时执行恢复性工:在数据库系统启动时执行恢复性工作的强制性进程,对有故障的作的强制性进程,对有故障的CPUCPU或实例

48、进行恢复。或实例进行恢复。进程监控进程进程监控进程(PMON)(PMON):用于恢复失败的数据库用户的强制:用于恢复失败的数据库用户的强制性进程,获取失败用户的标识,释放该用户占用的所有数性进程,获取失败用户的标识,释放该用户占用的所有数据库资源,然后回滚中止的事务。据库资源,然后回滚中止的事务。数据库写入进程数据库写入进程(DBWR)(DBWR):主要管理数据缓冲区和字典缓冲:主要管理数据缓冲区和字典缓冲区的内容,分批将修改后的数据块写回数据库文件,系统区的内容,分批将修改后的数据块写回数据库文件,系统可以拥有多个该进程。可以拥有多个该进程。日志写入进程日志写入进程(LGWR)(LGWR):

49、用户将内存中的日志内容写入日志:用户将内存中的日志内容写入日志文件中,是唯一能够读写日志文件的进程。文件中,是唯一能够读写日志文件的进程。2.3.2.2 进进程程结结构构数据库后台进程:负责完成数据库的后台管理工作的服务器数据库后台进程:负责完成数据库的后台管理工作的服务器进程。进程。归档进程归档进程(ARCH)(ARCH):当数据库服务器以归档方式进行时调用:当数据库服务器以归档方式进行时调用该进程完成日志归档备份。该进程完成日志归档备份。检查点进程检查点进程(CKPT)(CKPT):可选进程,对全部数据文件和控制文:可选进程,对全部数据文件和控制文件的标题进行修改,标识该检查点,用于减少实

50、例恢复所件的标题进行修改,标识该检查点,用于减少实例恢复所需要的时间。需要的时间。恢复进程恢复进程(RECO)(RECO):用于分布式数据库的失败处理。当分布:用于分布式数据库的失败处理。当分布在多个地点的数据没有保持同步时,便调用该进程解决。在多个地点的数据没有保持同步时,便调用该进程解决。锁进程锁进程( (LCKnLCKn) ):当用户在并行服务器模式下将出现多个锁:当用户在并行服务器模式下将出现多个锁进程以确保数据的一致性。进程以确保数据的一致性。2.3.2.2 进进程程结结构构数据字典是数据字典是OracleOracle数据库的重要组成部分,它由一系列对数据库的重要组成部分,它由一系列

51、对于用户而言是只读的基础表和视图组成,它保存了关于数于用户而言是只读的基础表和视图组成,它保存了关于数据库本身以及其中存储的所有对象的基本信息。可以认为据库本身以及其中存储的所有对象的基本信息。可以认为数据字典记录了数据库实例自身的重要信息。数据字典记录了数据库实例自身的重要信息。数据字典主要有数据字典主要有3 3个用处:个用处:(1)Oracle(1)Oracle访问数据字典来查找关于用户、模式对象和存访问数据字典来查找关于用户、模式对象和存储结构的信息。储结构的信息。(2)Oracle(2)Oracle每次执行一个数据定义语句(每次执行一个数据定义语句(DDLDDL)时都会修改)时都会修改

52、数据字典。数据字典。(3)(3)任何任何OracleOracle用户都可以将数据字典作为数据库的只读用户都可以将数据字典作为数据库的只读参考信息。参考信息。2.3.3 数数 据据 字字 典典数据字典的主要内容如下数据字典的主要内容如下:(1)(1)系统的空间信息,即分配了多少空间、当前使用了多少系统的空间信息,即分配了多少空间、当前使用了多少空间等。空间等。(2)(2)数据库中所有模式对象的信息,如表、视图、簇、同义数据库中所有模式对象的信息,如表、视图、簇、同义词及索引等。词及索引等。(3)(3)例程运行的性能和统计信息。例程运行的性能和统计信息。(4)Oracle(4)Oracle用户的名

53、字。用户的名字。(5)(5)用户访问或使用的审计信息。用户访问或使用的审计信息。(6)(6)用户及角色被授予的权限信息。用户及角色被授予的权限信息。(7)(7)列的约束信息的完整性列的约束信息的完整性(8)(8)列的默认值列的默认值通通过数据字典可数据字典可实现的功能是的功能是:(1)(1)用户可以通过数据字典视图获得各种方案对象和对象的用户可以通过数据字典视图获得各种方案对象和对象的相关信息。相关信息。(2)Oracle(2)Oracle通过查询数据字典表或数据字典视图来获取有关通过查询数据字典表或数据字典视图来获取有关用户、方案、对象的定义信息以及其他存储结构的信息。用户、方案、对象的定义

54、信息以及其他存储结构的信息。(3)(3)数据库管理员可以通过在数据字典有动态性能视图中监数据库管理员可以通过在数据字典有动态性能视图中监视例程的状态,将其做为性能调整的依据。视例程的状态,将其做为性能调整的依据。(4)(4)当执行当执行DDLDDL语句修改方案和对象后,语句修改方案和对象后,OracleOracle都会将本次都会将本次修改的信息记录在数据字典中。修改的信息记录在数据字典中。OracleOracle数据库结构又称为例程结构。每个运行的数据库结构又称为例程结构。每个运行的OracleOracle数据库都对数据库都对应一个应一个OracleOracle例程(例程(InstanceIn

55、stance),也可以称为实例。),也可以称为实例。当数据库服务器上的一个数据库启动时,当数据库服务器上的一个数据库启动时,OracleOracle将分配一块内存区将分配一块内存区间,叫做系统全局区(间,叫做系统全局区(SGASGA),并启动一个或多个),并启动一个或多个OracleOracle进程。进程。SGASGA和和OracleOracle进程结合在一起,就是一个进程结合在一起,就是一个OracleOracle例程。例程。例程启动后,例程启动后,OracleOracle把它与指定的数据库联系在一起,这个过程把它与指定的数据库联系在一起,这个过程 叫作装载数据库。当用户连接到数据库并使用数据库时,实际上是叫作装载数据库。当用户连接到数据库并使用数据库时,实际上是连接到该数据库的例程,通过例程来连接、使用数据库。例程就是连接到该数据库的例程,通过例程来连接、使用数据库。例程就是用户和数据库之间的中间层。用户和数据库之间的中间层。只有数据库管理员才能启动例程,并打开数据库。数据库被打开后,只有数据库管理员才能启动例程,并打开数据库。数据库被打开后,数据库管理员可以将数据库关闭。用户无法访问关闭数据库中的数数据库管理员可以将数据库关闭。用户无法访问关闭数据库中的数据。据。2.3.4 数数 据据 例例 程程

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号