内存管理简介

 我来答
没文化的大脑袋CU
2022-09-24 · TA获得超过2688个赞
知道小有建树答主
回答量:556
采纳率:100%
帮助的人:78.1万
展开全部

  对于oracle的内存的管理 截止到 iR 都是相当重要的环节 管理不善 将可能给数据库带来严重的性能问题 下面我们将一步一步就内存管理的各个方面进行探讨

  l       概述

  oracle的内存可以按照共享和私有的角度分为系统全局区和进程全局区 也就是SGA和PGA(process global area or private global area) 对于SGA区域内的内存来说 是共享的全局的 在UNIX上 必须为oracle设置共享内存段(可以是一个或者多个) 因为oracle在UNIX上是多进程 而在WINDOWS上oracle是单进程(多个线程) 所以不用设置共享内存段 PGA是属于进程(线程)私有的区域 在oracle使用共享服务器模式下(MTS) PGA中的一部分 也就是UGA会被放入共享内存large_pool_size中

  对于SGA部分 我们通过sqlplus中查询可以看到

  SQL> select * from v$sga;

  NAME                      VALUE

                

  Fixed Size                  

  Variable Size                

  Database Buffers             

  Redo Buffers                 

  Fixed Size

  oracle 的不同平台和不同版本下可能不一样 但对于确定环境是一个固定的值 里面存储了SGA各部分组件的信息 可以看作引导建立SGA的区域

  Variable Size

  包含了shared_pool_size java_pool_size large_pool_size等内存设置和用于管理数据缓冲区等内存结构的hash table 块头信息(比如x$bh消耗内存)等

  Database Buffers

  指数据缓冲区 在 i中包含default pool buffer_pool_keep buffer_pool_recycle三部分内存 在 i中包含db_cache_size db_keep_cache_size db_recycle_cache_size db_nk_cache_size 这里要注意在 i中三部分内存总和为db_block_buffers*db_block_size

  Redo Buffers

  指日志缓冲区 log_buffer 在这里要额外说明一点的是 对于v$parameter v$sgastat v$sga查询值可能不一样 v$parameter里面的值 是指用户在初始化参数文件里面设置的值 v$sgastat是oracle实际分配的日志缓冲区大小(因为缓冲区的分配值实际上是离散的 也不是以block为最小单位进行分配的) v$sga里面查询的值 是在oracle分配了日志缓冲区后 为了保护日志缓冲区 设置了一些保护页 通常我们会发现保护页大小大约是 k(不同环境可能不一样) 参考如下内容

  SQL>  select substr(name ) name substr(value ) value

     from v$parameter where name = log_buffer ;

  NAME                 VALUE

       

  log_buffer              

  SQL> select * from v$sgastat ;

  POOL  NAME             BYTES

  

  fixed_sga                  

  buffer_cache               

  log_buffer                 

  SQL> select * from v$sga;

  NAME                     VALUE

                

  Fixed Size                 

  Variable Size               

  Database Buffers            

  Redo Buffers               

lishixinzhi/Article/program/Oracle/201311/17604

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式