数据库启动起来以后,首先在内存划出一块空间来给 Oracle 使用,这个块内存叫 Oracle 内
存,接着会启动一堆进程,我们把内存和进程统称为 Oracle 实例,只有数据库启动起来以
后才有实例的产生,oracle 数据库关闭后就没有 oracle 实例了。
Oracle 各个部分介绍如表 1 所示:
表 1 Oracle 体系结构表
组成 介绍
SGA
数据库缓冲区高速
缓存
数据库缓冲区高速缓存,也称为缓冲区高速缓存,是用于存储从数据文件读取的数据块副本的内存区
域。缓冲区是缓冲区管理器用来暂时缓存当前或最近使用的数据块的主内存地址。所有同时都连接到一
个数据库实例的用户,以共享方式访问缓冲区高速缓存。
重做日志缓冲区
重做日志缓冲区是 SGA 中的一个循环式缓冲区,用来存储对数据库所做更改的重做条目。重做条目包含
用于重建(或重做)由 DML 或 DDL 操作对数据库所做更改所需的信息。数据库恢复将重做条目应用到
数据文件,以重建丢失的更改。
共享池
共享池 缓存各种类型的程序数据。例如,共享池存储已解析的 SQL
PL/SQL 代码、 系统参数、和数据字典信息。几乎数据库中发生的每个操作 都涉及到共享池。
例如,如果用户执行一个 SQL 语句,则 Oracle 数据库会访问共享池。
大池
可选的内存区域,提供比共享池更大的内存分配 , 避免性能开销并更好地满足大型内存请求。
用于共享服务器的 UGA、Oracle XA 接口、并行执行中的消息缓冲区、
比共享池更适合分配较大内存。
Java 池
存储 Java 虚拟机 (JVM) 内的会话特定 Java 代码和数据的内存区。存储
话的 Java 状态数据。专用于 Java 会话空间的对象和数据。
可通过 Java 池顾问提供统计信息并调整池的大小,当 statistics_level
时,Java 池顾问在内部会被打开。这些统计信息在顾问被关闭时会被重置。
流池
流池 用于存储缓冲的队列消息,并为 Oracle 流的捕获进程和应用进程提供 内存。流池专门由
Oracle 流使用。
如果没有专门配置流池,则其大小从零开始。池池的大小由 Oracle
固定 SGA
固定 SGA 是内部的内务管理区域。
文档被以下合辑收录
评论