SLAPD-BDB
Section: File Formats (5)
Updated: 2005/01/24
Index
Return to Main Contents
名前
slapd-bdb - slapd の BDB バックエンド
所在
/usr/local/etc/openldap/slapd.conf
説明
slapd(8)
の BDB バックエンドは通常利用する slapd
データベースとして推奨するバックエンドです。
しかし、正しく設定するには LDBM バックエンドよりも注意が必要です。
これはデータを格納するために Sleepycat Berkely DB (BDB)
パッケージを使います。
データアクセスの性能を上げるために索引とキャッシュを多用します。
このバックエンドに関するオプションは Berkeley DB の環境設定ファイル
DB_CONFIG
に設定するオプションを完全に充たすことを目指しています。
DB_CONFIG
の設定オプションについては Berkeley DB の文書を参照してください。
バックエンドの設定と
DB_CONFIG
の設定が重複する場合、
DB_CONFIG
の設定が優先します。
設定オプション
ここにあげる
slapd.conf
オプションは BDB バックエンドデータベースに指定できます。
すなわち、これらのオプションは "database bdb"
とある行の後で、次の "backend" あるいは "database"
行が現れる前になければなりません。
この他に指定できるデータベースオプションについては
slapd.conf(5)
マニュアルページを参照してください。
- cachesize <integer>
-
BDB バックエンドデータベースの実体によって管理される
メモリ内キャッシュのエントリ数を指定します。
デフォルトは 1000 エントリです。
- checkpoint <kbyte> <min>
-
データベース更新についてのトランザクションログをチェックポイントする
頻度を指定します。
チェックポイントは、データベースバッファをディスクにフラッシュし、
チェックポイントレコードをログに書き出します。
データベースの更新で、直前のチェックポイントから <kbyte>
のデータが書き込まれたか <min> 分が経過するとチェックポイントが起きます。
2つの引数ともデフォルトは0で、この場合にはチェックポインントが起きません。
注記:このディレクティブの指定によるチェックポイントは、データベース更新
の実行についてのみ発生します。もし他の状況においてもチェックポイントが
発生するようにしたければ、db_checkpoint(1) か他の外部プロセスを用いて
データベースのチェックポイントを起こすようにしてください。
より詳しくは Berkeley DB reference guide を参照してください。
- dbnosync
-
メモリ内の変更をディスク上の内容とすぐには同期をとらないようにします。
このオプションは、データのセキュリティを犠牲にしてでも性能を上げたい
場合に使います。
- directory <directory>
-
データベースと関連する索引を含んだ LDBM
ファイル群を置くディレクトリを指定します。
データベースごとに別々のディレクトリを指定しなければなりません。
デフォルトは
/usr/local/var/openldap-data
です。
- dirtyread
-
更新しているがまだコミットしていないデータの読み込みを許可します。
通常、トランザクションは他の操作がコミットされていないデータへの
アクセスすることを防ぐために分離されています。
このオプションは性能を改善するかもしれませんが、
データが後でアボートされるトランザクションのものである場合には
矛盾する結果を返す可能性もあります。
そのような場合には更新データが廃棄されるので、
後続の検索は異なる結果を返すことになります。
- idlcachesize <integer>
-
メモリ内索引キャッシュのサイズを索引数単位で指定します。
デフォルトは 0 です。
この値を大きくすると、索引のついたエントリの頻繁な検索が高速化します。
- index {<attrlist>|default} [pres,eq,approx,sub,<special>]
-
与えた属性(あるいは属性のリスト)について管理する索引を指定します。
属性によっては索引のサブセットのみをサポートします。
属性(あるいは属性のリスト)だけが与えられた場合、default
で指定した索引が管理されます。
default の設定は、すべての属性に索引が付くことを意味するものでは無い
ことに注意してください。また性能を最善とするために
eq
索引を常に
objectClass
属性について設定するようにしてください。
いくつかの特殊な索引パラメータを与えることができます。
索引種別
sub
は、
subinitial,
subany,
subfinal
索引に分解できます。
特殊種別
nolang
は、この索引を言語サブタイプで使えないように指定します。
特殊種別
nosubtypes
は、この索引を名前つきサブタイプで使えないようにします。
注記: 索引の設定を変更した場合には索引の再構成が必要になります。
索引の再構成については
slapindex(8)
を参照してください。
- lockdetect {oldest|youngest|fewest|random|default}
-
デッドロックが検出された場合にどのトランザクションアボートするかを指定します。
デフォルトは random です。
- mode <integer>
-
新たに作成するデータベース索引ファイルが持つ
ファイル保護モードを指定します。デフォルトは 0600 です。
- searchstack <depth>
-
検索フィルタの評価で使うスタックの深さを指定します。
検索フィルタは入れ子の AND / OR 節に対応するためにスタック上で評価されます。
スタックは各サーバスレッドごとに割り当てられます。
スタックの深さは、追加のメモリ確保を要求せずにどれだけ複雑な
フィルタを評価できるかを決めます。
フィルタの入れ子の深さが検索スタックの深さより大きい場合には、
その検索操作のための特別のスタックを確保します。
このような領域確保はサーバの性能に悪い影響を与えますが、
大き過ぎるスタックを指定することも巨大なメモリの消費につながります。
検索スタックは各棚で 512K バイトを使います。
デフォルトのスタックの深さは 16 であるので、1スレッドあたり 8MB
を使います。
- shm_key <integer>
-
共有メモリ BDB 環境のキーを指定します。
デフォルトで BDB 環境はメモリマップドファイルを利用します。
このオプションの指定が 0 でなければ、その値を
環境を保持する共有メモリ領域を識別するキーとして利用します。
- sessionlog <sid> <limit>
-
syncrepl 複製プロバイダサーバのセッションログストアを指定します。
このセッションログは
<sid>
で識別される複製内容について調査した情報を持ちます。
セッションログストア内のエントリ数は
<limit>
で制限します。
制限を超えたエントリは FIFO 順でストアから取り除かれます。
<sid>
と
<limit>
の値はどちらの負でない整数です。
<sid>
の値は3桁以内にしてください。
syncrepl 複製エンジンとセッションログストアを使って複製される
slapd ディレクトリサービスを設定する方法については「OpenLDAP 管理者ガイド」
に詳しく説明されています。
関連ファイル
- /usr/local/etc/openldap/slapd.conf
-
デフォルトの slapd 設定ファイル
- DB_CONFIG
-
Berkeley DB 設定ファイル
関連項目
slapd.conf(5),
slapd(8),
slapadd(8),
slapcat(8),
slapindex(8),
Berkeley DB 文書.
和訳
稲地 稔 <inachi@kkd.biglobe.ne.jp>
Index
- 名前
-
- 所在
-
- 説明
-
- 設定オプション
-
- 関連ファイル
-
- 関連項目
-
- 和訳
-