该系列专题为2018年4月OCP-052考题变革后的最新题库。题库为小麦苗解答,若解答有不对之处,可留言,也可联系小麦苗进行修改。
注:OCP-052最新题库完整详细解答版请联系小麦苗私聊。解题不易,请大家尊重原创。
QQ:646634621
QQ群:547200174、618766405
微信号:lhrbestxh
小麦苗课堂现有课程:
课程名称 |
课时 |
上课时间(可根据情况调整) |
价格 |
OCP(从入门到专家) |
每年1-2期,35课时左右/期 |
每周一、周三、周四、周六 |
1600 |
OCM认证 |
每年N期,9课时/期 |
每周二、周五 |
23000 |
高可用课程(rac+dg+ogg) |
未定 |
未定 |
2000 |
Oracle初级入门 |
每年1期,15课时左右/期 |
每周一、周三、周四、周六 |
800 |
Oracle健康检查脚本 |
可微信或微店购买。 |
100 |
小麦苗提供Oracle入门、OCP、OCM、高可用方面的课程,详情请加小麦苗私聊。
Q 题目
Your database is using Automatic Memory Management.
Which two SGA components must be managed manually?
A. shared pool
B. keep buffer pool
C. default buffer cache
D. large pool
E. redo log buffer
A 答案
Answer:BE
Oracle 10g的ASMM实现了自动共享内存管理,但是具有一定的局限性。所以,在Oracle 11g中,Oracle引入了AMM(Automatic Memory Management,自动内存管理)的概念,实现了全部内存的自动管理。DBA可以仅仅通过设置一个目标内存大小的初始化参数(MEMORY_TARGET)和可选最大内存大小初始化参数(MEMORY_MAX_TARGET)就可以在大多数平台上实现AMM。AMM可以使实例总内存保持相对稳定的状态,Oracle基于MEMORY_TARGET的值来自动调整SGA和PGA的大小。MEMORY_TARGET是动态初始化参数,可以随时修改该参数的值而不用重启数据库。MEMORY_MAX_TARGET作为一个内存上限值,是一个静态参数,它是MEMORY_TARGET可以被配置的最大值。
如果内存发生变化,实例会自动在SGA和PGA之间做调整。若启用了AMM功能,而SGA_TARGET和PGA_AGGREGATE_TARGET没有显式的被设置,则默认SGA_TARGET为MEMORY_TARGET的60%,PGA_AGGREGATE_TARGET为MEMORY_TARGET的40%。如果MEMORY_MAX_TARGET设置为1400M,而MEMORY_TARGET设置为1000M,那么对于数据库实例而言,只有1000M可以使用,剩下的400M会被保留下来,但会被Oracle的MMAN进程锁定。但是,因为MEMORY_MAX_TARGET是显式设置的,所以,可以在不重启数据库的情况下动态调整MEMORY_TARGET。如果只设置了MEMORY_TARGET的值,而MEMORY_MAX_TARGET没有显式设置,那么MEMORY_MAX_TARGET的值默认是MEMORY_TARGET的大小。
AMM的SGA中包含的组件及对应参数如下表所示:
SGA组件 |
初始化参数 |
是否会被AMM自动调节 |
共享池(Shared Pool) |
SHARED_POOL_SIZE |
Y |
大池(Large Pool) |
LARGE_POOL_SIZE |
|
Java池(Java Pool) |
JAVA_POOL_SIZE |
|
数据库缓冲区(Database Buffer Cache) |
DB_CACHE_SIZE |
|
流池(Streams Pool,10gR2新增) |
STREAMS_POOL_SIZE |
|
Fixed SGA和其它Oracle数据库实例所需要的内存 |
N/A |
N |
其它的数据库Buffer Cache |
DB_nK_CACHE_SIZE,DB_KEEP_CACHE_SIZE,DB_RECYCLE_CACHE_SIZE |
|
Redo日志缓冲区(Redo Log Buffer) |
LOG_BUFFER |
|
结果缓存(Result Cache) |
RESULT_CACHE_SIZE |
ASMM和AMM的区别如下表所示:
表 3-10 ASMM和AMM的区别
属性 |
AMM |
ASMM |
全称 |
Automatic Memory Management |
Automatic Shared Memory Management |
中文名 |
自动内存管理 |
自动共享内存管理 |
开始版本 |
Oracle 11g |
Oracle 10g |
简介 |
DBA可以仅仅通过设置一个目标内存大小的初始化参数(MEMORY_TARGET)和可选最大内存大小初始化参数(MEMORY_MAX_TARGET)就可以在大多数平台上实现AMM。AMM可以使实例总内存保持相对稳定的状态,Oracle基于MEMORY_TARGET的值来自动调整SGA和PGA的大小。如果内存发生变化,实例会自动在SGA和PGA之间做调整。 |
通过使用ASMM,就不需要手工设置相关内存组件的大小,而只为SGA设置一个总的大小,Oracle会自动根据系统负载的变化,调整各个组件的大小。 |
启用 |
1、设置参数LOCK_SGA为FALSE(默认为FALSE) 2、设置参数MEMORY_TARGET、MEMORY_MAX_TARGET的值为非0 3、设置参数SGA_TARGET、PGA_AGGREGATE_TARGET的值为0 |
1、确保参数STATISTICS_LEVEL为TYPICAL(默认值)或者ALL(注意:该参数一般情况下设置为TYPICAL) 2、设置参数MEMORY_TARGET、MEMORY_MAX_TARGET的值为0 3、设置参数SGA_MAX_SIZE、SGA_TARGET为非0值 3、设置其它组件(SHARED_POOL_SIZE、LARGE_POOL_SIZE、JAVA_POOL_SIZE、DB_CACHE_SIZE、STREAMS_POOL_SIZE)大小为0 |
启用脚本 |
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; |
SELECT ((SELECT SUM(VALUE) FROM V$SGA)-(SELECT CURRENT_SIZE FROM V$SGA_DYNAMIC_FREE_MEMORY)) "SGA_TARGET" FROM DUAL; ALTER SYSTEM SET MEMORY_MAX_TARGET = 0 SCOPE = SPFILE; -- 重启数据库 ALTER SYSTEM SET MEMORY_TARGET = 0; ALTER SYSTEM SET SGA_TARGET = 992M; ALTER SYSTEM SET SHARED_POOL_SIZE = 0; ALTER SYSTEM SET LARGE_POOL_SIZE = 0; ALTER SYSTEM SET JAVA_POOL_SIZE = 0; ALTER SYSTEM SET DB_CACHE_SIZE = 0; ALTER SYSTEM SET STREAMS_POOL_SIZE = 0; |
禁用 |
设置MEMORY_TARGET、MEMORY_MAX_TARGET的值为0 |
设置SGA_TARGET的值为0 |
是否能使用大内存页(HugePage) |
N |
Y |
共享内存段 |
使用虚拟共享内存段,ipcs命令中的bytes列显示为4096 |
使用真实共享内存段,根据此值可估算出SGA_MAX_SIZE的值 |
/dev/shm |
命令“ls -l /dev/shm | grep $ORACLE_SID”可以看到虚拟共享内存段,且命令“df -h”结果中的/dev/shm占用大小不为0 |
命令“ls -l /dev/shm | grep $ORACLE_SID”无输出,且命令“df -h”结果中的/dev/shm占用大小为0 |
MOS文档“SGA and PGA Management in 11g's Automatic Memory Management (AMM) (文档 ID 1392549.1)”对AMM和ASMM有非常详细的说明。
& 说明:
有关ASMM和AMM的更多内容请参考:ttp://blog.itpub.net/26736162/viewspace-2138627/
有关在Linux系统上使用大内存页的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2084973、http://blog.itpub.net/26736162/viewspace-2124855
http://mp.weixin.qq.com/s/bUgn4-uciSndji_pUbLZfA |
http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w |
OCP培训说明连接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA
OCM培训说明连接:https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA
高可用(RAC+DG+OGG)培训说明连接:https://mp.weixin.qq.com/s/4vf042CnOdAD8zDyjUueiw
● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用
● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/
● 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
● QQ:646634621 QQ群:618766405
● 题目解答若有不当之处,还望各位朋友批评指正,共同进步
长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。
本文分享自微信公众号 - DB宝(lhrdba)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。