Oracle Database 10g基础教程 教学课件 ppt 作者 7-302-09864-6k ch04

上传人:E**** 文档编号:89349525 上传时间:2019-05-23 格式:PPT 页数:35 大小:102.50KB
返回 下载 相关 举报
Oracle Database 10g基础教程 教学课件 ppt 作者  7-302-09864-6k ch04_第1页
第1页 / 共35页
Oracle Database 10g基础教程 教学课件 ppt 作者  7-302-09864-6k ch04_第2页
第2页 / 共35页
Oracle Database 10g基础教程 教学课件 ppt 作者  7-302-09864-6k ch04_第3页
第3页 / 共35页
Oracle Database 10g基础教程 教学课件 ppt 作者  7-302-09864-6k ch04_第4页
第4页 / 共35页
Oracle Database 10g基础教程 教学课件 ppt 作者  7-302-09864-6k ch04_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《Oracle Database 10g基础教程 教学课件 ppt 作者 7-302-09864-6k ch04》由会员分享,可在线阅读,更多相关《Oracle Database 10g基础教程 教学课件 ppt 作者 7-302-09864-6k ch04(35页珍藏版)》请在金锄头文库上搜索。

1、2019年5月23日,第1页,第4章 体系结构,Oracle Database 10g基础教程 清华大学出版社,教学目标 教学难点和重点 教学过程,2019年5月23日,第2页,教学目标,理解和掌握如何连接到数据库实例 理解服务器进程的作用和特点 理解Oracle文件系统的结构层次 理解Oracle Database 10g是如何管理内存的 了解后台进程的作用 了解Oracle Database 10g系统新增的进程,2019年5月23日,第3页,教学难点和重点,如何连接到数据库实例 服务器进程的作用和特点 Oracle文件系统的结构层次 Oracle Database 10g是如何管理内存的

2、 后台进程的作用 Oracle Database 10g系统新增的进程,2019年5月23日,第4页,教学过程,4.1 概述 4.2 连接数据库实例 4.3 服务器进程 4.4 文件系统 4.5 内存区域 4.6 后台进程,2019年5月23日,第5页,4.1 概述,Oracle系统的体系结构是指组成Oracle系统的主要组成部分和这些组成部分之间的关系以及这些部分的工作方式。 在Oracle系统的体系结构中,主要涉及下面5个组件: 连接数据库实例的能力。 服务器进程。 文件系统的结构层次。 内存区域的管理,尤其是系统全局区域(system global area,SGA)的特点和作用。 后台

3、进程。,2019年5月23日,第6页,4.2 连接数据库实例,用户进程 Oracle监听器 Oracle网络客户,2019年5月23日,第7页,用户进程,用户进程(User Process)可以看作是一些试图连接数据库的软件,例如客户工具。用户进程可以使用Oracle Net Services(Oracle网络服务)与数据库进行通讯。Oracle Net Services是一组通过网络连接协议提供网络连接的组件。对应用开发人员和数据管理员来说,Oracle Net Services屏蔽了不同硬件平台上设置不同网络的复杂性。,2019年5月23日,第8页,Oracle监听器,Oracle监听器(

4、Listener)是一个运行于Oracle数据库服务器上的进程,其职责是监听来自于客户应用的连接请求。 客户负责在初始化连接请求中向监听器发送服务名称。该服务名称是一个标识符,它可以唯一地标识客户试图连接的数据库实例。当然,Oracle监听器不仅仅能够监听数据库实例,而且还可以监听其他服务,例如HTTP服务器和IIOP服务器。,2019年5月23日,第9页,Oracle网络客户,对于SQL*Plus、Oracle Enterprise Manager、Oracle Net Manager这些客户工具来说,可以使用Oracle Net Services客户适配器与Oracle数据库进行交互。,2

5、019年5月23日,第10页,4.3 服务器进程,当Oracle Net Services接收到用户进程的连接请求之后,就会将用户进程路由到一个服务器进程(Server Process)。服务器进程负责在用户进程和Oracle实例之间调度请求和响应。当用户进程提交查询之后,服务器进程则负责执行该查询语句,即将数据从磁盘读入缓存,获取查询结果,然后向用户进程返回结果。即使响应出现了某些错误,服务器进程也会把错误信息发回用户进程,以便用户进程进行合适的处理。 在专用服务器(Dedicated Server)模式中,系统会向每个要与数据库进行连接的用户进程赋予它自己的专用服务器进程。 在共享服务器模

