在9i后,SGA的内部组件大小可以动态调整,也可以由数据库自动管理,在设置内存大小的时候,分配的基本单位是粒度(granule) granule是一段连续的虚拟内存,大小区域决SGA_MAX_SIZE大小 SGA_MAX_SIZE小于128M,Granule为4M,否则Granule为16M 每个内存组件分配大小必须为Granule的整数倍 整个SGA最小不小于3个Granule大小 查看granule大小:v$sgainfo 如下,因为sga_max_size大小大于128M,所以granul…
Oracle的体系结构大体上分为两部分:Instance(实例)和Database(数据库). Instance(实例) :在Oracle Instance中主要包含了SGA以及一些进程(例如:PMON.SMON.DBWn.LGWR.CKPT等).如果一个用户的进程连接到Oracle Server时,其实就是连接到Oracle Instance.在SGA中又包含了5大部件:Share Pool.Database Buffer Cache.Redo Log Buffer.Java Pool.Lar…
一.内存结构 SGA(System Global Area):由所有服务进程和后台进程共享: PGA(Program Global Area):由每个服务进程.后台进程专有:每个进程都有一个PGA. 二.SGA 包含实例的数据和控制信息,包含如下内存结构: 1)Database buffer cache:缓存了从磁盘上检索的数据块. 2)Redo log buffer:缓存了写到磁盘之前的重做信息. 3)Shared pool:缓存了各用户间可共享的各种结构. 4)Large pool:一个可选…
SGA包含的组件: 组件名 说明 参数 buffer cache 存放从数据文件中读取的数据拷贝,所有用户之间是可以共享的 db_cache_size db_keep_cache_size db_recycle_cache_size db_nk_cache_size redo log buffer redo数据 log_buffer shared pool 存放库缓存和数据字典缓存,结果缓存,并行执行消息缓存,以及控制结构信息 shared_pool_size shared_pool_reser…
本文转载自:http://blog.chinaunix.net/uid-25014876-id-79134.html linux设备驱动归纳总结(五):1.在内核空间分配内存 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 一般的,用户空间使用函数malloc在堆上分配内存空间,同样的,在内核空间同样有一套类似的函数来分配空间.下面的知识会涉及页式管理的内存机制,如果不懂…
数据库的存储机构 分为 逻辑存储结构 和 物理存储结构 逻辑存储结构: 数据库.表空间.段.区.块         物理存储结构: 数据库.控制文件.数据文件.初始化参数文件.OS块等. 一个区只能在一个数据文件中,一个段中的各个区可以分别在多个数据文件中.组成区的块是连续的.         SGA (SYSTEM Global Area )系统全局区 [buffer cache]数据高速缓存是(由初始化参数DB_CACHE_SIZE指定大小.工作原理和过程是 LRU(最近最少使用 Least…
oracle 之 内存—鞭辟近里(一) 今天是2013-07-8日,这几天一直都在寻找一本深入研究oracle内存的书籍,期间一波三折弄的自己神魂颠倒,但是还是被我拿下了,感谢支持我的朋友,这周打算把oracle的内存进行一下深入剖析,以此记录学习笔记.    一)内存体系结构:   每当数据库的实例启动的时候oracle  database就会分配内存以及后台进程,在内存区域中存储的如下相关信息: >程序代码 >关于以及连接的会话信息,即使该会话不是活动状态. >程序执行期间需要的相关…
oracle 之 内存—鞭辟近里(三) 今天是2013-07-08,今天晚上突然接到一个电话,我的外甥问我的qq是多少,我感觉很吃惊,他长大了.在他现在这个年龄就开始接触网络,我难免有少许担心,希望他合理利用网络.   一)pga introduction: pga是为服务器进程分配的一块私有的内存,其中包含了相关数据信息和控制信息.每个进程只能对自己的pga区域进行读和写相应的执行代码信息.在运行区域中一个简单的内容就是游标,每个时间游标都会被执行,每个新的run-time area也是为游标…
oracle 之 内存—鞭辟近里(四) 今天是2013-07-11日,首先我非常感谢我的哥们也是我的网友杨工,非常感谢他能在大数据库内帮我执行一下我所需要的信息.就是他说的网络真是一个互助友爱的平台. 前面,我学习 pga内存的结构concept以及常用的动态查看pga的分配使用情况.现在我在学习一下怎么启动pga管理. 如果启动一个自动管理的pga,需要配置二个参数,一个是pga_aggregate_target,一个是workarea_size_policy,这些参数在前面我学习了,但是如何…
1.查看已分配内存,看到memory_max_target为20GSQL> show parameter sga NAME                     TYPE     VALUE------------------------------------ ----------- ------------------------------lock_sga                 boolean     FALSEpre_page_sga                 bool…