Oracle内存结构

内存是Oracle数据库信息缓存和共享区域

存储执行的程序代码、连接会话信息以及程序执行期间所需要的数据和共享信息

Oracle内存分两部分:

SGA(系统全局区) 实例内存结构的基本组件
PGA(程序全局区) 服务器启动分配

一、系统全局区(SGA)

  • 生命周期:
    • 分配一个SGA:启动Oracle实例
    • 释放SGA占用的内存:终止Oracle实例
  • 共享SGA:多个用户连接到一个同实例
  • 内存结构:数据高速缓冲区、共享池、重做日志缓冲区、大型池、Java池、流池、其他结构
  • 查看:show sga、select * from v$sga;

1. 数据高速缓冲区

  • 存储最近从数据库中读取出来的数据块

查询时,Oracle 会先把从磁盘读取的数据放入内存供所有用户共享,以后再查询相关数据时不用再次读取磁盘。

插入和更新时,Oracle会先在该区中缓存数据,之后批量写到硬盘中。

  • 组成:脏缓存块、空闲缓存块、命中缓存块
  • 遵循LRU(最近最少使用):最近被访问的移到列表头部,这样最近最少被访问的最先移出列表
  • 大小参数:DB_CACHE_SIZE

2. 重做日志缓冲区

生成重做记录:执行INSERT、UPDATE 、DELETE 等。于回滚事务。

重做记录:首先存入SGA的重做日志缓冲区内,当重做日志缓冲区中的重做记录达到一定数量或到达某个时间点时,再分批写入重做日志文件

重做日志缓冲区是一个循环缓冲区,在使用时从顶端向底端写入数据,然后返回到缓冲区的起始点循环写入

大小参数:LOG_BUFFER

3. 共享池

  • 存放SQL语句PL/SQL代码、数据字典、资源锁和其他控制信息
  • 大小参数:SHARED_ POOL_ SIZE

(1) 数据字典缓存

存储经常使用的数据字典信息,比如表的定义、用户名、口令、权限、数据库的结构等

  • 保存的是一条一条的记录,其他缓存保存的是数据块信息
  • 该缓存用以解释sql语句

(2) 库缓冲区

保存最近解析过的SQL语句、PL/SQL过程和包

执行一条SQL语句、一段PL/SQL过程和包之前,首先在“库缓存”中搜索,如果查到它们已经解析过了,就利用“库缓存”中解析结果和执行计划来执行

共享SQL区 私用SQL区
存储 执行的SQL语句、解析后的语法树和优化后的执行计划 执行SQL语句时与每个会话或用户相关的私有信息,比如绑定变量、环境和会话参数
空间分配 执行新的SQL语句时,会为它在共享SQL区中分配空间
遵循 LRU算法 其他会话即使执行相同的SQL语句也不会使用这些信息

(3) 结果高速缓存

包含SQL查询结果高速缓存和PL/SQL函数结果高速缓存。

(4) 锁与其他控制结构

存储ORACLE例程内部操作所需的信息,比如各种锁

4. 大型池

  • 可选的内存配置项

  • 为Oracle多线程服务器、服务器I/O进程、数据库备份与恢复操作、执行具有大量排序操作的SQL语句、执行并行化的数据库操作等需要大量缓存的操作提供内存空间

    • 没有在SGA区中创建大型池,上述操作所需要的缓存空间将在共享池或PGA中分配
  • 大小参数:LARGE_ POOL_ SIZE

5. Java池

用于支持在数据库中运行java代码

大小参数:java_ pool size

6. 流池

  • 可选的内存配置项

  • 用于缓存流进程在数据库间 移动 / 复制 数据时使用的队列消息

  • 如果没有配置流池,则是共享池中至多10%的空间

  • 大小参数:STREAMS_ POOL_ SIZE

二、进程全局区(PGA)

  • 用户进程连接数据库、创建一个会话时,由Oracle为用户分配的内存区域
  • 保存当前用户私有的数据和控制信息
  • 每个服务器进程只能访问自己的PGA
  • 服务器进程的PGA总和即为实例的PGA的大小
程序全局区
排序区
会话区
堆栈区
游标区

三、用户全局区(UGA)

  1. 专用服务器模式下,进程和会话是一对一的关系,UGA 被包含在PGA中。

  2. 在联机服务器模式下,进程和会话是一对多的关系,所以UGA就不再属于PGA了,而在大型池( Large Pool )中分配。但如果大型池中分配失败(如大型池太小,或是根本没有设置大型池),则从共享池( Shared Pool)中分配

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容