数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构

上传人:E**** 文档编号:89495215 上传时间:2019-05-25 格式:PPTX 页数:29 大小:259.94KB
返回 下载 相关 举报
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构_第1页
第1页 / 共29页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构_第2页
第2页 / 共29页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构_第3页
第3页 / 共29页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构_第4页
第4页 / 共29页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构》由会员分享,可在线阅读,更多相关《数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第9章 Oracle 11g的体系结构(29页珍藏版)》请在金锄头文库上搜索。

1、数据库原理与应用,(Oracle版),人民邮电出版社,2,第9章 Oracle 11g的体系结构,9.1 Oracle 11g体系结构概述 9.2 逻辑存储结构 9.3 物理存储结构 9.4 内存结构 9.5 进程结构 9.6 数据字典,9.1 Oracle 11g体系结构概述,完整的Oracle数据库系统通常由两部分组成:实例和数据库。 数据库是由一系列物理文件的集合(数据文件、控制文件、日志文件、参数文件等),主要功能是保存数据,可以看作是存储数据的容器; 实例则是由一组 Oracle后台进程/线程 以及在服务器分配的 共享缓冲区,人民邮电出版社,3,9.1 Oracle 11g体系结构概

2、述,实例和数据库之间的关系是: 数据库可以由多个实例装载和打开,而实例可以在任何时间装载和打开一个数据库。但是,一个实例在其生存期最多只能装载和打开一个数据库。 Oracle体系结构由存储(逻辑、物理)结构、内存结构、进程结构组成。 内存结构由SGA、PGA组成。 进程结构由用户进程和Oracle进程组成,用户进程是根据实际需要而运行的,并在需要结束后立刻结束。Oracle进程又包括服务器进程和后台进程,是指在Oracle数据库启动后,自动启动的几个操作系统进程。,人民邮电出版社,4,9.1 Oracle 11g体系结构概述,Oracle数据库的存储结构分为逻辑存储结构和物理存储结构,这两种存

3、储结构既相互独立又相互联系。,人民邮电出版社,5,9.2 逻辑存储结构,逻辑存储结构主要描述Oracle数据库的内部存储结构,从技术概念上描述在Oracle数据库中如何组织、管理数据。 在逻辑上,Oracle将保存的数据划分为若干个小单元来进行存储和维护,高一级的存储单元由一个或多个低一级的存储单元组成。 Oracle的逻辑存储单元从大到小依次为:表空间(Table Space)、段(Segment)、区(Extent)、数据块(Data Block),逻辑存储结构示意如图9-3所示。,人民邮电出版社,6,9.2 逻辑存储结构,Oracle的逻辑存储结构,人民邮电出版社,7,9.2 逻辑存储结

4、构,表空间(Tablespace) 表空间是Oracle中最大的逻辑存储结构,它与物理上的一个或多个数据文件相对应,每个Oracle数据库都至少拥有一个表空间,表空间的大小等于构成该表空间的所有数据文件大小的总和。 在安装Oracle时,Oracle数据库系统一般会自动创建一系列表空间(如system)。可以通过数据字典dba_tablespaces查看表空间的信息。,人民邮电出版社,8,9.2 逻辑存储结构,表空间(Tablespace),人民邮电出版社,9,9.2 逻辑存储结构,段(Segment) 按照段中所存储数据的特征,可以将段分为4种类型 : 1数据段 2索引段 3临时段 4回滚段

5、,人民邮电出版社,10,9.2 逻辑存储结构,区(Extent) 在Oracle数据库中,区是磁盘空间分配的最小单位,由一个或多个数据块组成。当一个段中的所有空间被使用完后,系统将自动为该段分配一个新的区。 一个或多个区组成一个段,所以段的大小由区的个数决定。不过,一个数据段可以包含的区的个数并不是无限制的,它由如下两个参数决定。 minextents:定义段初始分配的区的个数,也就是段最少可分配的区的个数。 maxextents:定义一个段最多可以分配的区的个数。,人民邮电出版社,11,9.2 逻辑存储结构,数据块(Block) 数据块(也可以简称为块)是用来管理存储空间的最基本单位,也是最

6、小的逻辑存储单位。Oracle数据库在进行输入输出操作时,都是以块为单位进行逻辑读写操作的。 数据块都具有相同的结构,其结构如右图所示。 块的默认大小,由初始化参数db_block_size指定,数据库创建完成之后,该参数值无法再修改。通过SHOW PARAMETER语句可以查看该参数的信息,如下: SQL SHOW PARAMETER db_block_size; NAME TYPE VALUE - - - db_block_size integer 8192,人民邮电出版社,12,9.3 物理存储结构,Oracle的物理存储结构是由存储在磁盘中的操作系统文件所组成的,Oracle在运行时需

7、要使用这些文件。 一般Oracle数据库在物理上主要由3种类型的文件组成,分别是数据文件(*.dbf)、控制文件(*.ctl)和重做日志文件(*.log)。,人民邮电出版社,13,9.3 物理存储结构,数据文件 数据文件(Data File)是指存储数据库数据的文件。 数据文件一般有以下几个特点。 (1)一个表空间由一个或多个数据文件组成。 (2)一个数据文件只对应一个数据库。而一个数据库通常包含多个数据文件。 (3)数据文件可以通过设置其自动扩展参数,实现其自动扩展的功能。 如果想要了解数据文件的信息,可以查询数据字典dba_data_files和v$datafile。其中,dba_data

8、_files主要有如下字段。 file_name:数据文件的名称以及存放路径。 file_id:数据文件在数据库中的ID号。 tablespace_name:数据文件对应的表空间名。 bytes:数据文件的大小。 blocks:数据文件所占用的数据块数。 status:数据文件的状态。 autoextensible:数据文件是否可扩展。,人民邮电出版社,14,9.3 物理存储结构,控制文件 控制文件(Control File)是一个很小的二进制文件,用于描述和维护数据库的物理结构。在Oracle数据库中,控制文件相当重要,它存放有数据库中数据文件和日志文件的信息。 【例】使用数据字典v$con

