暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Oracle 11g AMM介绍
1168
3页
1次
2020-03-05
5墨值下载
Oracle 11g AMM 介绍
Ask Oracle 社区 | www.askoracle.org
Ask Oracle 社区交流群:97403776
1
1.Oracle 11g AMM 介绍
Oracle 10g 时,Oracle 提供 ASMMAutomatic Shared Memory Management实现了自
动共享内存管理,但是有一定的局限性。所以 Oracle 11g 时,Oracle AMM
Automatic Memory Management的概念,实现了全部内存的自动管理。
对于 DBA 来说,管理实例内存最简单的方式就是让 Oracle 实例自动的管理和调节。
你可以仅仅通过设置一个目标内存大小的初始化参数(MEMORY_TARGET)和可选最大内存
大小初始化参数MEMORY_MAX_TARGET就可以在大多数平台上实现 AMMAMM 可以
使实例总内存保持相对稳定的状态,Oracle 基于 MEMORY_TARGET 的值,Oracle 实例自动
调整 SGA PGA 的大小。如果内存发生变化,实例会自动在 SGA PGA 乊间做调整。
注意:当 AMM 没启用时,必须同时这 SGA PGA 为本地管理。
MEMORY_TARGET 是动态初始化参数,可以随时修改该参数的值而丌用重启数据库。
MEMORY_MAX_TARGET 作为一个系统上限,是一个静态参数,其确保 MEMORY_TARGET
最大值。
如果使用 DBCA 建库同时选择基本安装选项AMM 默认是启动的如果选择的是高
级安装,AMM 是否启动时可选项。
注意:当 LOCK_SGA 初始化参数的值设置为 TRUE 时,丌能启用 AMM
2.启用 AMM
如果在建库的时候未启用 AMM可以在建库后启用它,启用 AMM 需要重启数据库,
具体步骤如下:
# 计算 MEMORY_TARGET 的最小值
--确定 SGA_TARGET PGA_AGGREGATE_TARGET 的值
Oracle 11g AMM 介绍
Ask Oracle 社区 | www.askoracle.org
Ask Oracle 社区交流群:97403776
2
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 0
memory_target big integer 0
pga_aggregate_target big integer 90M
sga_target big integer 272M
--确定自系统启动以来 PGA 的最大值
select value from v$pgastat where name='maximum PGA allocated';
通过以下方法来计算出 SGA_TARGET 的最大值:
memory_target = sga_target + max(pga_aggregate_target, maximum PGA allocated)
例如:SGA_TARGET 的值为 272MPGA_AGGREGATE_TARGET 的值为 90MPGA 的最
大值为 120M, 所以 MEMORY_TARGET 的值至少 392M (272M + 120M).
# 设置系统参数,启 AMM(默认使 PFILE 启动)
ALTER SYSTEM SET MEMORY_MAX_TARGET = 1024M SCOPE = SPFILE;
-- 重启数据库
ALTER SYSTEM SET MEMORY_TARGET = 392M;
ALTER SYSTEM SET SGA_TARGET = 0;
ALTER SYSTEM SET PGA_AGGREGATE_TARGET = 0;
3. 监控和调节 AMM
动态性能视图 V$MEMORY_DYNAMIC_COMPONENTS 可以实时的显示内存组建的大小,
包括 SGA PGA 的总大小。
SQL> desc v$memory_target_advice
Name Type
-------------------------- ----------------------------
MEMORY_SIZE NUMBER --内存总大小
MEMORY_SIZE_FACTOR NUMBER --内存值与实际值的比例
ESTD_DB_TIME NUMBER --消耗的 db_time
ESTD_DB_TIME_FACTOR NUMBER --消耗的 db_time 与当前值的比例
VERSION NUMBER --版本
Oracle 11g AMM 介绍
Ask Oracle 社区 | www.askoracle.org
Ask Oracle 社区交流群:97403776
3
SQL> select * from v$memory_target_advice order by memory_size;
MEMORY_SIZE MEMORY_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR VERSION
----------- ------------------ ------------ ------------------- ----------
180 .5 458 1.344 0
270 .75 367 1.0761 0
360 1 341 1 0
450 1.25 335 .9817 0
540 1.5 335 .9817 0
630 1.75 335 .9817 0
720 2 335 .9817 0
ESTD_DB_TIME
ESTD_DB_TIME 的值确实明显减少,那么增加 memory_max_target 的总量就是有意义的。
----------------------------------华丽的分割线--------------------------------
Ask Oraclewww.askoracle.org)微信公众平台,支持在线学习查询,欢迎扫描关
注,已开放关键词查询 & 微社区功能,扫描关注后,输入 wsq 点击发送即可进入
社区; 支持在线学习查询;例如:输入 shared pool 点击发送按钮即可查询 shared
pool 相关知识点。
of 3
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。