`

Oracle体系结构

阅读更多
先来一张图:


1.通常说的Oracle数据库包含两个部分:Oracle实例和Oracle物理文件

1.1 实例简介
    实例在操作系统中用ORACLE_SID来标识,在Oracle中用参数INSTANCE_NAME来标识,它们两个的值是相同的。数据库启动时,系统首先在服务器内存中分配系统全局区(SGA),构成了Oracle的内存结构,然后启动若干个常驻内存的操作系统进程,即组成了Oracle的进程结构,内存区域和后台进程合称为一个Oracle实例。
    数据库与实例之间是1对1/n的关系,在非并行的数据库系统中每个Oracle数据库与一个实例相对应;在并行的数据库系统中,一个数据库会对应多个实例,同一时间用户只与一个实例相联系,当某一个实例出现故障时,其他实例自动服务,保证数据库正常运行。在任何情况下,每个实例都只可以对应一个数据库。

1.2 物理文件
    Oracle物理文件是基础,包含了我们存储的所有数据。其中部分物理文件与实例相关,如参数文件,跟踪文件,警告文件等;还有一部分物理文件包含了实际的用户或数据库存储的数据信息,如数据文件,日志文件,控制文件等。

2.Oracle实例

2.1 Oracle数据库的内存结构
系统全局区:SGA(System Global Area)
    SGA是一组为系统分配的共享的内存结构,可以包含一个数据库实例的数据或控制信息。如果多个用户连接到同一个数据库实例,在实例的SGA中,数据可以被多个用户共享。当数据库实例启动时,SGA的内存被自动分配;当数据库实例关闭时,SGA内存被回收。SGA是占用内存最大的一个区域,同时也是影响数据库性能的重要因素。
    如上图,SGA包含数据缓冲区
    数据缓冲区存放需要经常访问的数据,供所有用户使用。如修改数据时,首先从数据文件中取出数据,存储在数据缓冲区中,修改/插入数据也存储在缓冲区中,commit或DBWR(下面有详细介绍)进程的其他条件引发时,数据被写入数据文件。
    日志缓冲区用来存储数据库的修改信息。该区对数据库性能的影响比较小。
    共享池是对SQL,PL/SQL程序进行语法分析,编译,执行的内存区域。它包含三个部分:(都不可单独定义大小,必须通过share pool间接定义)。
        库缓冲区(Library Cache)包含SQL,PL/SQL语句的分析码,执行计划。
        数据字典缓冲区(Data Dictionary Cache)表,列定义,权限。
        用户全局区(Usr Global Area)用户MTS会话信息。

程序全局区:PGA(Programe Global Area)
    程序全局区是包含单个用户或服务器数据和控制信息的内存区域,它是在用户进程连接到Oracle并创建一个会话时由Oracle自动分配的,不可共享,主要用于用户在编程存储变量和数组。

排序池:(Sort Area)大池:(Large Pool)Java池:(Java Pool)
    排序区(Sort Area)为有排序要求的SQL语句提供内存空间。系统使用专用的内存区域进行数据排序,这部分空间就是排序区。在Oracle数据库中,用户数据的排序可使用两个区域,一个是内存排序区,一个是磁盘临时段,系统优先使用内存排序区进行排序。如果内存不够,Orcle自动使用磁盘临时表空间进行排序。为提高数据排序的速度,建议尽量使用内存排序区,而不要使用临时段。
    大池(Large Pool)用于数据库备份工具--恢复管理器(RMAN:Recovery Manager)Large Pool的大小由large_pool_size确定
    Java池主要用于Java语言开发,可以动态调整。

2.2 Oracle进程类型
用户进程和服务器进程
    当数据库用户请求连接到Oracle的服务时启动用户进程(比如启动SQLPlus时)。
    用户进程首先必须建立一个连接。
    用户不能直接与Oracle服务器,必须通过服务器进程交互。
    服务器进程是用户进程与服务器交互的桥梁,它可以与Oracle Server直接交互。
    服务器进程可以有共享和独占两种形式。
后台进程(Backgroung Process)
    数据库的物理结构与内存结构之间的交互要通过后台进程来完成。数据库的后台进程包含两类,一类是必须的,一类是可选的:
  •Mandatory background processes
   |--DBWn(Database Writer):数据写入
   |--PMON(Process Moniter):进程监控
   |--LGWR(Log Writer):日志写入
   |--SMON(System Moniter):系统监控
   |--RECO(Recovery):恢复
   |--CKPT(Chekpoint):检查点
  •Optional background processes
   |--ARCn(Archiver):归档
   |--LCKn(Lock):锁
   |--Dnnn(Dispatcher):调度
   |--......

3.Oracle物理文件类型

3.1 实例相关文件
参数文件:用来告诉Oracle实例在哪里找到控制文件,制定一些初始化参数,比如某种内存结构有多大。

跟踪文件:通常是服务器进程对某种异常错误条件做出响应时穿件的诊断文件。

警告文件:与跟踪文件类似,但是包含“期望”时间的有关信息,并且通过一个集中式文件(其中包括多个数据库时间)告警DBA。

3.2 数据库内容文件

数据文件:数据库的主要文件,包含表,索引等其它数据库段。

重做日志文件:事务日志,主要用来回滚及数据库恢复。

临时文件:用于完成基于磁盘的排序及临时存储。

控制文件:保存数据文件,重做日志文件及临时文件在哪里,还保存于文件状态有关的其它元数据。

密码文件:用于对通过网络进行管理活动的用户进行认证。

3.3 实现快速备份及恢复的文件
这两个文件都是在oracle 19g后新增的。
修改跟踪文件:有利于Oracle实现真正的增量备份。
闪回日志文件:用于支持flashback命令,存数数据库快的前映像。
  • 大小: 35.5 KB
分享到:
评论

相关推荐

    Oracle体系结构简介

    以下是对Oracle体系结构主要组成部分的详细说明: 1. **数据库**:数据库是Oracle的核心,它是一个逻辑数据集合,包含了物理存储的数据以及元数据。Oracle是关系型数据库管理系统(RDBMS),意味着它以表格形式组织...

    oracle 体系结构详解

    Oracle体系结构是Oracle数据库的核心,涵盖了数据库运行的基本原理和组成部分。Oracle数据库体系结构非常复杂,主要包括实例和数据库两个方面。Oracle实例是一个运行中的数据库系统,它由系统全局区(SGA)和一组...

    oracle体系结构、ocp笔记

    "Oracle体系结构与OCp笔记" Oracle体系结构是Oracle数据库管理系统的核心组件之一,它是Oracle数据库的基础架构。Oracle体系结构主要由三部分组成:数据库(Database)、实例(Instance)和oracle网络架构。 ...

    Oracle 体系结构 说明

    【Oracle 体系结构详解】 Oracle数据库的体系结构是其高效管理和优化数据操作的关键。这个复杂的架构设计主要目的是为了有效地管理数据库系统中的稀缺资源,特别是内存,以提高性能并确保数据的完整性和可用性。 1...

    Oracle体系结构图

    oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图oracle体系结构图

    强烈推荐 Oracle 体系结构(高清完整中文版)

    ### Oracle 体系结构详解 #### 一、Oracle 基本体系结构概览 Oracle 数据库的体系结构设计得非常复杂且精妙,它能够高效地处理大量的并发请求,并确保数据的安全性和一致性。Oracle 的基本体系结构主要包括内存...

    oracle体系结构思维导图.jpg

    oracle体系结构思维导图

    oracle体系结构作业

    oracle体系结构,Oracle数据库数据实例、启动过程的学习等;oracle体系结构课程学习中老师布置的作业。

    Oracle体系结构概述

    本文将深入探讨Oracle体系结构的各个关键组成部分。 首先,我们关注物理结构,这是Oracle数据库在磁盘上的实际存储形式。主要包含以下几个部分: 1. **数据文件**:数据文件是Oracle数据库中最基本的存储单元,...

    oracle体系结构8.09

    ### Oracle体系结构8.09知识点详解 #### 一、Oracle体系结构概述 Oracle数据库的体系结构主要包括几个关键部分:数据库实例(Instance)和数据库文件(Database Files)。其中,数据库实例由内存结构(Memory ...

    oracle体系结构ppt

    oracle体系结构介绍,适合oracle初学者。有助于oracle入门。

    Oracle体系结构详解

    ### Oracle体系结构详解 Oracle体系结构是理解Oracle数据库工作原理的关键。本文将深入解析Oracle的基本组成、实例(Instance)结构以及内存结构等核心概念。 #### 一、Oracle基本组成 Oracle的基本组成部分包括...

    oracle体系结构实例

    oracle体系结构学习之实例介绍学习;是体系结构学习英文版ppt的第三章,后续还有其他所有章节,是学习体系结构很全面的教材,比官方文档易学,结构清晰。

    Oracle体系结构PPT

    系统地讲解Oracle体系结构,有助于初学者整体了解和把握Oracle服务器。

    Oracle体系结构详解.pdf

    Oracle 体系结构详解 Oracle 体系结构是围绕 Oracle Server 架构展开的, Oracle Server 由 Instance 和 Database 组成。一个 Instance 只能对应一个 Database,特殊情况下一个 Database 可以有多个 Instance(RAC...

    oracle体系结构课件

    oracle体系结构课件,我们系主任精心制作的,挺全的,真的不错,希望对大家有所帮助!!

    价值1.67万的oracle体系结构视频合集(相老师).txt

    oracle体系结构,本教程注重Oracle数据库原理的讲解,讲的很细,总共45集涵盖了数据库的核心原理

    oracle体系结构PPT

    oracle数据库体系结构详述,入门性质文档

    Oracle体系结构4500695709.docx

    Oracle 体系结构 Oracle 体系结构是指 Oracle 数据库管理系统的总体架构,它由逻辑结构、物理结构和实例三部分组成。下面将详细介绍每个部分的组成和关系。 一、逻辑结构 逻辑结构是 Oracle 体系结构的最高级别,...

Global site tag (gtag.js) - Google Analytics