• Oracle学习笔记之二,Oracle 11g体系结构


    Oracle 11g体系结构概述

    • 实例(Instance),是指一组Oracle后台进程以及在服务器中分配的共享内存区域;
    • 数据库(Database),是由基于磁盘的数据文件、控制文件、日志文件、参数文件和归档日志文件等组成的物理集合;
    • 数据库服务器(Database Server),是指管理数据库的各种软件工具(比如:SQLPLUS,OEM等)、实例及数据库3个部分。

    1. 逻辑存储结构   

                        

    1.1 数据块(Data Blocks)

    数据块是Oracle逻辑存储结构中的最小的逻辑单位,也是执行数据库输入输出操作的最小存储单位。 

    通常Oracle数据块是操作系统块的整数倍,如果操作系统快的大小为2048B,并且Oracle数据块的大小为8192B,则表示Oracle数据块由4个操作系统块构成。Oracle数据块有一定的标准大小,其大小被写入到初始化参数DB_BlOCK_SIZE中。

    1.2 数据区(Extent)

    数据区(也可称作数据扩展区)是由一组连续的Oracle数据块所构成的Oracle存储结构,一个或多个数据块组成一个数据区,一个或多个数据区再组成一个段(Segment)。

    当一个段中的所有空间被使用完后,Oracle系统将自动为该段分配一个新的数据区,这也正符合Extent这个单词所具有的“扩展”的含义,可见数据区是Oracle存储分配的最小单位,Oracle就以数据区为单位进行存储控件的扩展。

    1.3 段(Segment)

    段是由一个或多个数据区组成的,它不是存储空间的分配单位,而是一个独立的逻辑存储结构,用于存储表、索引或簇等占用空间的数据对象。

    一个段只属于一个特定的数据对象,段内的数据区可以不连续,并且可以跨越多个文件,使用段的目的是用来保存特定的对象。一个Oracle数据库通常有以下4种类型的段:

    数据段、索引段、回滚段、临时段。

    1.4 表空间(TableSpace)

    Oracle使用表空间将相关的逻辑结构(比如段、数据区等)组合在一起,表空间是数据库的最大逻辑划分区域,通常用来存放数据表、索引、回滚段等数据对象(即Segment),任何数据对象在创建时都必须被指定存储在某个表空间中。一个表空间由一个或多个数据文件组成。

    2. 物理存储结构 

    3. Oracle 11g服务器结构 

    实例(Instance)可以进一步划分为系统全局区(SGA)和后台进程(PMON、SMON)两部分。SGA使用操作系统内存资源,而后台进程需要使用CPU与内存资源。

    3.1 系统全局区(SGA)

    SGA是所有用户进程共享的一块内存区域,主要由高速数据缓冲区、共享池、重做日志缓存区、Java池和大型池等内存结构组成。

    • 高速数据缓冲区(Database buffer cache),存放着Oracle系统最近访问过的数据块。
    • 重做日志缓冲区(Redo log buffer cache),用于存放对数据库进行修改操作时产生的日志信息,这些日志信息在写入到重做日志文件之前,首先存放到重做日志缓冲区中,然后在检查点发生或重做日志缓冲区中的信息量达到一定的峰值时,由日志写入进程(LGWR)将此缓冲区的内容写入到重做日志文件。参数名:LOG_BUFFER
    • 共享池(Shared pool),用于缓存SQL语句、PL/SQL语句、数据字典、资源锁、字符集以及其他控制结构等。参数名:SHARED_POOL
    • 大型池(Large pool),在SGA区中不是必需的内存结构,只在某些特殊情况下,实例需要使用大型池来减轻共享池的访问压力,常用情况有:备份和恢复、执行具有大量排序操作的SQL语句、使用并行查询时。参数名:LARGE_POOL_SIZE
    • Java池,用来提供内存空间给Java虚拟机使用,目的是支持在数据库中运行Java程序包。参数名:JAVA_POOL_SIZE

    3.2 后台进程

    放一张Oracle 11g整体结构图,作为本章的结束,原文参考:

    http://blog.csdn.net/tianlesoftware/article/details/5587788


  • 相关阅读:
    GET or POST?
    ASP.NET AJAX简述
    C# 后台调用存储过程
    S,C,SC,表
    js判定浏览器的种类
    sql 数据表添加或删除或修改字段 alter
    sql判定数据表是否存在,存在删除,再新建表或修改表名
    sql 所有的表建好后,为表添加外键约束
    打开office弹出steup error 的解决办法
    a标签的属性
  • 原文地址:https://www.cnblogs.com/nayitian/p/3218034.html
Copyright © 2020-2023  润新知