欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle体系概述--内存结构

程序员文章站 2024-02-01 18:31:34
...

内存结构是Oracle服务体系中最重要的组成部分之一,是决定Oracle服务器整体性能的关键元素。在Oracle服务器运行过程中,SGA的大小

内存结构是Oracle服务体系中最重要的组成部分之一,是决定Oracle服务器整体性能的关键元素。在Oracle服务器运行过程中,SGA的大小直接影响服务器的执行速度,特别是当登陆的用户增多的时,服务器必须有足够的内存支持,否则会导致查询速度降低,甚至无法连接到服务器上。

相关阅读:

Oracle体系概述-数据字典

Oracle体系概述--实例

Oracle体系概述--内存结构

Oracle服务器体系结构概述

内存结构的组成

Oracle内存结构主要分为两部分:

(1)系统全局区(System Global Area,简称SGA)。SGA是Oracle实例启动时分配的一块内存区域,它保存的数据和信息能够被Oracle实例所共享,因此SGA也成为共享内存区。

(2)程序全局区(Program Global Area,简称PGA)。PGA是Oracle进程启动时分配的一块内存中的内存区域,其中保存有后台进程或服务器进程私有的数据和控制信息,每一个进程都与一个属于自己的PGA,因此也称为非共享内存区。

Oracle实例内存结构的组成结构如图1-1所示。

Oracle体系概述--内存结构

图1-1

Oracle内存结构保存有Oracle实例在工作过程中所需要的数据和程序代码,主要分为以下几类:

*解析后的SQL语句和PL/SQL代码。

*连接数据库的所有会话信息。

*缓存数据,,包括用户执行SQL语句和PL/SQL程序生产的数据和重做日志数据。

*Oracle运行所需要的信息,如数据字典信息。

*Oracle进程共享和通信所需要的信息,例如锁信息。

系统全局区:

系统全局区(System Gloabl Area)简称SGA。SGA和Oracle进程组成一个Oracle实例。当Oracle启动时自动分配一个SGA,当实例关闭时,操作系统回收这块内存区域。每一个Oracle实例都有一个属于自己的SAG。

Oracle体系概述--内存结构