`
Programmer_ZhangDi
  • 浏览: 15033 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

Oracle数据库的体系结构

阅读更多

1. 物理结构
  
  物理数据库结构是由构成数据库的操作系统文件所决定,Oracle数据库文件包括:
  
  数据文件(Data File)
  数据文件用来存储数据库中的全部数据,例如数据库表中的数据和索引数据.通常以为*.dbf格式,例如:userCIMS.dbf 。
  
  日志文件(Redo Log File)
  日志文件用于记录数据库所做的全部变更(如增加、删除、修改)、以便在系统发生故障时,用它对数据库进行恢复。名字通常为Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。

www.bitsCN.net中国网管博客


  
  控制文件(Control File)
  每个Oracle数据库都有相应的控制文件,它们是较小的二进制文件,用于记录数据库的物理结构,如:数据库名、数据库的数据文件和日志文件的名字和位置等信息。用于打开、存取数据库。名字通常为Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
  
  配置文件
  配置文件记录Oracle数据库运行时的一些重要参数,如:数据块的大小,内存结构的配置等。名字通常为init*.ora 格式,如:initCIMS.ora 。
  
  2 逻辑结构
  
  Oracle数据库的逻辑结构描述了数据库从逻辑上如何来存储数据库中的数据。逻辑结构包括表空间、段、区、数据块和模式对象。数据库的逻辑结构将支配一个数据库如何使用系统的物理空间.模式对象及其之间的联系则描述了关系数据库之间的设计.

play.bitsCN.com累了吗玩一下吧


  
  一个数据库从逻辑上说是由一个或多个表空间所组成,表空间是数据库中物理编组的数据仓库,每一个表空间是由段(segment)组成,一个段是由一组区(extent)所组成,一个区是由一组连续的数据库块(database block)组成,而一个数据库块对应硬盘上的一个或多个物理块。一个表空间存放一个或多个数据库的物理文件(即数据文件).一个数据库中的数据被逻辑地存储在表空间上。
  
  表空间(tablespace)
  Oracle数据库被划分为一个或多个称为表空间的逻辑结构,它包括两类表空间,System表空间和非System表空间,其中,System表空间是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。除此之外,还能包含用户数据。。 bbs.bitsCN.com国内最早的网管论坛
  
  一个表空间包含许多段,每个段有一些可以不连续的区组成,每个区由一组连续的数据块组成,数据块是数据库进行操作的最小单位。
  
  每个表空间对应一个或多个数据文件,每个数据文件只能属于一个表空间。
  
  数据库块(database block)
  数据库块也称逻辑块或ORACLE块,它对应磁盘上一个或多个物理块,它的大小由初始化参数db-block-size(在文件init.ora中)决定,典型的大小是2k。Pckfree 和pctused 两个参数用来优化数据块空间的使用。
  
  区(extent)
  区是由一组连续的数据块所组成的数据库存储空间分配的逻辑单位。
  
  段(segment)
  段是一个或多个不连续的区的集合,它包括一个表空间内特定逻辑结构的所有数据,段不能跨表空间存放。Oracle数据库包括数据段、索引段、临时段、回滚段等。
  
  模式对象(schema object)

需要什么来搜一搜吧so.bitsCN.com


  Oracle数据库的模式对象包括表、视图、序列、同意词、索引、触发器、存储.过程等,关于它们将重点在后面章节介绍。
  
  3.Oracle Server系统进程与内存结构
  
  当在计算机服务器上启动Oracle数据库后,称服务器上启动了一个Oracle实例(Instance)。ORACLE 实例(Instance)是存取和控制数据库的软件机制,它包含系统全局区(SGA)和ORACLE进程两部分。SGA是系统为实例分配的一组共享内存缓冲区,用于存放数据库实例和控制信息,以实现对数据库中数据的管理和操作。
  
  进程是操作系统中一个极为重要的概念。一个进程执行一组操作,完成一个特定的任务.对ORACLE数据库管理系统来说,进程由用户进程、服务器进程和后台进程所组成。
  
  当用户运行一个应用程序时,系统就为它建立一个用户进程。服务器进程处理与之相连的用户进程的请求,它与用户进程相通讯,为相连的用户进程的ORACLE请求服务。

so.bitsCN.com网管资料库任你搜


  
  为了提高系统性能,更好地实现多用户功能,ORACLE还在系统后台启动一些后台进程,用于数据库数据操作。
  
  系统进程的后台进程主要包括:
  SMON 系统监控进程:(system monitor)负责完成自动实例恢复和回收分类(sort)表空间。
  PMON 进程监控进程:(process monitor)实现用户进程故障恢复、清理内存区和释放该进程所需资源等。
  DBWR 数据库写进程:数据库缓冲区的管理进程。在它的管理下,数据库缓冲区中总保持有一定数量的自由缓冲块,以确保用户进程总能找到供其使用的自由缓冲块。
  LGWR 日志文件写进程:是日志缓冲区的管理进程,负责把日志缓冲区中的日志项写入磁盘中的日志文件上。每个实例只有一个LGWR进程。
  ARCH 归档进程:(archiver process)把已经填满的在线日志文件拷贝到一个指定的存储设备上。仅当日志文件组开关(switch)出现时,才进行ARCH操作。ARCH不是必须的,而只有当自动归档可使用或者当手工归档请求时才发出。 feedom.net关注网管是我们的使命
  RECO 恢复进程:是在具有分布式选项时使用的一个进程,主要用于解决引用分布式事务时所出现的故障。它只能在允许分布式事务的系统中出现。
  LCKn 封锁进程:用于并行服务器系统,主要完成实例之间的封锁。
  内存结构(SGA)
  SGA是Oracle为一个实例分配的一组共享内存缓冲区,它包含该实例的数据和控制信息。SGA在实例启动时被自动分配,当实例关闭时被收回。数据库的所有数据操作都要通过SGA来进行。
  
  SGA中内存根据存放信息的不同,可以分为如下几个区域:
  
  Buffer Cache:存放数据库数据库块的拷贝。它是由一组缓冲块所组成,这些缓冲块为所有与该实例相链接的用户进程所共享。缓冲块的数目由初始化参数DB_BLOCK_BUFFERS确定,缓冲块的大小由初始化参数DB_BLOCK_SIZE确定。大的数据块可提高查询速度。它由DBWR操作。
  
  b. 日志缓冲区Redo Log Buffer:存放数据操作的更改信息。它们以日志项(redo entry)的形式存放在日志缓冲区中。当需要进行数据库恢复时,日志项用于重构或回滚对数据库所做的变更。日志缓冲区的大小由初始化参数LOG_BUFFER确定。大的日志缓冲区可减少日志文件I/O的次数。后台进程LGWR将日志缓冲区中的信息写入磁盘的日志文件中,可启动ARCH后台进程进行日志信息归档。 feedom.net国内最早的网管网站
  
  c. 共享池Shared Pool:包含用来处理的SQL语句信息。它包含共享SQL区和数据字典存储区。共享SQL区包含执行特定的SQL语句所用的信息。数据字典区用于存放数据字典,它为所有用户进程所共享。
  
  Cursors:一些内存指针,执行待处理的SQL语句
  其他信息区:除了上述几个信息区外,还包括一些进程之间的通讯信息(如封锁信息);在多线索服务器配置下,还有一些程序全局区的信息,请求队列和响应队列等。

分享到:
评论

相关推荐

    Oracle数据库体系结构( 中文详细版)

    以上是对Oracle数据库体系结构的基本介绍,深入学习还包括对Oracle的SQL语法、存储过程、触发器、视图、约束、分区表等特性的理解和应用。通过理解这些核心概念,可以更好地管理和优化Oracle数据库,提升系统的稳定...

    Oracle数据库体系结构(详细版)

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其复杂而高效的设计使得它在企业...通过深入学习Oracle数据库体系结构,不仅可以提升数据库管理技能,还能为后续的数据库优化、故障排查等工作打下坚实的基础。

    oracle数据库体系结构

    Oracle数据库体系结构是Oracle软件的核心部分,负责管理和存储数据以供用户和应用程序使用。Oracle数据库体系结构主要由以下几部分构成:Oracle数据库服务器、Oracle实例、Oracle数据库的物理结构和Oracle数据库的...

    ORACLE 数据库体系结构

    在深入探讨Oracle数据库体系结构之前,我们先简单了解一下Oracle的主要组件及其作用。 1. **数据库实例**:Oracle数据库实例是内存结构和后台进程的集合,它们一起管理和处理对数据库的请求。内存结构包括数据缓冲...

    实验2 Oracle数据库体系结构.doc

    ### Oracle数据库体系结构知识点 #### 实验目的与要求 - **熟悉Oracle数据库的物理结构**:包括数据文件、日志文件、控制文件等组件的基本概念及其在数据库中的作用。 - **理解Oracle的工作机制**:了解Oracle...

    Oracle数据库体系结构

    ### Oracle数据库体系结构详解 #### 一、Oracle数据库的核心竞争力 Oracle数据库因其强大的核心竞争力而闻名于世,这些优势体现在可扩展性、可靠性和可管理性三个方面。 **1. 可扩展性** - **定义**: Oracle...

    ORACLE数据库体系结构讲解

    综上所述,Oracle数据库体系结构是一个深度集成的系统,涉及内存管理、进程协调、数据存储和访问、事务处理、安全性等多个方面。理解和掌握这些概念对于有效地管理和优化Oracle数据库至关重要。

    实验2_Oracle数据库体系结构

    在实验“实验2_Oracle数据库体系结构”中,我们将深入理解Oracle数据库的关键组成部分。 首先,Oracle数据库的物理存储结构由数据文件、重做日志文件、控制文件和参数文件组成。 1. **数据文件**(Data Files):...

    Oracle数据库体系结构-学习笔记.docx

    ### Oracle数据库体系结构知识点 #### 一、Oracle体系结构简介 **Oracle Server**: Oracle服务器包含两个主要部分:数据库(Database)和实例(Instance)。 - **Database**: 包括数据文件(Datafiles)、控制文件...

    ORACLE数据库体系结构、安全性策略浅析.pdf

    ORACLE 数据库体系结构、安全性策略浅析 本文将对 ORACLE 数据库的体系结构和安全性策略进行浅析,以帮助读者更好地理解 ORACLE 数据库的工作原理和安全机制。 一、ORACLE 数据库体系结构 ORACLE 数据库是一个...

    大牛总结Oracle数据库体系结构(详细版)

    Oracle数据库体系结构主要由以下几个关键组件构成: 1. **实例(Instance)**:实例是Oracle数据库在内存中的表现形式,它由系统全局区(SGA)、程序全局区(PGA)和后台进程组成。系统全局区存储共享数据,如数据...

    A02_ORACLE数据库体系结构.pdf

    Oracle数据库体系结构是数据库管理员和开发人员必须深入理解的关键知识领域。Oracle数据库体系结构主要由实例和数据库组成。一个Oracle数据库实例是一组Oracle服务器进程和内存结构,用于访问数据库中的数据。这些...

    实验2_Oracle数据库体系结构.doc

    《Oracle数据库体系结构详解》 Oracle数据库作为世界上最广泛使用的数据库管理系统之一,其强大的功能和复杂的体系结构使得理解和掌握它成为了IT专业人士的重要技能。本实验旨在深入解析Oracle数据库的物理和逻辑...

    Oracle数据库体系结构(PPT).ppt

    1. **Oracle数据库体系结构概述** Oracle数据库的体系结构可以分为两个主要部分:Oracle实例和Oracle数据库。实例是Oracle运行时的内存结构,而数据库则是实际存储数据的物理文件集合。两者结合提供了完整的数据库...

    ORACLE数据库体系结构

    Oracle数据库是一种广泛使用的大型关系型数据库管理系统,其体系结构复杂且高效。理解Oracle数据库的体系结构对于管理和优化数据库性能至关重要。 首先,Oracle的逻辑结构主要包括以下几个部分: 1. **表空间...

    Oracle数据库体系结构.ppt

    1. **Oracle数据库体系结构** - Oracle数据库由数据库实例和存储结构组成。实例是运行在服务器上的后台进程和内存区域的集合,负责管理数据库;而数据库本身则是存储在磁盘上的数据文件、控制文件、日志文件等物理...

    培训讲义:Oracle 数据库体系结构

    Oracle 数据库体系结构是理解其高效运作的关键,它涉及到数据库如何使用硬件资源,如网络、磁盘和内存。Oracle 数据库由三个主要组件构成:实例(Instance)、文件(File)和进程(Process,这里特指非后台进程)。 ...

    Oracle数据库体系结构小结[定义].pdf

    Oracle数据库体系结构是其高效运行和管理数据的核心基础,涵盖了Oracle网格体系结构、应用体系结构以及物理数据库结构。本文将详细解析这些结构及其关键特点。 首先,Oracle网格体系结构是Oracle适应企业网格计算的...

Global site tag (gtag.js) - Google Analytics