oracle 10g中的SGA_MAX_SIZE与SGA_TARGET参数 sga_target是自动管理内存时使用的,这样你就不用设置DB_CACHE_SIZE,SHARED_POOL_SIZE等参数,他们会根据需要自动的进行调整的。 SGA_MAX_SIZE是从oracle9i以来一直存在﹐是不可动态修改的。 SGA_TARGET是oracle10g中用于实现自动SGA内存管理而新增加的。 SGA_MAX_SIZE指的是可动态分配的最大值﹐而SGA_TARGET是当前已分配的最大sga。 SGA_MAX_SIZE是不可以动态修改的,而SGA_TARGET是可动态修改﹐直到SGA_MAX_SIZE的值(当然这是在实例启动前已设定SGA_MAX_SIZE>SGA_TARGET的情况) 如果在实例启动时﹐ SGA_MAX_SIZE < SGA_TARGET 或SGA_MAX_SIZE没设定﹐则启动后SGA_MAX_SIZE的值会等于SGA_TARGET的值。 可以用如下命令查看SGA_MAX_SIZE与SGA_TARGET的值 SQL> show parameter sga NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ lock_sga boolean FALSE pre_page_sga boolean FALSE sga_max_size big integer 152M sga_target big integer 152M 可以用如下命令修改SGA_MAX_SIZE与SGA_TARGET的值 SQL> alter system set sga_max_size=160M SQL> alter system set sga_target=160M Oracle 11g新特性:Memory_target与自动内存管理这个新特性算不上惊人,但是却是Oracle在内存管理上的又一重要增强。 如果这个参数设置过高,在实例启动时可能会出现如下错误提示: SQL*Plus: Release 11.1.0.5.0 - Beta on Sun Jul 29 08:35:28 2007 在设置了这个参数后,自动内存调整启用: SQL> show parameter memory 类似SGA_MAX_SIZE与SGA_TARGET一样,MEMORY_MAX_TARGET与MEMORY_TARGET成对出现,这一特性的出现使得PGA+SGA作为整体内存使用被一致的纳入自动管理范畴。 而同样与Oracle10g类似,设置了自动内存管理之后,PGA_AGGREGATE_TARGET参数不再需要设置,代之发挥作用的参数是带有2个下划线的__PGA_AGGREGATE_TARGET参数,我们可以来看一下这几个参数的解释:
Oracle 11g sga_target 参数设置 今天在一台linux测试机上装了Oracle 11g,安装好以后按照惯例调整sga_target 1G,pga_aggregate_target 200M 结果报错 ORA-00844: Parameter not taking MEMORY_TARGET into account, see alert log for more information MEMORY_TARGET?新参数?虽然在安装过程中瞟过一眼,但是也没太多注意,后来理解MEMORY_TARGET就是原来10g的 再看导致错误原因: SQL> create pfile ='/home/oracle/initora11g.ora' from spfile; 将pfile里面的memory_target设置成1G 报错,再次验证memory_target>= sga_target + pga_aggregate_target 再改 报新错误了又 这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小 最终启动成功 启动后再改回从spfile启动 然后再启动一次 SQL> startup Total System Global Area 1068937216 bytes 最后 NAME Oracle 11g的Linux版本在修改了MEMORY_TARGET或者SGA_TARGET后启动可能会报错: SQL> shutdown immediate [root@enterprice64 ~]# df -k /dev/shm Oracle在metalink的文档:Doc ID: Note:460506.1中进行了说明。解决这个问题只有两个方法,一种是修改初始化参数,使得初始化参数中SGA的设置小于/dev/shm的大小,另一种方法就是调整/dev/shm的大小。 修改/dev/shm的大小可以通过修改/etc/fstab来实现: [root@enterprice64 ~]# vi /etc/fstab LABEL=/ / ext3 defaults 1 1 SQL*Plus: Release 11.1.0.6.0 - Production on Tue Oct 23 15:42:42 2007 Copyright (c) 1982, 2007, Oracle. All rights reserved. Connected to an idle instance. SQL> startup Total System Global Area 4743446528 bytes 修改/etc/fstab,重新mount /dev/shm,然后就可以启动数据库了 |
oracle 10g 11g中的SGA_MAX_SIZE与SGA_TARGET参数
原创
©著作权归作者所有:来自51CTO博客作者bsbforever的原创作品,请联系作者获取转载授权,否则将追究法律责任
oracle 10g中的SGA_MAX_SIZE与SGA_TARGET参数
2010-04-12 13:07
下一篇:oracle体系结构
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
memory_max_target/memory_target/sga_max_size/sga_target
memory_max_target/memory_target/sga_max_size/sga_target
memory_target memory_max_target sga_max_size sga_target -
每日一译【1005】SGA_MAX_SIZE
The SGA_MAX_SIZE Initialization ParameterThe SGA comprises a number of memory components, w
initialization components database performance dependencies