Oracle体系结构 (2)ppt课件_第1页
Oracle体系结构 (2)ppt课件_第2页
Oracle体系结构 (2)ppt课件_第3页
Oracle体系结构 (2)ppt课件_第4页
Oracle体系结构 (2)ppt课件_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle体系构造主要内容Oracle体系构造及其组件例程数据库 例程 内存构造 后台进程 数据库 物理构造 逻辑构造Oracle效力器的任务原理客户机效力器效力器进程(PGA区)用户进程(SQL语句)Oracle server处置过程可以简单的描画为:用户在其机器上运转基于Oracle的运用程序(如:SQL*PLUS、PL/SQL Developer等),即启动用户进程.客户机、效力器之间建立衔接(Connect).效力器为用户建立会话(Session),并为该会话建立一个PGA(Program Global Area,程序全局区)以存储与该会话相关的信息.在同一个衔接中,不同的用户有不同

2、的会话.启动效力进程,由该效力进程担任执行该会话的各项义务.用户进程发送SQL语句(select、update、commit.)效力器进程解析、编译、执行SQL语句,然后将结果写入数据库并前往结果给用户进程。用户进程接纳前往的SQL执行结果。在运用程序中显示SQL执行结果.口令文件体系构造及其组件综述例程SGA重做日志缓冲区共享池数据字典高速缓存库高速缓存DBWRSMONPMONCKPTLGWROthers用户进程效力器进程PGA控制文件数据文件数据库数据高速缓存重做日志Java 池大缓冲池参数文件归档日志图示内容如下:Oracle的体系构造可分客户端、效力器两大部分。客户端:在客户机上安装管

3、理工具后,运转工具启动用户进程。效力器:包括例程和数据库两部分。 例程:包括SGA及后台进程。 数据库:包括控制文件、数据文件、日志文件等操作系统文件.涉及三种构造:Oracle的内存构造 Oracle的进程构造Oracle数据库的存储构造物理构造逻辑构造内存构造: SGA和PGA,运用内存最多的是SGA,同时也是影响数据库性能的最大参数.进程构造:包括前台进程、后台进程。前台进程是指效力进程和用户进程.前台进程是根据实践需求而运转的,并在需求终了后立刻终了。后台进程是指在Oracle数据库启动后,自动启动的几个操作系统进程.存储构造:分为逻辑存储构造、物理存储构造。 逻辑存储构造是描画Ora

4、cle数据库中如何组织和管理数据。与操作系统平台无关。 物理存储构造是Oracle数据库的外部存储构造。它对应操作系统相关文件。包括控制文件、数据文件、日志文件等操作系统文件.Oracle 效力器Oracle 数据库效力器:主要由两部分组成: 物理数据库和数据库管理系统。物理数据库是保管数据的物理存储设备。数据库管理系统是用户与物理数据库之间的一个中间是软件层,又称例程。有一定的构造。或称数据库效力器由例程和数据库组成Oracle server数据库效力器启动时:Oracle首先要在内存中获取、划分、保管各种用途的区域,运转各种用途的后台,即:创建一个例程(instance);然后由该例程装载

5、(mount)、翻开(open)数据库;最后由这个例程来访问和控制数据库的各种物理构造 假设把Oracle数据库比作一部汽车,instance相当于汽车的发动机一样,启动oracle数据库前提应先启动instance.当用户衔接到数据库并运用数据库时,实践上是衔接到该数据库的例程,经过例程来衔接、运用数据库。所以例程是用户和数据库之间的中间层。例程与数据库的区别:数据库指的是存储数据的物理构造,总是实践存在的;例程那么是由内存构造和一系列进程组成,可以启动和封锁。SID(系统标识符)一台计算机上可以创建多个Oracle数据库,一个数据库上可以有多个例程。为了使例程间不混淆,每个例程都称为:SI

6、D(SystemIDentify)加以区分。例 程的组成 一个Oracle例程是存取和控制一个数据库的软件机制,是接触Oracle数据库的方式,存取数据库中数据的一种手段,或者称之Oracle数据库管理系统。它由系统全局区System Global Area,简称SGA和后台进程组成。例程SGA重做日志缓冲区共享池数据字典高速缓存库高速缓存DBWRSMONPMONCKPTLGWROthers数据高速缓存Java 池大缓冲池SGA后台进程衔接到例程建立衔接和会话 :建立用户衔接建立会话建立会话数据库用户用户进程效力器进程建立衔接Oracle server建立衔接: 是一个平安审核的过程。包括:提

7、交的网络效力名能否正确;输入的用户名及密码能否存在且正确,衔接的数据库对象能否存在等等,对这些一系列的过程进展审核。 经过用户进程来衔接。 一旦建立了衔接,Oracle效力器会给该用户调度一个效力器进程来完成该用户的恳求命令效力。建立会话: 效力器进程解析用户进程提供来的SQL语句,完成该次会话执行的各种义务。数据库口令文件控制文件数据文件数据库重做日志参数文件归档日志 Oracle 保管数据的容器。 分物理存储构造及逻辑存储构造。Oracle数据库物理存储构造 物理存储构造是现实的数据存储单元,对应于操作系统文件。Oracle数据库就是由驻留在效力器的磁盘上的这些操作系统文件所组成的。这些文

