SHMADD 和 EXTSHMADD 配置参数和内存利用率

SHMADD 配置参数指定数据库服务器动态添加到虚拟部分的每个共享内存增量的大小。EXTSHMADD 配置参数会指定用户定义的例程或 DataBlade 例程在用户定义的虚拟处理器中运行时所添加的虚拟扩展段的大小。确定增量的大小要权衡利弊。

添加共享内存使用 CPU 周期。每个增量越大,需要的增量数越少,但是可用于其他进程的内存也越少。通常首选增加较大的增量;但是当内存负载很重时(扫描率或页面调出率很高),较小的增量能使争用的程序之间更好地共享内存资源。

在 64 位操作系统上,SHMADD 的值范围为 10244294967296 KB;在 32 位操作系统上为 1024524288 KB。下表包含了根据物理内存的大小来设置 SHMADD 的建议。

内存大小 SHMADD 值
256 MB 或更少 8192 KB(缺省值)
257 - 512 MB 16,384 KB
大于 512 MB 32,768 KB

EXTSHMADD 的值范围与 SHMADD 的值范围相同。

注: 根据平台限制和 SHMMAX 内核参数的值,共享内存段可大至 4 太字节。使用 onstat -g seg 命令可显示数据库服务器当前正在使用的共享内存段数。