]> git.sur5r.net Git - openldap/blob - doc/man/man5/slapd-bdb.5
Happy new year
[openldap] / doc / man / man5 / slapd-bdb.5
1 .TH SLAPD-BDB 5 "RELEASEDATE" "OpenLDAP LDVERSION"
2 .\" Copyright 1998-2003 The OpenLDAP Foundation All Rights Reserved.
3 .\" Copying restrictions apply.  See COPYRIGHT/LICENSE.
4 .\" $OpenLDAP$
5 .SH NAME
6 slapd-bdb \- BDB backend to slapd
7 .SH SYNOPSIS
8 ETCDIR/slapd.conf
9 .SH DESCRIPTION
10 The BDB backend to
11 .BR slapd (8)
12 is the recommended backend for a normal slapd database.
13 It uses the Sleepycat BerkelyDB package to store data.
14 It makes extensive use of indexing and caching to speed data access.
15 .SH CONFIGURATION
16 These
17 .B slapd.conf
18 options apply to the BDB backend database.
19 That is, they must follow a "database bdb" line and come before any
20 subsequent "backend" or "database" lines.
21 Other database options are described in the
22 .BR slapd.conf (5)
23 manual page.
24 .TP
25 .B cachesize <integer>
26 Specify the size in entries of the in-memory cache maintained 
27 by the BDB backend database instance.
28 The default is 1000 entries.
29 .TP
30 .B checkpoint <kbyte> <min>
31 Specify the frequency for checkpointing the database transaction log.
32 A checkpoint operation flushes the database buffers to disk and writes
33 a checkpoint record in the log.
34 The checkpoint will occur if either <kbyte> data has been written or
35 <min> minutes have passed since the last checkpoint.
36 Both arguments default to zero, in which case they are ignored.
37 See the Berkeley DB reference guide for more details.
38 .TP
39 .B dbnosync
40 Specify that on-disk database contents should not be immediately
41 synchronized with in memory changes.
42 Enabling this option may improve performance at the expense of data
43 security.
44 .TP
45 .B directory <directory>
46 Specify the directory where the BDB files containing this database and
47 associated indexes live.
48 A separate directory must be specified for each database.
49 The default is
50 .BR LOCALSTATEDIR/openldap-data .
51 .TP
52 .B dirtyread
53 Allow reads of modified but not yet committed data.
54 Usually transactions are isolated to prevent other operations from
55 accessing uncommitted data.
56 This option may improve performance, but may also return inconsistent
57 results if the data comes from a transaction that is later aborted.
58 In this case, the modified data is discarded and a subsequent search
59 will return a different result.
60 .TP
61 .B
62 index {<attrlist>|default} [pres,eq,approx,sub,<special>]
63 Specify the indexes to maintain for the given attribute (or
64 list of attributes).
65 Some attributes only support a subset of indexes.
66 If only an <attr> is given, the indices specified for \fBdefault\fR
67 are maintained.
68 Note that setting a default does not imply that all attributes will be
69 indexed.
70
71 A number of special index parameters may be specified.
72 The index type
73 .B sub
74 can be decomposed into
75 .BR subinitial ,
76 .BR subany ,\ and
77 .B subfinal
78 indices.
79 The special type
80 .B nolang
81 may be specified to disallow use of this index by language subtypes.
82 The special type
83 .B nosubtypes
84 may be specified to disallow use of this index by named subtypes.
85 Note: changing index settings requires rebuilding indices, see
86 .BR slapindex (8).
87 .TP
88 .B lockdetect {oldest|youngest|fewest|random|default}
89 Specify which transaction to abort when a deadlock is detected.
90 The default is the same as
91 .BR random .
92 .TP
93 .B mode <integer>
94 Specify the file protection mode that newly created database 
95 index files should have.
96 The default is 0600.
97 .TP
98 .B searchstack <depth>
99 Specify the depth of the stack used for search filter evaluation.
100 Search filters are evaluated on a stack to accomodate nested AND / OR
101 clauses. An individual stack is assigned to each server thread.
102 The depth of the stack determines how complex a filter can be
103 evaluated without requiring any additional memory allocation. Filters that
104 are nested deeper than the search stack depth will cause a separate
105 stack to be allocated for that particular search operation. These
106 allocations can have a major negative impact on server performance,
107 but specifying too much stack will also consume a great deal of memory.
108 Each search stack uses 512K bytes per level. The default stack depth
109 is 16, thus 8MB per thread is used.
110 .SH FILES
111 .TP
112 ETCDIR/slapd.conf
113 default slapd configuration file
114 .SH SEE ALSO
115 .BR slapd.conf (5),
116 .BR slapd (8),
117 .BR slapadd (8),
118 .BR slapcat (8),
119 .BR slapindex (8).