ページの先頭行へ戻る
Symfoware Server V12.1.0 導入ガイド(サーバ編)
FUJITSU Software

付録L カーネルパラメータの設定

設定パラメータとカーネルパラメータとの関係および計算式は、“PostgreSQL文書”の“カーネルリソースの管理”の表“System V IPCパラメータ”を使用してください。
また、共有メモリの使用量の計算には、“PostgreSQL文書”の“カーネルリソースの管理”の表“PostgreSQLの共有メモリ使用量”を参照してください。

インスタンスが複数ある場合は、すべてのインスタンスについてカーネルパラメータの評価を実施してください。例えば、システム全体の共有メモリセグメントの最大値(SHMMNI)であれば、すべてのインスタンスで求めた個数の合計値をカーネルパラメータに加算します。プロセス毎のセマフォの最大数(SEMMSL)であれば、すべてのインスタンスで求めたサイズのうちの最も大きい値と現在の値とを比較してから設定します。

注意

  • 表“PostgreSQLの共有メモリ使用量”の“共有ディスクバッファ”の“shared_buffers”の単位は、ブロック数です。もし、postgresql.confにバイト数で指定しているならば、その値をもって、この計算式と置き換えてください。

  • SHMMAXの計算誤りにより共有メモリが不足した場合には、shmgetシステムコールが“errno=22 (EINVAL)”で失敗したことを示すメッセージが出力されます。計算をやり直して、再設定してください。

System V IPC パラメータと各オペレーティングシステムのカーネルパラメータとの関係は以下のとおりです。

System

V IPC パラメータ

カーネルパラメータアクション

SHMMAX

kernel.shmmax

“現在値 < 計算値”ならば、計算値を設定

SHMMIN

対応するパラメータなし

  

SHMALL

kernel.shmall

“現在値 + 計算値”を指定

SHMSEG

対応するパラメータなし

  

SHMMNI

kernel.shmmni

“現在値 + 計算値”を指定

SEMMNI

kernel.semの第4パラメータ

“現在値 + 計算値”を指定

SEMMNS

kernel.semの第2パラメータ

“現在値 + 計算値”を指定

SEMMSL

kernel.semの第1パラメータ

“現在値 < 計算値”ならば、計算値を設定

SEMMAP

対応するパラメータなし

  

SEMVMX

対応するパラメータなし

  

備考1. kernel.shmallは、ページ指定です。
備考2. kernel.sem は、4個のパラメータを一度に指定します。このとき、第3パラメータには、設定前の値をそのまま指定してください。