Oracle内存结构由系统全局区SGA和程序全局区PGA组成。

SGA是实例启动的时候分配的Oracle实例中的一个基本成分。
PGA是服务器进程启动时分配。

1.系统全局区SGA
系统全局区SGA由:Shared Pool, Database Buffer Cache, Redo Log Buffer,Large Pool,Java Pool等组成,其中Large Pool,Java Pool是可选的。

1.1 Shared Pool
Shared Pool用来存储最近最多执行的SQL语句和最近最多使用的数据定义。它包括:Library Cache和Data dictionary cache。它的大小由SHARED_POOL_SIZE这个参数决定。

1.1.1 Library Cache
library cache存储最近最多执行的SQL和PLSQL语句信息,使用LRU算法进行管理,由共享SQL区和共享PLQSQL区两种结构组成。

1.1.2 Data dictionary cache
Data dictionary cache是数据库里最经常访问的对象的定义的集合。包括:数据文件名,表,索引,列,用户权限等数据库对象信息。在解析期间,服务器进程会查找数据字典获取允许接入的关联对象信息。缓存数据字典信息在内存区能提高查询数据的响应时间。它的大小由shared pool的大小决定。

1.2 Database Buffer Cache
存储以前从数据文件中取出过的数据块的拷贝信息。当修改或得到数据时能使性能提高。它使用LRU算法进行管理。由DB_BLOCK_SIZE决定大小。由独立的子缓存组成:DB_CACHE_SIZE,DB_KEEP_CACHE_SIZE,DB_RECYCLE_CACHE_SIZE。可以动态改变尺寸。DB_CACHE_ADVICE可以设置以收集统计信息来预测不同缓冲区大小。

1.3 Redo Log Buffer
重做日志缓冲区记录数据块所有变化,首要目的是恢复,记录的信息可用来重做改变,尺寸由LOG_BUFFER定义。

1.4 Large Pool
Large Pool是SGA中的一个可选的区域,只配置在共享服务器环境中,能减轻共享池的负担,用在UGA,备份和恢复等操作中,大小由LARGE_POOL_SIZE决定。

1.5 Java区
Java区是为了解开Java命令,如果安装并使用Java是必须的,大小由JAVA_POOL_SIZE参数决定。

2. 程序全局区(PGA)

PGA是每个用户进程连接Oracle数据库分配的区域。
用户进程连接到Oracle实例时,就会创建一个对应的会话,该会话使用一个服务器进程来完成客户端与Oracle实例之间的通信。
每个服务器进程都有一个自己的PGA。PGA由Oracle为服务器进程分配,专门用于作为当前用户会话的内存区。
这个内存区是非共享的,只有服务器进程本身才能访问它自己的PGA区。而SGA区则是所有服务器进程都能共享,可写的内存区。

Oracle体系结构之内存结构(3)的更多相关文章

  1. Oracle 体系结构二 内存结构

    Oracle实例由共享内存块(SGA)以及大量的后台进程构成. SGA必须包含的数据结构: 数据库缓冲区缓存 日志缓冲区 共享池 可选的数据结构: 大池 JAVA池 流池 其他缓冲区缓存池 用户会话还 ...

  2. Oracle的内存结构

    备注:本图片截图自“炼数成金” Oracle的体系结构分为内存结构.进程,磁盘文件. 内存结构分为SGA, PGA.SGA是系统全局区,是所有的用户共享区,PGA是某个用户的私有区. SGA分为sha ...

  3. Oracle体系结构详解

    对于一门技术的学习,尤其是像Oracle database这种知识体系极其庞杂的技术来讲,从宏观上了解其体系结构是至关重要的.同时,个人认为,未必是专业DBA人员才需要了解其体系结构(固然对于数据库专 ...

  4. oracle 体系结构

    oracle 体系结构 数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. 1. oracle工作原理: 1).在数据库服务器上启动Oracle实例:2).应用程序 ...

  5. 三、oracle 体系结构

    1.oracle内存由SGA+PGA所构成 2.oracle数据库体系结构数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. oracle工作原理: 1).在数据库 ...

  6. oracle 体系结构解析

    三.oracle 体系结构 1.oracle内存由SGA+PGA所构成 2.oracle数据库体系结构数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. oracl ...

  7. 00 - Oracle体系结构课程内容

    1.导论 自己把本书内容分为几个部分, (1)体系结构,(2)并发控制和事务,(3)物理存储, (4)其他. 嗯,拿到一个新的数据库,我们也要从这几个方面去认识它.   2.体系结构 3.Oracle ...

  8. 【转】oracle 体系结构

    前几天面试的时候面试官才问过我Oracle的体系结构,让我在一张白纸上画出来.回头想想当时答得还不错,大部分内容都描述出来了,呵呵,刚才在网上看到一篇讲解ORACLE体系结构的文章,觉得不错,转过来存 ...

  9. 转:oracle 体系结构

    前几天面试的时候面试官才问过我ORACLE的体系结构,让我在一张白纸上画出来.回头想想当时答得还不错,大部分内容都描述出来了,呵呵,刚才在网上看到一篇讲解ORACLE体系结构的文章,觉得不错,转过来存 ...

随机推荐

  1. golang中使用ETCD

    安装 下载ETCD https://github.com/etcd-io/etcd/releases/ 安装 我下载的是window版,直接解压就可以了,解压后有以下目录 点击etcd.exe运行 然 ...

  2. 一文了解Python的线程

    问题 什么是线程? 如何创建.执行线程? 如何使用线程池ThreadPoolExecutor? 如何避免资源竞争问题? 如何使用Python中线程模块threading提供的常用工具? 目录 1. 什 ...

  3. 分布式协调服务Zookeeper集群搭建

    分布式协调服务Zookeeper集群搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装jdk环境 1>.操作环境 [root@node101.yinzhengjie ...

  4. 【JS】使用变量作为object的key-方法汇总

    1.方法一 var a = 'id'; var str = '{'+a+' : 12}' var obj = eval("("+str+")"); 结果: ob ...

  5. 【转载】汇编调试程序Debug使用

    https://blog.csdn.net/Notzuonotdied/article/details/70888205

  6. Koa与Node.js开发实战(1)——Koa安装搭建(视频演示)

    学习架构: 由于Koa2已经支持ES6及更高版本,包括支持async方法,所以请读者保证Node.js版本在7.6.0以上.如果需要在低于7.6的版本中应用Koa的async方法,建议使用Babel ...

  7. httpClient closeableHttpClient

    https://www.cnblogs.com/lyy-2016/p/6388663.html

  8. Mysql5.7数据导出提示--secure-file-priv选项问题的解决方法

    mysql可使用into outfile参数把表中的数据到处到csv,示例如下: select user_id from weibo_comment into outfile '/home/dazha ...

  9. reuters-多分类问题

    from keras.datasets import reuters import numpy as np from keras.utils.np_utils import to_categorica ...

  10. kruskal重构树学习笔记

    \(kruskal\) 重构树学习笔记 前言 \(8102IONCC\) 中考到了,本蒟蒻不会,所以学一下. 前置知识 \(kruskal​\) 求最小(大)生成树,树上求 \(lca​\). 算法详 ...