Oracle 等待事件 SGA: MMAN sleep for component shrink 官方解释,作用,如何使用及优化方法

本站中文解释

Oracle 事件 SGA:MMAN Sleep for Component Shrink 是一种调整 Oracle 的内存资源的过程中出现的事件。

此事件的出现表明 Oracle 数据库实例正在睡眠,等待 System Global Area(SGA) 组件尺寸的调整。该事件以 Event: MMAN sleep for component shrink 形式显示在警报日志中,并且仅当 Oracle 数据库是处于 Forcing Mode(force mode) 时,才会出现该事件。

SGA 是指存储Oracle 数据库数据及元数据的内存池。它包含了Oracle数据库的相关运行数据字典信息、PCBs(该连接的执行计划缓存)、日志缓冲区、Rocket buffers等。

处于 Force Mode的原因是:Oracle数据库为了实现自动内存调整功能,它将启用force mode(SGA resize mode)。处于此种模式的Oracle会尝试在特定的系统收缩SGA的组件(CBO同时需要重新生成相应的索引),以达到最优的内存分配。这种情况下,MMAN 会调整大小的 SGA 组件并且把它放回启动器(startup)时所设定的大小,唤醒Oracle 实例,也就是说 SGA:MMAN Sleep for Component Shrink 就是在此种情况下出现的事件。

Oracle 会尝试在央求收缩大小的系统处于自动调整模式后,会保证在改变的临界状态下对数据库和客户端请求的响应,减少执行开销和减少内存的使用,从而提升 Oracle 数据库的性能和吞吐量。

Force Mode 是可选择性地使用的,应用于在 CPU 专用状态下,不会有太多新的连接/会话或活动,及 Oracle 数据库处于特定状态。Force mode 必须仔细使用,因为会导致当前连接/会话和活动受到休眠影响,或者长期运行的某些非并发操作非常慢。

SGA:MMAN Sleep for Component Shrink 是一种持续的 Oracle 事件,用于调整 Oracle 的 SGA 组件。它可以用于自动分配内存,但使用时需要遵循规则,以免影响数据库的性能和吞吐量。

官方英文解释

MMAN to wait and post itself for satisfying an auto-tuned memory request while trying to fully free a component’s quiesced granules. In Release 10.1, the name of this event was ‘wait for SGA component shrink’.

Wait Time: 10 msec

Parameter Description

P1

component_id (corresponding to the memory pool)

P2

Current size in granules

P3

Target size in granules


数据运维技术 » Oracle 等待事件 SGA: MMAN sleep for component shrink 官方解释,作用,如何使用及优化方法