6、式中,有一个调度程序组件。该组件负责在用户进程与服务器进程之间进行路由。,2019年5月23日,第11页,4.4 文件系统,在Oracle数据库的进程的日常操作中,该进程使用数据词典、应用数据、用于数据库启动的参数、事务处理日志、管理数据库物理结构的文件以及其他类型的文件。,2019年5月23日,第12页,参数文件,参数文件(Parameter Files)用于在启动实例时配置数据库。当建立数据库的时候,用户就可以运行初始化文件,该文件规定了数据库中所使用的各种设置值。这些设置包括数据库实例名称(SID)、数据库主要文件的位置、实例所使用的主要内存区域的大小等。该文件的名称通常为init.or

7、a。,2019年5月23日,第13页,控制文件,控制文件(Control Files)是Oracle服务器在启动期间用来标识物理文件和数据库结构的二进制文件。控制文件提供了建立新实例时所需要的文件目录。Oracle系统可以在常规的数据库操作期间,更新控制文件,以便下次使用。 当用户建立控制文件时,最好建立多个控制文件副本。,2019年5月23日,第14页,数据文件,数据文件是用来存放用户数据的地方。这些数据文件对于用户数据的稳定性和完整性十分重要。如果失去了这些数据文件,用户就不会有数据了,当然也就不会有数据库了。 每一个数据库至少有一个与之相关的数据文件。通常情况下,一个数据库有多个数据文件

8、。为了理解Oracle系统是符合组织文件的和如何组织数据的,那么必须理解什么是表空间(Tablespace)、段(Segment)、盘区(Extent)、块(Block)等用于保存数据库对象的分配单元。,2019年5月23日,第15页,表空间,表空间是用户可以在Oracle系统中使用的最大的逻辑存储结构。用户在数据库中建立的所有内容都会存储在表空间中。每个Oracle数据库都提前配置了system表空间,它存储了数据字典和系统管理信息。一般地,用户和应用程序使用自己的表空间来存储数据。写入到临时表中的数据、为大规模排序操作写入磁盘的数据块以及其他许多类型的临时数据都会写入到表空间中。,2019

9、年5月23日,第16页,段,段是用户建立的数据库对象的存储表示。用户建立的每一个表都会有一个在表空间中存储的逻辑段。为用户所建立的对象生成的段都要在磁盘上占用空间。在Oracle系统中,有3种类型的段,即数据段、临时段和回滚段。 数据段是存储表、索引、簇、表分区等常规应用数据的地方。,2019年5月23日,第17页,盘区,段是由一个或多个盘区构成的。盘区是用来为段存储数据的逻辑上连续的数据块的集合。当建立数据库对象时(无论如何,该对象都会消耗空间),系统就会建立一个或多个盘区来存储数据。盘区数量和盘区大小可以在正在建立的对象的storage子句中规定。 在Oracle系统中,默认的表空间的盘区

10、管理风格是本地化管理,而不是字典管理。,2019年5月23日,第18页,数据块,数据块代表了数据库中最小颗粒的逻辑数据存储层次。在数据块层次上,才是盘区结构。盘区是由连续的数据块集合构成,而盘区构成了段,段则构成了表空间,表空间构成了数据库。,2019年5月23日,第19页,重做日志文件,重做日志文件对Oracle数据库至关重要,他们是数据库的事务日志。重做日志文件仅用于恢复数据库。当实例或介质失败时,使用重做日志文件来维护数据库。 如果关掉了数据库所在机器的电源,造成实例失败,Oracle将使用联机重做日志,以将系统恢复到电源停止之前的那一刹那。如果包含数据文件的磁盘驱动器发生了永久性故障,

11、那么Oracle将使用归档的重做日志,与使用联机重做日志一样,将驱动器的备份及时恢复到那一时刻点。,2019年5月23日,第20页,临时文件,在Oracle系统中,临时文件是一个特殊类型的数据文件类型。当内存不足于在RAM中保存一个大规模排序操作的中间结果或结果集时,Oracle使用临时文件来保存他们。永久数据对象,例如表或索引,是不会存储到临时文件中的,但是临时表或临时索引的内容则可能存储到临时文件中。,2019年5月23日,第21页,Oracle管理文件,使用Oracle管理文件并不阻止数据库管理员使用以前的文件管理方式。用户仍然可以为表空间、重做日志文件和控制文件规定明确的文件名。,20

