Oracle SGA设置的详细介绍

数据库 Oracle
以下的文章主要介绍的是Oracle SGA设置,你如果是Oracle SGA设置的爱好者的话,以下的文章,经给你带来一定的收获。

没有通用的Oracle SGA设置,那么所有Oracle SGA设置都需要根据系统的负载、相关的业务需求与某些硬件环境来对其进行调整。这里只是总结出大体的设定,避免因SGA设置不当引起的问题。

1,自动SGA内存管理

在Oracle 10g中引入了自动SGA内存管理特性,DBA可以设定SGA_TARGET告诉Oracle可用的SGA内存为多大,由Oracle根据系统负载来动态调整各组件大小,相应的数定会保存在控制文件中,使数据库重启后也记得各组件大小。

需要注意一下几点:

要使用自动SGA内存管理,STATISTICS_LEVEL参数必须设为TYPICAL或ALL,系统自动收集相应的信息用来动态调整SGA设定。

可以设定某个组件的值,Oracle SGA使用此值为该组件的最小大小

可动态调整的参数:

DB_CACHE_SIZE,SHARED_POOL_SIZE,LARGE_POOL_SIZE,JAVA_POOL_SIZE。

需手动设置的参数:

LOG_BUFFER,STREAMS_POOL,DB_NK_CACHE_SIZE,DB_KEEP_CACHE_SIZE,DB_RECYCLE_CACHE_SIZE。

2,手动SGA内存管理

1) 32bit和64bit限制

在32位的操作系统中,Oracle最大可用内存为1.75g,也就是说SGA+PGA<=1.75g,超过这一限制的内存将不会被Oracle用到。

32位的Oracle可以装到64位的操作系统上,64位的Oracle SGA不可以装到32位的操作系统上。

2) 查看Oracle版本:

SQL> select * from v$version;

BANNER

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod

PL/SQL Release 10.2.0.1.0 - Production

CORE 10.2.0.1.0 Production

TNS for 32-bit Windows: Version 10.2.0.1.0 - Production

NLSRTL Version 10.2.0.1.0 – Production

3) 各组件设置:

JAVA_POOL_SIZE:如果没用到数据库端java的系统,30MB足够。

LOG_BUFFER:默认为MAX(512KB,128KB*CPU个数)。一般系统1MB足够,运行大型事务的系统可以设为2MB,让1/3满写入日志文件时可以继续写入缓冲,再大也没有意义。

SHARED_POOL_SIZE:过大过小都会严重影响系统性能,1GB内存可以设为100MB,2GB内存可设为150MB,4GB内存可设为300MB。共享池命中过低首先要调整的是应用程序而不是扩大共享池。使用绑定变量可以减少共享池需求、提高命中率,减少共享池管理负担和LATCH竞争。

LARGE_POOL_SIZE:使用专用服务模式可设为30MB,除非必要,不然不建议使用共享服务器模式。

DB_CACHE_SIZE:除去上述内存外其他可用内存都分配给该区域。

总结

32位Oracle SGA:

1G内存:SHARED_POOL_SIZE=100MB,DB_CACHE_SIZE=0.5GB;

2G内存:SHARED_POOL_SIZE=150MB,DB_CACHE_SIZE=1.25GB;

64位Oracle

4G内存:SHARED_POOL_SIZE=200MB,DB_CACHE_SIZE=2.5GB;

8G内存:SHARED_POOL_SIZE=400MB,DB_CACHE_SIZE=5GB;

12G内存:SHARED_POOL_SIZE=500MB,DB_CACHE_SIZE=8GB

再次强调,以上只是避免因SGA设置不当引起问题的大体设置,需要根据具体的系统负载和业务逻辑结合Stackpack等工具细调。
 

【编辑推荐】

  1. Oracle 数据库的SQL的描述
  2. Oracle数据字典的实操
  3. Oracle自增字段的实际应用
  4. Oracle数据库中表的连接方式的讲解
  5. Oracle表列的修改具体步骤介绍
责任编辑:佚名 来源: 互联网
相关推荐

2010-03-31 10:40:11

Oracle事例

2010-04-06 13:33:41

Oracle服务

2010-10-28 14:29:39

Oracle内存结构

2010-04-12 15:40:48

Oracle SGA

2009-02-01 10:45:18

Oracle数据库性能调整

2010-04-08 09:00:29

Oracle内存结构

2009-12-21 09:39:50

Oracle 存储过程

2010-03-29 14:09:12

Oracle ID 自

2010-04-09 15:15:01

Oracle SGA

2010-04-02 12:41:16

Oracle六条总结

2010-04-13 15:49:02

Oracle SGA

2011-07-29 15:58:53

SGAOracle

2009-12-25 14:23:35

ADO.NET设置

2009-12-01 13:41:49

静态路由设置

2011-09-01 09:30:27

Oracle数据库控制语句

2009-04-28 09:25:15

Oracle系统参数优化

2011-08-05 13:17:34

Oracle数据库闪回个性

2010-03-31 10:30:03

Oracle 10g

2009-12-17 17:12:10

无线路由linksys

2011-07-27 11:08:49

Oracle数据库EM Console重
点赞
收藏

51CTO技术栈公众号