11g 中新增 MEMORY_MAX_TARGET 参数,此参数一出现就如在 10g 中第一次出现 SGA_MAX_SIZE 参数一样给人以耳目一新的感觉。 memory_max_target 是设定 Oracle 能占 OS 多大的内存空间,一个是 Oracle SGA 区最大能占多大内存空间。无疑在 11g Oracle 又向自动管理 内存更进一步。
10g 的 sga_max_size 是动态分配 Shared Pool Size,database buffer cache,large pool,java pool , redo log buffer 大小的,只是根据 Oracle 运行状况来重新分配 SGA 各内存块的大小。 PGA 在 10g 中需要单独设定 .
11g MEMORY_MAX_TARGET 参数包含两部分内存,一个 System global area (SGA), 另一个 system global area(PGA )。很显然在 11g 中可已经将 PGA 和 SGA 一起动态管理了。
下面来看看在11g 中Memory_target 设置和不设置对SGA/PGA 的影响:
A
:如果
Memory_target
设置为非
0
值
(下面有四种情况来对
SGA
和
PGA
的大小进行分配)
1
:
sga_target
和
pga_aggregate_target
已经设置大小如果
Oracle
中
已经设置了参数
sga_target
和
pga_aggregate_target
,则这两个参数将各自被分配为
最小值最为它们的目标值。
Memory_Target =SGA_TARGET+PGA_AGGREGATE_TARGET
,大小和
memory_max_size
一致。
2
:
sga_target
设置大小,
pga_aggregate_target
没有设置大小
那么
pga_aggregate_target
初始化值
=memory_target-sga_target
3
:
sga_target
没有设置大小,
pga_aggregate_target
设置大小
那么
sga_target
初始化值
=memory_target-pga_aggregate_target
4
:
sga_target
和
pga_aggregate_target
都没有设置大小
Oracle 11g
中对这种
sga_target
和
pga_aggregate_target
都没有设定大小的情况下,
Oracle
将对这两个值没有最小值和默认值。
Oracle
将根据数据库
运行状况进行分配大小。
但在数据库启动是会有一个固定比例来分配:
sga_target =memory_target *60%
pga_aggregate_target=memory_target *40%
B
:如果
Memory_target
没有设置或
=0
(在
11g
中默认为
0
)
11g中默认为
0
则初始状态下取消了
Memory_target
的作用,完全和
10g
在内存管理上一致,完全向下兼容。
(也有三种情况来对 SGA 和 PGA 的大小进行分配)
1 : SGA_TARGET 设置值,则自动调节 SGA 中的 shared pool,buffer cache,redo log buffer,java pool,larger pool
等内存空间的大小。 PGA 则依赖 pga_aggregate_target 的大小。 sga 和 pga 不能自动增长和自动缩小。
2 : SGA_target 和 PGA_AGGREGATE_TARGET 都没有设置
SGA 中的各组件大小都要明确设定,不能自动调整各组建大小。 PGA 不能自动增长和收缩。
3 : MEMORY_MAX_TARGET 设置 而 MEMORY_TARGET =0 这种情况先和 10g 一样,不做说明
在11g 中可以使用下面看各组件的值
SQL> show parameter target
NAME TYPE VALUE
------------------------ ----------- ---------------------
archive_lag_target integer 0
db_flashback_retention_target integer 1440
fast_start_io_target integer 0
fast_start_mttr_target integer 0
memory_max_target big integer 1024M
memory_target big integer 1024M
pga_aggregate_target big integer 0
sga_target big integer 0
如果需要监视
Memory_target
的状况则可以使用下面三个动态试图:
V$MEMORY_DYNAMIC_COMPONENTS
V$MEMORY_RESIZE_OPS
v$memory_target_advice
使用下面
Command
来调节大小:
SQL>ALTER SYSTEM SET MEMORY_MAX_TARGET = 1024M SCOPE = SPFILE;
SQL>ALTER SYSTEM SET MEMORY_TARGET = 1024M SCOPE = SPFILE;
SQL>ALTER SYSTEM SET SGA_TARGET =0 SCOPE = SPFILE;
SQL>ALTER SYSTEM SET PGA_AGGREGATE_TARGET = 0 SCOPE = SPFILE
;
发表评论
-
dblink 阀值
2013-09-06 04:53 478调整方法: alter system set open_l ... -
查看 运行中的存储过程
2013-08-29 23:45 7741、查看ORACLE中正在运 ... -
oracle seconds to hh:mm:ss format
2013-03-13 02:26 957SELECT TO_CHAR(TRUNC(x/36 ... -
listener.ora、sqlnet.ora、tnsnames.ora
2013-03-06 04:57 734oracle网络配置 三个配置文件 listener.or ... -
oracle ratio_to_report
2013-02-20 03:20 897Ratio_to_report函数 Syntax ... -
Oracle 获取本周、本月、本季、本年的第一天和最后一天
2013-01-15 05:08 2671--取得当天0时0分0秒 select TRUNC ... -
package UTL_MAIL - 04042
2012-12-14 03:53 583Connect as SYS as sysdba: ... -
oracle常用的时间函数
2012-12-14 03:09 831SELECT SYSDATE FROM DUAL 取当前系 ... -
oracle ash awr addm 三把利剑 ---转贴
2012-10-19 04:53 781原文出处:http://space.itp ... -
expdp/impdp 进行数据库迁移例子
2012-09-21 01:59 839把一个数据库上的一个用户schema迁移到另外一个数据库上 ... -
数据库缓冲区命中率
2012-09-19 21:55 710数据库缓冲区命中率 select name,value ... -
oracle真实案例之oem大量占用cpu与内存问题的解决方法
2012-09-14 23:13 8722一、介绍 由于dba离职,所以公司所有的or ... -
grant all object to another user
2012-09-07 04:42 741If you really want to grant all ... -
oracle 权限管理
2012-09-07 04:41 6001.查看所有用户: select * from db ... -
impdp 在同一个数据库中把一个schema中所有的对象复制到另一个schema中
2012-09-07 02:03 1169在同一个数据库中把一个schema中所有的对象复制到另一个sc ... -
每小时生成csv文件,并ftp到远端服务器
2012-08-17 03:31 2414CREATE OR REPLACE procedu ... -
全面学习DBMS包之DBMS_SQL (转贴)
2012-08-16 22:32 681在PL/SQL编程当中,经常 ... -
Oracle – Select sysdate +/- time from dual
2012-08-15 22:39 890如果想+,-系统时间: Sysdate: S ... -
ZT 查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件
2012-08-08 23:15 848--1查看表空间已经使用的百分比 ... -
Oracle使用虚拟表dual一次插入多条记录
2013-03-13 02:29 1040BEGIN generate_tmpsh ...
相关推荐
根据系统类型、DB版本和OS内存自动计算Oralce建议的memory_target、SGA和PGA大小
从Oracle9i通过PGA_AGGREGATE_TARGET参数实现PGA自动管理开始,Oracle10g通过SGA_TARGET参数实现了SGA的自动管理,Oracle11g更是惊人地实现了数据库所有内存块的全自动化管理,它使得动态管理SGA和PGA成为现实。...
ORACLE修改SGA后无法启动的临时解决方法.比较实用的东西
设置oralce自动内存管理 启用oracle自动内存管理需要shutdown ,restart 1....计算memory_target大小: 代码如下: memory_target = sga_target + max(pga_aggregate_target, maximum PGA allocated) 4
该参数是构成某个例程的总 SGA 要求的若干参数之一。 默认值 : 派生: SESSIONS 参数的值 (如果正在使用共享服务器体系结构); 否则为 0。 Mts_multiple_listeners: 说明: 指定多个监听程序的地址是分别指定的, ...
The memory allocated to a single SQL operator (_smm_max_size) is limited to: for P_A_T <= 500MB the parameter _smm_max_size = 20% of P_A_T for P_A_T between 500MB and 1000MB the parameter _smm_max...
本数据库(oracle)7个实验报告用于和大家交流,我将这次报告所需要的表和数据材料能够拿出来的都放了在同一个包里的,希望大家能够去看看并且多提点意见,同时我将第一个报告(手工创建数据库库)的记录也放在了包...
3.2.11 Oracle 11g参数文件恢复 127 3.2.12 如何设置Events事件 128 3.2.13 导出SPFILE文件 129 3.3 诊断案例之一:参数文件 131 3.3.1 登录系统检查告警日志文件 131 3.3.2 尝试重新启动数据库 132 ...