9、trolfile,查看当前数据库的控制文件的名称与路径,具体如下: SQL COLUMN name FORMAT A50; SQL SELECT name FROM v$controlfile; NAME - E:APPADMINISTRATORORADATAORCLCONTROL01.CTL E:APPADMINISTRATORORADATAORCLCONTROL02.CTL E:APPADMINISTRATORORADATAORCLCONTROL03.CTL,人民邮电出版社,15,9.3 物理存储结构,日志文件 重做日志文件 是记录数据库中所有修改信息的文件,简称日志文件。 归档日志文件

10、用于对写满的日志文件进行复制并保存,具体功能由归档进程ARCn实现,该进程负责将写满的重做日志文件复制到归档日志目标中。 警报和跟踪日志文件 当一个进程发现了一个内部错误时,它可以将关于错误的信息存储到它的跟踪文件中。而警告文件则是一种特殊的跟踪文件,它包含错误事件的说明,而随之产生的跟踪文件则记录该错误的详细信息。,人民邮电出版社,16,9.3 物理存储结构,参数文件 当Oracle实例启动时,它从一个初始化参数文件中读取初始化参数。 初始化文件记载了许多数据库的启动参数,如内存、控制文件、进程数等,对数据库的性能影响很大,如果不是很了解,不要轻易乱改写,否则会引起数据库性能下降。,人民邮电

11、出版社,17,9.4 内存结构,Oracle内存结构是影响数据库性能的主要因素之一,其结构如图9-4所示。,人民邮电出版社,18,9.4 内存结构,系统全局区(System Global Area,SGA) SGA是Oracle为系统分配的一组共享的内存结构,可以包含一个数据库实例的数据或控制信息。 SGA主要包括以下几个部分: 1数据缓冲区 数据缓冲区用于存储从磁盘数据文件中读取的数据,供所有用户共享。由于系统读取内存的速度要比读取磁盘快得多,所以数据缓冲区的存在可以提高数据库的整体效率。 2日志缓冲区 日志缓冲区用于存储数据库的修改操作信息。 3共享池 共享池用于保存最近执行的SQL语句、

12、PL/SQL程序的数据字典信息,它是对SQL语句和PL/SQL程序进行语法分析、编译和执行的内存区域。共享池主要包括如下两种子缓存。 库缓存(Library Cache) 数据字典缓存(Data Dictionary Cache) 4大型池 大型池,用于提供一个大的缓冲区供数据库的备份与恢复操作使用,它是SGA的可选区域。 5Java池 Java池,用于在数据库中支持Java的运行。,人民邮电出版社,19,9.4 内存结构,程序全局区(Program Global Area,PGA) PGA是Oracle系统分配给一个进程的私有内存区域。 PGA的大小由参数pga_aggregate_targ

13、et决定,可以通过SHOW PARAMETER语句查看该参数的信息,如下: SQL SHOW PARAMETER pga_aggregate_target; NAME TYPE VALUE - - - pga_aggregate_target big integer 20M,人民邮电出版社,20,9.4 内存结构,软件代码区 软件代码区存储作为Oracle实例一部分运行的Oracle可执行文件。这些代码区域本质是静态的,只有在安装新软件版本时才会发生变化。 Oracle软件代码区通常位于享有特权的内存区,此内存区与其他用户程序分开放置。,人民邮电出版社,21,9.5 进程结构,Oracle包括

14、用户进程和Oracle进程两类。Oracle进程又包括服务器进程和后台进程。 (1)用户进程。其主要作用是在客户端将用户的SQL语句传递给服务器进程。用户进程不是实例的组成部分。 (2)服务器进程。该进程用于处理用户进程的请求 (3)后台进程。Oracle实例包括两部分:SGA和一组后台进程。在任意一个刻,Oracle数据库可以处理多个并发用户请求,进行复杂的数据操作,与些同时还要维护数据库系统使其始终具有良好的性能。为了完成这些任务,Oracle具有一组后台进程保证数据库运行所需的实际维护任务。,人民邮电出版社,22,9.5 进程结构,服务器进程、用户进程和后台进程之间的关系,人民邮电出版社

15、,23,9.5 进程结构,主要的后台进程有: 数据库写进程(DBWR) 日志写进程(LGWR) 系统监控进程(SMON) 进程监控进程(PMON) 检查点写进程(CKPT) 归档进程(ARCn) 恢复进程(RECO) 封锁进程(LCKn),人民邮电出版社,24,9.6 数据字典,数据字典(Data Dictionary)是Oracle数据库的核心组件,它是由一系列对于用户而言是只读的基础表和视图组成,它保存了关于数据库本身以及其中存储的所有对象的基本信息。数据字典中的表和视图是在创建数据库时由Oracle自动创建,并存放在System表空间中,当数据库启动时,System表空间将自动在线(Online)。这些表和视图的拥有者是用户SYS。可以认为数据字典记录了数据库实例自身的重要信息。,人民邮电出版社,25,9.6 数据字典,数据字典主要有3个用处: (1)Oracle访问数据字典来查找关于用户、模式对象和存储结构的信息。 (2)Oracle每次执行一个数据定义语句(DDL)时都会修改数据字典。 (3)任何Oracle用户都可以将数据字典作为数据库的只读参考信息。,人民邮电出版社,26,9.6 数据字典,数据字典的主要内容如下: (1)系统的空间信息,即分配了多少空间、

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

当前位置:首页 > 高等教育 > 大学课件

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