12、19年5月23日,第22页,4.5 内存区域,在Oracle系统的体系结构中,有许多不同的内存区域。不同的内存区域用于不同的目的。Oracle的服务器进程和许多后台进程负责在内存区域中写入、更新、读取和删除数据。理解内存区域的目的,有助于理解数据库操作期间的数据和进程流程。在Oracle实例中,3个主要内存区域是: 系统全局区域(system global area,SGA) 程序全局区域(program global area,PGA) 用户全局区域(user global area,UGA),2019年5月23日,第23页,系统全局区域,系统全局区域实际上是内存中的一块区域,由系统自动分配

13、,用来存储由数据库进程共享的数据库信息。它包含了Oracle服务器的数据和控制信息。该区域位于Oracle服务器所在的计算机的虚拟内存中。系统全局区域的结构示意图如图4-4所示。由图4-4可知,系统全局区域由数据块缓存区、重做日志缓存区、共享池、大型池等4部分组成。,2019年5月23日,第24页,系统全局区域的结构示意图,2019年5月23日,第25页,程序全局区域和用户全局区域,程序全局区域是为单独的服务器进程存储私有数据的内存区域。与所有服务器进程都可以访问的共享内存区域SGA不同,数据库写入器、日志写入器和许多其他后台进程,都只为各个服务器进程提供一个PGA。PGA只能由他们的服务器进

14、程访问。 用户全局区域是用于存储会话状态的内存区域。UGA的位置依赖于服务器是运行在共享服务器模式中,还是专用服务器模式中。在专用服务器模式中,UGA会在PGA中分配,只能够由服务器进程访问。,2019年5月23日,第26页,4.6 后台进程,2019年5月23日,第27页,进程监控器,进程监控器(process monitor,PMON)。PMON的主要职责是监控服务器进程和注册数据库服务。 监控服务器进程,确保能够销毁发生损坏或出现故障的进程,释放这些进程占用的资源。 在主机操作系统上使用Oracle监听器注册数据库服务,2019年5月23日,第28页,系统监视器,系统监视器(system

15、 monitor,SMON)的主要职责包括重新启动系统、清除临时段、执行盘区结合等。 在出现故障实例的情况下,SMON负责重新启动系统,执行崩溃恢复。这项职责包括回滚未提交的事务处理,为实例崩溃时还没有写入数据文件的事务处理在数据库上应用重做日志表项(来自于归档的重做日志文件)等任务。,2019年5月23日,第29页,数据库写入器,数据库缓存包含了由用户所使用的数据。数据块会从磁盘读入缓存,各种服务器进程会在那里对他们进行读取和修改。当要将这些缓存中的数据块写回到磁盘时,数据库写入器(database writer,DBWn)负责执行这些数据的写入。,2019年5月23日,第30页,日志写入器

16、,日志写入器(log writer,LGWR)负责向在线重做日志文件中记录索由数据库的已提交事务处理。该进程会将所有数据从重做日志缓存中写入到现行的在线重做日志文件中。日志写入器会在下面4种不同情况下执行写入操作: 事务处理进行提交; 重做日志缓存已经填充了1/3; 重做日志缓存中的数据量达到了1MB; 每3秒的时间。,2019年5月23日,第31页,归档器,这就是引入归档器(archiver,ARCn)的原因。大多数数据库产品都会运行在archivelog模式中。该模式可以把所有日志文件归档,而不只是在没有进行备份的情况下重新使用他们(noarchivelog模式)。归档器会随着数据库的运行来完成其工作,有效地采用热备份或在线备份。不需要关闭数据库就可以运行归档器,因为它会随着记录数据库改变日志而工作。,2019年5月23日,第32页,检查点,检查点(checkpoint,CKPT)进程负责使用最新的检查点信息更新所有的控制文件和数据文件标题。这种操作称为检查点。,2019年5月23日,第33页,作业队列协调器和作业进程,Oracle提供了在Orac

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

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

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