ITPub博客

首页 > 数据库 > Oracle > 内存结构

内存结构

原创 Oracle 作者:brj880719 时间:2017-11-15 10:50:54 0 删除 编辑
oracle实例内存结构由两部分组成SGA(系统全局区)和PGA(用户全局区)组成,SGA是一块共享的内存区域,也是最大的一块内存区域;PGA则是用户会话专有的内存区域,每个会话在服务器端都有一块专有的内存区域就是PGA。

一、PGA

程序全局区 (PGA):包含某个服务器进程或后台进程的数据及控制信息的内存区域。PGA 是 Oracle DB 在服务器进程或后台进程启动时创建的非共享内存。服务器进程对 PGA 的访问是互斥的。每个服务器进程和后台进程都具有自己的 PGA。

包含如下结构:

1、Private SQL area:包含绑定信息、运行时的内存结构。每个发出sql语句的会话,都有一个private SQL area(私有SQL区)

2、Session memory:为保存会话中的变量以及其他与会话相关的信息,而分配的内存区。

二、SGA

系统全局区 (SGA):称为 SGA 组件的共享内存结构组,这些组件包含一个 Oracle DB 实例的数据和控制信息。SGA 由所有服务器和后台进程共享。SGA 中存储的数据示例包括高速缓存的数据块和共享 SQL 区域。

1、Database buffer cache:缓存了从磁盘上检索的数据块。

  a) Keep buffer cache:保存buffer cache中存储的数据,使其尽时间可能长。
  b) Recycle buffer cache:保存buffer cache中即将过期的数据。
  c) nK block size buffer:为与数据库默认数据块大小不同的数据块提供缓存。用来支持表空间传输。

2、Redo log buffer:缓存了写到磁盘之前的重做信息。

3、Shared pool:缓存了各用户间可共享的各种结构。

4、Large pool:一个可选的区域,用来缓存大的I/O请求,以支持并行查询、共享服务器模式以及某些备份操作。

5、Java pool:保存java虚拟机中特定会话的数据与java代码。

6、Streams pool:由Oracle streams使用。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24851054/viewspace-2147277/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Database 物理文件
下一篇: 列表
请登录后发表评论 登录
全部评论

注册时间:2014-12-06

  • 博文量
    75
  • 访问量
    67566