暂无图片
sga target 130G,但是buffer cache + shared pool有220G
我来答
分享
豆宇斯
2024-02-01
sga target 130G,但是buffer cache + shared pool有220G

Oracle 19c rac,1节点 sga target 130G,但是buffer cache加shared pool有220G

在oem中看sga曲线,也提示之前是230G,但是我们直到1月21日才把sga target 从130G改成200G的

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
shunwahⓂ️

从你提供的信息来看,你提到Oracle 19c RAC(Real Application Clusters)的SGA(System Global Area)目标设置为130G,但Buffer Cache和Shared Pool加起来有220G或230G。同时,你在OEM(Oracle Enterprise Manager)中看到SGA的曲线显示之前是230G,但在1月21日之前将SGA target从130G改为了200G。

以下是对这些信息的分析:

SGA大小与目标大小:SGA是Oracle数据库中用于存储各种内存结构的地方,如Buffer Cache、Shared Pool等。当你在Oracle中设置SGA的目标大小时,这通常是指你希望SGA使用的最大内存量。但实际的SGA大小可能会根据数据库的工作负载和配置变化。因此,你设置的目标大小(如200G)并不意味着SGA在任何时候都会使用这么多内存,但它定义了可以使用的最大内存量。
Buffer Cache和Shared Pool的大小:Buffer Cache是用于存储数据块的地方,Shared Pool用于存储库缓存、SQL语句、PL/SQL代码等。这两部分加起来的大小(220G或230G)超过了SGA的目标大小(130G或200G)。这可能是由于Oracle的自动内存管理机制,它会自动调整SGA中的各个组件的大小以满足性能需求。
OEM中的曲线:OEM提供了一个可视化的界面来监控数据库的性能和资源使用情况。从曲线中可以看出,SGA的大小在某个时间点达到了230G,这可能是由于当时的数据库负载和工作量导致的。
1月21日的更改:你将SGA的目标大小从130G增加到了200G。这意味着你希望数据库有更多的内存可用,以满足其性能需求。但是,实际的SGA大小仍然可能根据工作负载而自动调整。
建议:

监控SGA的实际使用情况,确保没有频繁的内存争用或频繁的SGA扩展/收缩。
根据实际的工作负载和性能需求调整SGA的各个组件的大小。
使用Oracle的自动内存管理功能或手动配置SGA组件的大小,以确保最佳的性能和资源利用率。
总之,虽然你可以设置SGA的目标大小,但Oracle会根据其自动内存管理功能来调整实际的SGA大小。因此,重要的是要监控并确保数据库性能和资源使用是最佳的。来自GPT。

暂无图片 评论
暂无图片 有用 7
学习Oracle

如果采用的是ASMM管理的话,buffer cache和share pool应该是自动调整的,只要SGA_target设置成200G就行了,其他的就交给oracle了

暂无图片 评论
暂无图片 有用 2
情线
2024-02-02
不是ASMM是AMM
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