スケーラブルデータベースサーバ HiRDB Version 8 システム定義(Windows(R)用)

[目次][索引][前へ][次へ]

2.2.50 共用メモリに関するオペランド

224) SHMMAX 共用メモリセグメントサイズの上限値
〜<符号なし整数>(単位:メガバイト)
  • 32ビットモードの場合:((6〜2047))《200》
  • 64ビットモードの場合:((6〜4194304))《1024》
グローバルバッファ用の共用メモリセグメントサイズの上限値をメガバイト単位で指定します。
HiRDBはこのオペランドの指定値を上限としてグローバルバッファ用の共用メモリセグメントを確保します。サーバマシン内のRDエリアに割り当てるグローバルバッファサイズの合計がこのオペランドの値を超える場合は,複数の共用メモリセグメントを割り当てます。
HiRDBは開始時に1サーバ当たり最大16セグメントのグローバルバッファプール用共用メモリを確保します。グローバルバッファプールが使用している共用メモリセグメントの情報はpdlsコマンド(-d mem指定)によって確認できます。
《指定値の目安》
<32ビットモード>
  • SHMMAXを特に指定する必要はありません。ただし,pd_sysdef_default_optionオペランドにv6compatibleを指定している場合には,200を指定してください。
  • KFPH23005-Eメッセージ(エラーコード20)が出力される場合,マニュアル「HiRDB Version 8 メッセージ」を参照してKFPH23005-Eメッセージの対策に示されるSHMMAXの値に変更してください。
<64ビットモード>
  • グローバルバッファプール用共用メモリサイズが16GB以下の場合,SHMMAXを指定する必要はありません。
  • グローバルバッファプール用共用メモリサイズが16GBより大きい場合,SHMMAXの指定値に以下の式を満たす値を指定してください。
    (SHMMAXの指定値)×16=(グローバルバッファプール用共用メモリサイズ)
《注意事項》
  • グローバルバッファ動的変更機能を使用している場合,SHMMAXの指定値の変更は正常停止後のみできます。
    そのため,強制停止または計画停止後の再開始時にKFPH23005-Eメッセージ(エラーコード20)が発生し,SHMMAXの値の変更が必要な場合,マニュアル「HiRDB Version 8 メッセージ」のKFPH23005-Eメッセージ(エラーコード20)の表 項番3を参照して,SHMMAXの指定値を変更してください。
  • 共用メモリは,共用メモリファイルとしてHiRDB運用ディレクトリがあるディスクに確保されます。このため,ディスクの空き容量が十分でないと,ディスク容量不足になります。
  • 共用メモリをページファイルに割り当てる場合,ページファイル容量が十分でないと,ページファイル容量不足になります。
    共用メモリを割り当てる方法については,マニュアル「HiRDB Version 8 コマンドリファレンス」のpdntenvコマンドを参照してください。
  • 共用メモリのページ固定機能を使用する場合は,本オペランドにはラージページページ長の整数倍の値を指定してください。共用メモリのページ固定は以下の場合に使用されます。
    ・pd_dbbuff_attributeオペランドにfixedを指定してください。
    ・pd_max_resident_rdarea_noオペランドに1以上を指定ください。
    指定値がページ長の整数倍でない場合はHiRDBがページ長の整数倍の値に補正します。
  • 本オペランドを省略した場合,デフォルト値が仮定されます。また,本オペランドに指定可能範囲外の値を指定した場合,デフォルト値が仮定されたものとみなし,警告メッセージKFPH23011-Wを出力した後にHiRDB開始処理を続行します。
  • グローバルバッファプール用共用メモリが使用する管理領域はSHMMAXに指定したサイズで分割することができません。そのため,SHMMAX指定値には上記管理領域のサイズより大きい値を指定してください。グローバルバッファプール用共用メモリが使用する管理領域サイズの詳細はマニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
《ほかのオペランドとの関連》
このオペランドは次に示すオペランドと関連があります。
  • pd_dbbuff_modify
  • pdbuffer
  • pd_max_add_dbbuff_no
  • pd_max_add_dbbuff_shm_no
  • pd_sysdef_default_option(32ビットモードでv6compatibleを指定している場合,このオペランドの省略値は6になります)