SLAPD-LDBM(5)

NAME
slapd-ldbm - LDBM backend to slapd

SYNOPSIS
/usr/local/etc/openldap/slapd.conf

DESCRIPTION
The LDBM backend to slapd(8) is the database backend which is easiest to configure. However, it does not offer the data durability features of the BDB backend. It uses Berkeley DB or GDBM to store data. It makes extensive use of indexing and caching to speed data access.

CONFIGURATION
These slapd.conf options apply to the LDBM backend database. That is, they must follow a "database ldbm" line and come before any subsequent "backend" or "database" lines. Other database options are described in the slapd.conf(5) manual page.

cachesize <integer>
    Specify the size in entries of the in-memory cache maintained by the LDBM backend database instance. The default is 1000 entries.

dbcachesize <integer>
    Specify the size in bytes of the in-memory cache associated with each open index file. If not supported by the underlying database method, this option is ignored without comment. The default is 100000 bytes.

dbnolocking
    Specify that no database locking should be performed. Enabling this option may improve performance at the expense of data security. Do NOT run any slap tools while slapd is running.

dbnosync
    Specify that on-disk database contents should not be immediately synchronized with in memory changes. Enabling this option may improve performance at the expense of data security.

dbsync <frequency> <maxdelays> <delayinterval>
    Flush dirty database buffers to disk every <seconds> seconds. Implies dbnosync (ie. indvidual updates are no longer written to disk). It attempts to avoid syncs during periods of peak activity by waiting <delayinterval> seconds if the server is busy, repeating this delay up to <maxdelays> times before proceeding. It is an attempt to provide higher write performance with some amount of data security. Note that it may still be possible to get an inconsistent database if the underlying engine fills its cache and writes out individual pages and slapd crashes or is killed before the next sync. <maxdelays> and <delayinterval> are optional and default to 12 and 5 respectively, giving a total elapsed delay of 60 seconds before a sync will occur. <maxdelays> may be zero, and <delayinterval> must be 1 or greater.

directory <directory>
    Specify the directory where the LDBM files containing this database and associated indexes live. A separate directory must be specified for each database. The default is /usr/local/var/openldap-data.

index {<attrlist>|default} [pres,eq,approx,sub,<special>]
    Specify the indexes to maintain for the given attribute (or list of attributes). Some attributes only support a subset of indexes. If only an <attr> is given, the indices specified for default are maintained. Note that setting a default does not imply that all attributes will be indexed. Also, for best performance, an eq index should always be configured for the objectClass attribute. A number of special index parameters may be specified. The index type sub can be decomposed into subinitial, subany, and subfinal indices. The special type notags (or nolang) may be specified to disallow use of this index by subtypes with tagging options (such as language options). The special type nosubtypes may be specified to disallow use of this index by named subtypes. Note: changing index settings requires rebuilding indices, see slapindex(8).

mode <integer>
    Specify the file protection mode that newly created database index files should have. The default is 0600.

ACCESS CONTROL
The ldbm backend honors access control semantics as indicated in slapd.access(5).

FILES

/usr/local/etc/openldap/slapd.conf
    default slapd configuration file

SEE ALSO
slapd.conf(5), slapd(8), slapadd(8), slapcat(8), slapindex(8).