8、件有数据文件、日志文件、控制文件。物理存储构造物理构造主要包括以下三种文件:控制文件数据文件重做日志控制文件数据文件重做日志数据文件(Data File)数据文件(Data File)是物理存储Oracle数据库数据的文件。其特点如下: 每一个数据文件只与一个数据库相联络。 一个表空间可包含一个或多个数据文件。 一个数据文件只能属于一个表空间。重做日志文件(Redo File) 重做日志文件(Redo Log File)记录一切对数据库数据的修正,以备恢复数据时运用。其特点如下: 每一个数据库至少包含两个日志文件组。 日志文件组以循环方式进展写操作。 每一个日志文件成员对应一个物理文件。控制文

9、件 控制文件(Control File)是一个较小的二进制文件,用于描画数据库构造。描画信息如下:数据库建立的日期。数据库名。数据库中一切数据文件和日志文件的文件名及途径。恢复数据库时所需的同步信息。要点留意:在翻开和存取数据库时都要访问该文件。记录控制文件名及途径的参数为:CONTROL_FILES参数文件 参数文件Parameter File也被称为初始化参数文件,用于存储SGA、可选的Oracle特性和后台进程的配置参数。 当数据库启动,并在创建例程或读取控制文件之前,会先按其中的参数进展例程的配置。 位置:$Oracle_home dbs口令文件:是个二进制文件,验证特权用户。 位置:

10、$Oracle_home databasePWD%.ora归档日志文件:非活动的重做日志文件的备份。逻辑存储构造主要描画Oracle数据库的内部存储构造,从技术概念上描画Oracle数据库中如何组织、管理数据。可以分为4部分:表空间、段、区、块。表空间段数据块区段Oracle的逻辑构造是由一个或多个表空间组成。一个表空间(tablespace)由一组段组成 一个段(segment)由一组区组成 一个区(extent)由一批数据库块组成 一个数据库块(block)对应一个或多个物理操作系统块。表空间 表空间是数据库的逻辑划分的最大单元,一个Oracle数据库至少有一个表空间,即system表空间

11、。数据库表空间1表空间2表空间3数据文件数据文件数据文件数据文件数据文件表空间1表空间2表空间3数据文件数据文件数据文件数据文件数据文件表表表安装完Oracle 10g后,自动创建的表空间为:Example 例如表空间,存放例子数据库的方案对象。SYSTEM 系统表空间,存放关于表空间称号、控制文件、数据文件等管理信息,它属于sys、system方案。不能删除或重命名。SYSAUX 辅助系统表空间 ,用于减少系统表空间的负荷,提高效率。是Oracle 10g新添加的表空间。TEMP 暂时表空间,存放暂时表和暂时数据,用于排序。USERS 用户表空间,存放永久性用户对象及私有信息,也称数据表空间

12、。留意:每一个数据库都应该有一个用户表空间,以便在创建用户时分配给用户,否那么用户的数据将会运用SYSTEM表空间。UNDOTBS1 重做表,段 Segment段数据表段索引段暂时段回退段段是表空间的下一个逻辑单位,是表空间中一个指定类型的逻辑存储构造,它由一个或多个区组成,段将占用并增长存储空间。分类如下 :区(extent) 区(Extent)是由物理上延续存放的块构成,区是Oracle存储分配的最小单位,由一个或多个块 组成。 当在数据库中创建带有实践存储构造的方案对象如表、索引时,Oracle将为该方案对象分配假设干个区,以便组成一个对应的段来为该方案对象提供初始的存储空间。当段中已分

13、配的区都写满后,Oracle就为该段分配一个新的区,以便包容更多的数据。 分配的第一个区称初始区,以后分配的区称增量区。数据库块(Block)数据库块Database Block是数据库运用的I/O最小单元,又称逻辑块或ORACLE块。 一个数据库块对应一个或多个物理操作系统块,块的大小由参数DB_BLOCK_SIZE确定。数据块的大小是操作系统块大小的整数倍. 以Win2K为例,操作系统块(OS block)的大小为4kb,所以Oracle Block的大小可以是4kb,8kb,16kb等等。存储构造总结物理存储构造与逻辑存储构造之间的关系从物理上看,数据库由控制文件、数据文件、重做日志文件

14、等操作系统文件组成;从逻辑上来看,数据库是由系统表空间、用户表空间等组成。表空间是最大的逻辑单位,块是最小的逻辑单位。逻辑存储构造中的块最后对应到操作系统中的块.内存构造Oracle内存构造由两个部分组成:系统全局区(SGA): 在启动例程时分配, 是Oracle例程的根底组件。程序全局区(PGA): 当启动效力器进程时分配。系统全局区(SGA)SGA是ORACLE系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。 每个例程都只需一个SGA. 它是不同用户进程与效力进程进展通讯的中心,数据库的各种操作主要在SGA中进展,所以称其为系统全局区. 创

