Oracle 参数 DB_KEEP_CACHE_SIZE 官方解释,作用,如何配置最优化建议

本站中文解释

DB_KEEP_CACHE_SIZE 是Oracle 11g 及更高版本管理KEEP缓冲池的参数。它定义了KEEP缓冲池大小,值的范围是 0~2G。

KEEP缓冲池主要用来缓存FREELIST,但有时也可以缓存查询的中间数据。当表大小变化较大时,需要通过调整KEEP缓冲池大小以获得最佳性能,因此,设置pameter时应根据该表实际记录大小来调整。系统默认值为0,这意味着KEEP缓冲池不起作用。

KEEP缓冲池建议取值为6M-9M,这是一个经验值,可以根据具体情况调整。如果设置过大,会引起虚拟内存占用过多导致内存/内存工作集不足;如果设置过小,可能导致性能衰减,由于KEEP缓冲池尺寸太小,无法缓存所有的内容。

要设置KEEP缓冲池,需要分别在实例级别和数据库级别进行设置。改变KEEP缓冲池的大小需要重新启动实例,尽量使用 alter system 命令来设置参数,避免重制参数文件导致更多的工作量。

实例级别设置

①alter system set db_keep_cache_size=6m;

②shutdown immediate

③alert start

数据库级别设置

①alter system set db_keep_cache_size=6m scope=spfile

②shutdown immediate

③alert start

官方英文解释

DB_KEEP_CACHE_SIZE specifies the size of the KEEP buffer pool.

Property Description

Parameter type

Big integer

Syntax

DB_KEEP_CACHE_SIZE = integer [K | M | G]

Default value

0 (DB_KEEP_CACHE_SIZE is not configured by default)

Modifiable

ALTER SYSTEM

Modifiable in a PDB

No

Range of values

Minimum: 0 (values greater than zero are automatically modified to be either the granule size * number of processor groups, or 4 MB * number of CPUs, whichever is greater)

Maximum: operating system-dependent

Basic

No

The size of the buffers in the KEEP buffer pool is the primary block size (the block size defined by the DB_BLOCK_SIZE initialization parameter).

See Also:

  • “DB_RECYCLE_CACHE_SIZE”

  • Oracle Database
    Performance Tuning Guide
    for information on setting these parameters and on using multiple buffer pools


数据运维技术 » Oracle 参数 DB_KEEP_CACHE_SIZE 官方解释,作用,如何配置最优化建议