Oracle 10g系统管理:自动SGA内存管理

数据库 Oracle
本文介绍Oracle 10g系统管理中一个有用的功能:自动SGA内存管理。在Oracle 10g中,任何时候你都能查询V$SGAINFO,来查看SGA的哪些组件的大小可以调整。

在Oracle 10g系统管理中,有一个自动SGA内存管理(ASMM)。下面介绍一下这个功能:

要使用自动管理,需要设置参数SGA_TARGET、STATISTICS_LEVEL(=TYPICAL或ALL,因为不支持统计集合,数据库就没有必要的历史信息来确定大小)。在Oracle9i及以前版本中,只能用手动SGA内存管理,不存在参数SGA_TARGET,而且参数 SGA_MAX_SIZE只是一个上限,而不是动态目标,但10G中时SGA_TARGET设置不能超过它。

在Oracle 10g中,与内存相关的参数可以归为两类:

◆自动调优的SGA参数:目前这些参数包括DB_CACHE_SIZE、SHARED_POOL_SIZE、LARGE_POOL_SIZE和JAVA_POOL_SIZE。

◆手动SGA参数:这些参数包括LOG_BUFFER、STREAMS_POOL、DB_NK_CACHE_SIZE、DB_KEEP_CACHE_SIZE和DB_RECYCLE_CACHE_SIZE。

在Oracle 10g中,任何时候你都能查询V$SGAINFO,来查看SGA的哪些组件的大小可以调整。(Oracle 10g系统管理相比之前的版本是大大增强了)

采用自动SGA内存管理时,确定自动调整组件大小的主要参数是SGA_TARGET,这个参数可以在数据库启动并运行时动态调整,***可以达到SGA_MAX_SIZE参数设置的值(默认等于SGA_TARGET,所以如果想增加SGA_TARGET,就必须在启动数据库实例之前先把SGA_MAX_SIZE设置得大一些)。数据库会使用SGA_TARGET值,再减去其他手动设置组件的大小(如DB_KEEP_CACHE_SIZE、DB_RECYCLE_CACHE_SIZE等),并使用计算得到的内存量来设置默认缓冲区池、共享池、大池和Java池的大小。在运行时,实例会根据需要动态地对这4个内存区分配和撤销内存。

随着时间的推移,当实例的内存需求越来越确定时,各个SGA组件的大小也越来越固定。即便数据库关闭后又启动,数据库还能记得组件的大小,因此不必每次都从头再来确定实例的正确大小。这是通过4个带双下划线的参数做到的:__DB_CACHE_SIZE、__JAVA_POOL_SIZE、__LARGE_POOL_SIZE和__SHARED_POOL_SIZE。如果正常或立即关闭数据库,则数据库会把这些值记录到存储参数文件(SPFILE)中,并在启动时再使用这些值来设置各个区的默认大小。

另外,如果知道4个区中某个区的最小值,那么除了设置SGA_TARGET外,还可以设置这个参数。实例会使用你的设置作为下界(即这个区可能的最小大小),但是重要的一点要记住,这样Oracle就不能缩小相应区的大小到设定的最小值以下了。

以上就对Oracle 10g系统管理中的自动SGA内存管理功能进行了简单的介绍。

【编辑推荐】

  1. 详解在Oracle给用户解锁的方法
  2. Oracle用户名重建索引方法探究
  3. 全面讲解Oracle查询用户表空间
  4. 浅析Oracle用户权限表的管理方法
  5. Oracle数据库备份与恢复特性浅谈
责任编辑:yangsai 来源: JavaEye博客
相关推荐

2010-03-31 10:30:03

Oracle 10g

2011-08-23 14:23:25

Oracle 10g内系统全局区

2009-10-22 16:53:08

2010-05-05 15:56:37

Unix系统

2009-10-23 15:54:01

Oracle 10g序

2011-09-01 13:42:15

优化布线系统管理布线系统

2010-05-05 16:27:22

Unix系统

2010-05-04 15:22:25

Unix系统

2011-09-29 10:58:51

rBuilderLinux

2009-10-22 16:35:48

Oracle系统管理员Oracle数据字典

2010-04-14 16:09:51

Oracle 10g归

2022-07-11 10:08:19

系统管理任务自动化

2013-05-02 14:06:30

Android开发用户系统管理

2017-03-27 09:30:14

Linux系统管理技巧

2013-05-09 09:27:46

2010-10-28 14:29:39

Oracle内存结构

2010-01-14 17:05:42

MySQL CentO

2011-11-17 16:06:45

IT系统管理

2012-02-29 00:57:41

Linux系统

2012-07-31 14:57:14

NetGain EM
点赞
收藏

51CTO技术栈公众号