15、建例程时,Oracle为SGA分配内存; 终止例程时,释放SGA所占用的内存.系统全局区SGA由以下内存构造组成:共享池数据高速缓存重做日志缓冲区在SGA内可以配置以下内存构造:大缓冲池Java池SGA重做日志缓冲区共享池数据字典高速缓存库高速缓存数据高速缓存Java 池大缓冲池SGA共享池用于存储:最近执行的SQL语句最近运用的数据定义由两个关键的内存构造组成:库高速缓存数据字典高速缓存尺寸由参数SHARED_POOL_SIZE控制共享池数据字典高速缓存库高速缓存ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;库高速缓存存储最近解析运用的SQL和PL/SQL语

16、句信息 Oracle 在执行用户进程提交的各种SQL语句、PL/SQL前要对其进展解析包括语法解析、对象确认、权限判别、操作优化等并生成执行方案,占用一定的系统资源。由两个部分组成:共享SQL区共享PL/SQL区数据字典高速缓存最近运用的对象定义集合包括数据库文件、表、索引、列、用户、权限和其它数据库对象的信息在解析阶段, 效力器进程查看数据字典信息以解析对象名数据字典缓存信息到内存,以提高查询和DML呼应时间尺寸由共享池尺寸确定数据高速缓存存储从数据文件检索的数据块副本经过LRU算法管理DB_BLOCK_SIZE确定了缓冲区数据块大小数据高速缓存数据缓冲区数据文件 初次访问数据时,Oracl

17、e将读取磁盘上的数据文件,将数据放入数据高速缓存,再处置数据; 假设数据曾经位于数据高速缓存中时,Oracle直接操作数据。数据高速缓存的缓存块分为三类:脏缓存块: 存放曾经被修正正的缓存块. 当SQL修正某个缓存块中的数据,那么这个缓存块被标志为脏缓存块空闲缓存块: 等待写入数据的空闲缓存块.命中缓存块: 最近正在被访问的缓存块.管理缓存块的列表Oracle经过2个列表来管理上述缓存块: 脏列表(DIRTY) 包括被修正正但尚未写到数据文件的缓冲块。 LRU(Least Recently Used)列表 包括空闲缓冲块、命中缓存块,以及还没有移到脏列表的缓冲块。数据高速缓存任务原理读数据入数

18、据高速缓存之前,先在LRU中搜索空闲缓存块;在搜索过程中假设发现脏缓存块,那么将其移入DIRTY;找到足够的空闲块,将一切数据读入;3,假设空闲块缺乏,那么暂停搜索,Oralce立刻启动DBWR进程,将DIRTY中的脏缓存块数据写入数据文件释放足够的空闲缓存块。数据库写进程重做日志缓冲区记录一切数据块变化。当执行DML, 如:update、delete、insert或者create、alter、drop 等语句时,Oracle都会为这些操作生成重做记录.主要目的是恢复Oracle总是先记录日志、后记录数据由LOG_BUFFER初始化参数定义重做日志缓冲区重做日志高速缓存任务原理日志写进程归档进

19、程为提高效率,重做记录并不直接写入磁盘的重做日志文件,而是先写入重做日志缓存;当重做日志缓存中的重做记录到达一定数量时,由LGWR进程写入重做日志.(先内存后磁盘)当2个(至少2个)重做日志切换时,由ARCH将重做日志中的数据写入归档日志文件,以做备份.大池 大池用于需求大内存操作提供相对独立的内存空间,以便提高性能。 大池是可选的内存构造。 DBA可以决议能否需求在SGA中创建大池。 需求大池的操作: 数据库备份和恢复 大量排序的SQL语句 并行化的数据库操作Java池8i以后提供的对Java的支持,用于存放Java代码、Java程序等.普通不小于20M,以便虚拟机运转.尺寸由JAVA_PO

20、OL_SIZE控制程序全局区PGA为每个衔接到数据库的用户进程预留内存当建立效力器进程时分配当终止效力器进程时释放只能由一个进程运用用户进程PGA效力器进程进程构造Oracle运用各种类型进程:用户进程: 当用户恳求衔接到Oracle server时启动效力进程: 衔接到例程,并且当用户建立会话时启动后台进程: 当启动例程时启动用户进程恳求与Oracle server交互的程序必需首先建立衔接不会与Oracle server直接交互数据库用户效力进程用户进程建立衔接效力器进程直接与Oracle server交互的程序完成调用并前往结果可以是公用的或者共享的建立衔接建立会话数据库用户用户进程效力器进程Oracle server后台进程作用:维护并加强物理构造和内存构造的关系。必需后台进程:DBWnPMONCKPTLGWRSMON可选后台进程:ARCnLMDn QMNnCJQ0LMON RECODnnnLMS SnnnLCKnPnnnDBWn例程SGA控制文件数据文件重做日志数据库DBWn数据高速缓存1. 作用 把Database buffer cache中的脏数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论