ITPub博客

首页 > 数据库 > Oracle > 2 Day DBA-管理Oracle实例-管理内存-关于内存管理

2 Day DBA-管理Oracle实例-管理内存-关于内存管理

原创 Oracle 作者:luisedalian 时间:2014-01-27 21:42:58 0 删除 编辑

内存管理包括根据数据库的变化,维护Oracle内存结构的最佳大小。必须被管理的内存是SGAPGA内存。实例PGA内存是各个PGA内存分配的集合。从Oracle 11g开始可以让数据库完全管理SGAPGA内存。你只需指定数据库实例使用的总内存,Oracle数据库自动在SGAPGA的使用量上进行调整,来满足进程的需要。这就叫做自动内存管理。在这种内存管理模式下,数据库也自动调整每一个SGA组成部分和每个PGA的大小。

 

为了更为直接地控制SGA和实例PGA的大小,可以使用DC的内存指导页面。在页面中禁用自动内存管理,启用自动共享内存管理。

 

设置自动共享内存管理后,可以设置SGA的目标和最大大小。Oracle数据库会调整SGA的总大小接近于你指定的目标,并动态地调整所有的SGA组成部分的大小。

 

 

当设置了自动共享内存管理,也可以显示地指定自动PGA内存管理。可以指定实例PGA的大小,然后数据库会调整实例PGA的大小到指定的目标,并动态调整单个PGA

 

如果想完成控制每个SGA组成部分的大小,则可以使用内存指导页面禁用所有的自动内存管理、自动共享内存管理,这叫人工共享内存管理。在这种模式下可以设置每个SGA组成部分大小,因此决定整个SGA的大小,然后需要根据不断变化的基础来手动调整每个SGA组成部分的大小。

 

手动共享内存管理是为有经验的DBA设计的,在此模式下自动PGA内存管理仍然是可用的。

 

Oracle数据库内存管理模式

内存管理模式

设置

Oracle数据库自动调整

自动内存管理

实例总内存大小

实例最大内存大小(可选)

整个SGA大小

SGA各组成部分的大小

实例PGA大小

每个PGA大小

自动共享内存管理

自动PGA内存管理

SGA目标大小

SGA最大大小(可选)

实例PGA目标大小

SGA组成部分大小

每个PGA大小

手动共享内存管理

自动PGA内存管理

共享池大小

缓冲区大小

Java池大小

大池大小

实例PGA目标大小

每个PGA大小

 

注意:自动内存管理并不是在所有的平台上都可用

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

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5642304