知识大全 oracle中SGA的设置

Posted 假定

篇首语:人的知识愈广,人的本身也愈臻完善。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 oracle中SGA的设置相关的知识,希望对你有一定的参考价值。

oracle中SGA的设置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  关于SGA设置的一点总结

  本总结不针对特例 仅对服务器只存在OS + ORACLE 为例 如果存在其他应用请酌情考虑

  写这个也是因为近来这种重复性的问题发生的太多所导致的

  首先不要迷信STS SG OCP EXPERT 等给出的任何建议 内存百分比的说法

  基本掌握的原则是 data buffer 通常可以尽可能的大 shared_pool_size 要适度 log_buffer 通常大到几百K到 M就差不多了

  设置之前 首先要明确 个问题

   除去OS和一些其他开销 能给ORACLE使用的内存有多大

   oracle是 bit or bit bit 通常 SGA有 G 的限制(某些OS的处理或者WINDOWS上有特定设定可以支持到 G以上甚至达到 G 本人无这方面经验)

  下面是我的windows 下的oracle :

  SQL> select * from v$version;

  BANNER        Oracle i Enterprise Edition Release Production    PL/SQL Release Production    CORE Production    TNS for bit Windows: Version Production    NLSRTL Version Production

  SQL>

  windows上存在 bit的限制 如AIX HP UNIX 等有明确的 BIT OS and ORACLE的版本 bit oracle可以装在 bit os 上 bit oracle不能装在 bit OS上

  不管oracle是 bit ORACLE还是 bit 的 假定应用存在没有很好的使用bind var 的情况 也不能设置 shared_pool_size 过大 通常应该控制在 M M 如果是 ORACLE ERP 一类的使用了很多存储过程函数 包 或者很大的系统 可以考虑增大shared_pool_size 但是如果超过 M可能是危险的 达到 G可能会造成CPU的严重负担 系统甚至瘫痪 所以shared_pool_size 如果超过 M还命中率不高 那么应该从应用上找原因而不是一味的增加内存 shared_pool_size 过大主要增加了管理负担和latch 的开销

  log_buffer : K M 之间通常问题不大 不应该太大

  large_pool_size :如果不设置MTS 通常在 RMAN OPQ 会使用到 但是在 M M 应该差不多了 假如设置 MTS 则由于 UGA 放到large_pool_size 的缘故 这个时候依据 session最大数量和 sort_ares_size 等参数设置 必须增大large_pool_size 的设置 可以考虑为 session * (sort_area_size + M) 这里要提醒一点 不是必须使用MTS 我们都不主张使用MTS 尤其同时在线用户数小于 的情况下

  java_pool_size : 若不使用java 给 M通常就够了

  data buffer 在做了前面的设置后 凡可以提供给oracle的内存 都应该给data buffer = (db_block_size * db_block_buffers)

  在 i 中可以是 db_cache_size

  还有 个重要参数我们需要注意

  sort_area_size and hash_area_size

  这两个参数在非MTS下都是属于PGA 不属于SGA 是为每个session单独分配的 在我们的服务器上除了OS + SGA 一定要考虑这两部分

  (****) : OS 使用内存+ SGA + session*(sort_area_size + hash_area_size + M) < 总物理RAM 为好

  这样归结过来 假定oracle是 bit 服务器RAM大于 G 注意你的PGA的情况 则建议

  shared_pool_size + data buffer +large_pool_size + java_pool_size < G

  再具体化 注意满足上面(****) 的原则的基础上可以参考如下设置

  如果 M RAM

  建议 shared_pool_size = M data buffer = M

  如果 G RAM

  shared_pool_size = M data buffer = M

  如果 G

  shared_pool_size = M data buffer = G

  物理内存再大已经跟参数没有关系了

  假定 bit ORACLE

  内存 G

  shared_pool_size = M data buffer = G

  内存 G

  shared_pool_size = M data buffer = G

  内存 G

  shared_pool_size = M M data buffer = G

  以上仅为参考值 不同系统可能差异比较大 需要根据具体情况调整 建议在设置参数的同时 init中使用 lock_sga 在不同的平台上可能有不同的方式 使得SGA锁定在物理内存中而不被放入 SWAP 中 这样对效率有好处

cha138/Article/program/Oracle/201311/16840

相关参考

知识大全 Oracle内存结构:SGA的区域信息

Oracle内存结构:SGA的区域信息  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  SGA的区

知识大全 修改oracle的SGA区大小

修改oracle的SGA区大小  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  备份数据库  关机

知识大全 Oracle SGA(2)

自动调整Oracle9iDatabase:OracleSGA(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一

知识大全 Oracle诊断案例2 -SGA与Swap

Oracle诊断案例2-SGA与Swap  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  案例描述

知识大全 ORACLE SGA分配

ORACLESGA分配  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ORACLEX版本    

知识大全 ORACLE SGA 的分配

ORACLESGA的分配  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ORACLEX版本   

知识大全 Oracle9i Database 自调整:Oracle SGA(上)

Oracle9iDatabase自调整:OracleSGA(上)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起

知识大全 关于SGA设置的一点总结

关于SGA设置的一点总结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本总结不针对特例仅对服务

知识大全 Oracle初始参数中三个License的设置

Oracle初始参数中三个License的设置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  O

知识大全 Oracle参数绑定性能实践

Oracle参数绑定性能实践  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!从Oracle的SGA的