Sun Java System Application Server Enterprise Edition 8.1 2005Q2 高可用性管理指南

配置共享内存和信号

安装 HADB 之前,必须配置共享内存和信号。此过程取决于您的操作系统。

Procedure在 Solaris 上配置共享内存和信号

  1. 以 root 用户身份登录。

  2. 配置共享内存。

    shmmax 的值设置为 HADB 主机上物理内存的大小。共享内存段的最大大小必须大于 HADB 数据库缓冲池的大小。例如,对于具有 2 GB(十六进制数 0x8000000)主内存的计算机,请将以下内容添加到 /etc/system 文件:


    set shmsys:shminfo_shmmax=0x80000000
     set shmsys:shminfo_shmseg=20

    在 Solaris 9 和更高版本上,shmsys:shminfo_shmseg 是过时的属性。

    shminfo_shmmax 设置为系统的内存总数(在十六进制记数法中,所显示的值 0x80000000 表示 2 GB 内存)。


    注 –

    使用内存大小的十六进制值指定 shmsys:shminfo_shmmax 的值。要确定主机的内存,请使用以下命令:


    prtconf | grep Memory

  3. 配置信号。

    检查 /etc/system 文件以查找信号配置条目。此文件可能已包含 semmnisemmnssemmnu 条目。例如:


    set semsys:seminfo_semmni=10
    set semsys:seminfo_semmns=60
    set semsys:seminfo_semmnu=30

    如果这些条目已存在,请在这些值上分别加上 16、128 和 1000。这样,上面示例中的条目将更改为:


    set semsys:seminfo_semmni=26
    set semsys:seminfo_semmns=188
    set semsys:seminfo_semmnu=1030

    如果 /etc/system 文件不包含这些条目,请将它们添加到该文件的结尾:


    set semsys:seminfo_semmni=16
    set semsys:seminfo_semmns=128
    set semsys:seminfo_semmnu=1000

    这足以满足在计算机上运行多达 16 个 HADB 节点的要求。有关设置超过 16 个节点的信息,请参见《Sun Java System Application Server Enterprise Edition 8.1 2005Q1 Performance Tuning Guide》中的 HADB 一章。

  4. 重新引导计算机。

Procedure在 Linux 上配置共享内存

  1. 以 root 用户身份登录。

  2. 编辑文件 /etc/sysctl.conf

  3. 设置 kernel.shmaxkernel.shmall 参数。

    kernel.shmax 参数定义了共享内存段的最大大小(以字节为单位)。kernel.shmall 参数设置了在系统上可以一次使用的共享内存的总数(以页为单位)。将这两个参数的值设为计算机上的物理内存量。请以十进制字节数指定该值。例如,对于具有 512 MB 物理内存的计算机:


    kernel.shmmax=536870912
     kernel.shmall=536870912
  4. 重新引导计算机。使用以下命令:

    sync; sync; reboot

适用于 Windows 的过程

Windows 并不需要任何特殊的系统设置。但是,如果要使用现有 J2SE 安装,请将 JAVA_HOME 环境变量设置为安装 J2SE 所在的位置。