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

名前
所在
説明
設定オプション
関連ファイル
関連項目
和訳