oracle amm和asmm,oracle AMM、ASMM区别以及相关用法

oracle amm和asmm,oracle AMM、ASMM区别以及相关用法AMM:automaticmemorymanagement自动内存管理手动设置totalmemorysizeforthisinstancemaximummemorysizeforthisinstance数据库自动分配totalsgasizesgacomponentsizesinstancepgasizeindividualpgasizes即让数据库完全管理S…

大家好,又见面了,我是你们的朋友全栈君。

AMM:automatic memory management自动内存管理

手动设置

total memory size for this instance

maximum memory size for this instance

数据库自动分配

total sga size

sga component sizes

instance pga size

individual pga sizes

即让数据库完全管理SGA、PGA的大小,而对于管理员只需要设置一个总的大小(memory_target),数据库会动态的调整SGA、PGA的大小以及其中包含的各个组件大小,如Database buffer cache、Shared pool等等。

1.获取PGA分配的最大值

select value/1024/1024 || ‘M‘ from v$pgastat where name=‘maximum PGA allocated‘;

2.获取memory_target

计算公式:memory_target = sga_target + max(pga_aggregate_target, maximum PGA allocated)

AMM内存调优

select * from v$memory_target_advice order by memory_size;

当MEMORY_SIZE_FACTOR为 1时MEMORY_SIZE的值,即一般认为比较合理的MEMORY_TARGET的值。

ASMM:automatic shared memory management自动共享内存管理

手动设置

sga target size

sga maximum size

instance pga target size

数据库自动设置

sga component sizes

individual pga sizes

即设置一个SGA的目标值以及SGA的最大值,数据库来动态调整其中的各个组件,如Database buffer cache、Shared pool等等。

SGA_TARGET SGA设置目标值 初始值建议为:(total_mem * 0.7) * 0.8,后续需要定期分析系统做适应性调整

PGA_AGGREGATE_TARGET PGA设置目标值 (total_mem * 0.7) * 0.2,后续需要定期分析系统做适应性调整

SGA_MAX_SIZE SGA设置最大值 初始值建议为:(total_mem * 0.7) * 0.8,后续需要定期分析系统做适应性调整

DB_CACHE_SIZE 数据库缓存大小建议设置一个最小值,初始为SGA的50%左右,具体值需要根据物理内存大小、SGA大小而确定,后续需要定期分析系统做适应性调整

SHARED_POOL_SIZE 共享池大小建议设置一个最小值,具体值需要根据物理内存大小、SGA大小而确定,后续需要定期分析系统做适应性调整

MEMORY_TARGET AMM管理设置内存大小建议值0(11G及以后版本)

使用ASMM并禁用AMM

alter system set sga_target=2048M scope=spfile sid=‘*‘;

alter system set pga_aggregate_target=1024M scope=spfile sid=‘*‘;

alter system set memory_target=0 scope=spfile sid=‘*‘;

alter system set memory_max_target=0 scope=spfile sid=‘*‘;

alter system reset memory_max_target scope=spfile sid=‘*‘;

原文:https://www.cnblogs.com/lyywml/p/12177110.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133968.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 层序遍历总结「建议收藏」

    层序遍历总结「建议收藏」以LeetCode102作为例子:题目描述思路描述层序遍历需要用到的数据结构是队列。需要考虑的问题是:如何标识当前节点的层数。有以下三种方法:方法1将每个节点表示为一个二元组(node,level),这种方法效率太低,不考虑。感兴趣可以参考方法2遍历完一层节点后,在队列中插入一个标记节点NULL,这个标记节点没有具体意义,只是标识某一层已经遍历结束。这种方法的缺点在于,假如想要在层序遍历过程中,有元素为NULL,那么标记节点就会出现混淆。这种方法的代码我经常用,如下:c

    2025年6月14日
    3
  • tf需求文档_服务营销第八版pdf

    tf需求文档_服务营销第八版pdf
    ©2006-2011Microsoft|GetHelp|PrivacyStatement|TermsofUse|CodeofConduct|AdvertiseWithUs|Version2011.2.1.17601

    2025年12月5日
    2
  • redis锁实现_IDEA使用try

    redis锁实现_IDEA使用tryWeb全栈~35.显式锁上一期接口Lock显式锁接口的定义       lock()/unlock():就是普通的获取锁和释放锁方法,lock()会阻塞直到成功。       lockInterruptibly():与lock()的不同是,它可以响应中断,如果被其他线程中断了,则抛出InterruptedException。  &nbsp

    2022年10月15日
    4
  • jmeter  内置日期函数常用方式

    jmeter  内置日期函数常用方式

    2021年9月18日
    47
  • TCP的拥塞控制(详解)「建议收藏」

    TCP的拥塞控制(详解)「建议收藏」在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏,这种情况就叫做网络拥塞。在计算机网络中数位链路容量(即带宽)、交换结点中的缓存和处理机等,都是网络的资源。若出现拥塞而不进行控制,整个网络的吞吐量将随输入负荷的增大而下降。当输入的负载到达一定程度吞吐量不会增加,即一部分网络资源会丢失掉,网络的吞吐量维持在其所能控制的最大值,转发节点的缓存不够大这造成分…

    2022年6月24日
    26
  • Redis集群搭建以及操作

    Redis集群搭建以及操作

    2021年6月4日
    102

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号