3.6. LDBM 数据库指令

此类别中的指令仅适用于 LDBM 后端数据库。也就是说,它们必须在 “database ldbm” 行之后,并且在任何其他 “database” 或 “backend” 行之前出现。有关 LDBM 配置指令的完整参考,请参阅 slapd-ldbm 的 manpage (man slapd-ldbm)。

cachesize <integer>

此指令指定 LDBM 后端数据库实例维护的内存缓存的大小(以条目数计)。

默认

cachesize 1000

dbcachesize <integer>

此指令指定与每个打开的索引文件关联的内存缓存的大小(以字节为单位)。如果底层数据库方法不支持,则此指令将被忽略,且不作任何提示。增加此数字会使用更多内存,但可以显著提高性能,尤其是在修改或构建索引期间。

默认

dbcachesize 100000

dbnolocking

此选项(如果存在)禁用数据库锁定。启用此选项可能会以牺牲数据安全性为代价来提高性能。

dbnosync

此选项使磁盘上的数据库内容在更改时不会立即与内存中的更改同步。启用此选项可能会以牺牲数据安全性为代价来提高性能。

directory <directory>

此指令指定包含数据库和相关索引的 LDBM 文件所在的目录。

默认

directory /usr/local/var/openldap-data

index {<attrlist> | default} [pres,eq,approx,sub,none]

此指令指定要为给定属性维护的索引。如果仅给定 <attrlist>,则维护默认索引。

示例

index default pres,eq
index uid
index cn,sn pres,eq,sub
index objectClass eq

第一行将要维护的默认索引集设置为 present 和 equality。第二行使 uid 属性类型维护默认的 (pres,eq) 索引集。第三行使 cn 和 sn 属性类型维护 present、equality 和 substring 索引。第四行使 objectClass 属性类型维护 equality 索引。

默认情况下,不维护任何索引。通常建议至少维护 objectClass 上的 equality 索引。

index objectClass eq

mode <integer>

此指令指定新创建的数据库索引文件应具有的文件保护模式。

默认

mode 0600