瀏覽代碼

Use mdb over hdb

«The mdb backend to slapd(8) is the recommended primary backend for a
normal slapd database. It uses OpenLDAP's own Lightning Memory-Mapped
Database (LMDB) library to store data and is intended to replace the
Berkeley DB backends.

It supports indexing like the BDB backends, but it uses no caching and
requires no tuning to deliver maximum search performance. Like hdb, it
is also fully hierarchical and supports subtree renames in constant
time.»
http://www.openldap.org/doc/admin24/backends.html
Michael Faille 9 年之前
父節點
當前提交
1166325df6

+ 1 - 1
image/service/slapd/assets/config/bootstrap/ldif/02-security.ldif

@@ -1,4 +1,4 @@
-dn: olcDatabase={1}hdb,cn=config
+dn: olcDatabase={1}mdb,cn=config
 changetype: modify
 changetype: modify
 delete: olcAccess
 delete: olcAccess
 -
 -

+ 1 - 1
image/service/slapd/assets/config/bootstrap/ldif/03-memberOf.ldif

@@ -5,7 +5,7 @@ add: olcModuleLoad
 olcModuleLoad: memberof
 olcModuleLoad: memberof
 
 
 # Backend memberOf overlay
 # Backend memberOf overlay
-dn: olcOverlay={0}memberof,olcDatabase={1}hdb,cn=config
+dn: olcOverlay={0}memberof,olcDatabase={1}mdb,cn=config
 changetype: add
 changetype: add
 objectClass: olcOverlayConfig
 objectClass: olcOverlayConfig
 objectClass: olcMemberOf
 objectClass: olcMemberOf

+ 1 - 1
image/service/slapd/assets/config/bootstrap/ldif/04-refint.ldif

@@ -5,7 +5,7 @@ add: olcModuleLoad
 olcModuleLoad: refint
 olcModuleLoad: refint
 
 
 # Backend refint overlay
 # Backend refint overlay
-dn: olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
+dn: olcOverlay={1}refint,olcDatabase={1}mdb,cn=config
 changetype: add
 changetype: add
 objectClass: olcOverlayConfig
 objectClass: olcOverlayConfig
 objectClass: olcRefintConfig
 objectClass: olcRefintConfig

+ 1 - 1
image/service/slapd/assets/config/bootstrap/ldif/05-index.ldif

@@ -1,5 +1,5 @@
 # Add indexes
 # Add indexes
-dn: olcDatabase={1}hdb,cn=config
+dn: olcDatabase={1}mdb,cn=config
 changetype:  modify
 changetype:  modify
 replace: olcDbIndex
 replace: olcDbIndex
 olcDbIndex: uid eq
 olcDbIndex: uid eq

+ 1 - 1
image/service/slapd/assets/config/bootstrap/ldif/readonly-user/readonly-user-acl.ldif

@@ -1,4 +1,4 @@
-dn: olcDatabase={1}hdb,cn=config
+dn: olcDatabase={1}mdb,cn=config
 changetype: modify
 changetype: modify
 delete: olcAccess
 delete: olcAccess
 -
 -

+ 4 - 4
image/service/slapd/assets/config/replication/replication-disable.ldif

@@ -1,12 +1,12 @@
-# Delete sync replication on hdb
-dn: olcDatabase={1}hdb,cn=config
+# Delete sync replication on mdb
+dn: olcDatabase={1}mdb,cn=config
 changetype: modify
 changetype: modify
 delete: olcSyncRepl
 delete: olcSyncRepl
 -
 -
 delete: olcMirrorMode
 delete: olcMirrorMode
 
 
-# Delete syncprov on hdb
-dn: olcOverlay=syncprov,olcDatabase={1}hdb,cn=config
+# Delete syncprov on mdb
+dn: olcOverlay=syncprov,olcDatabase={1}mdb,cn=config
 changetype: delete
 changetype: delete
 
 
 # Delete sync replication on config
 # Delete sync replication on config

+ 4 - 4
image/service/slapd/assets/config/replication/replication-enable.ldif

@@ -26,15 +26,15 @@ add: olcSyncRepl
 add: olcMirrorMode
 add: olcMirrorMode
 olcMirrorMode: TRUE
 olcMirrorMode: TRUE
 
 
-# Add syncprov on hdb
-dn: olcOverlay=syncprov,olcDatabase={1}hdb,cn=config
+# Add syncprov on mdb
+dn: olcOverlay=syncprov,olcDatabase={1}mdb,cn=config
 changetype: add
 changetype: add
 objectClass: olcOverlayConfig
 objectClass: olcOverlayConfig
 objectClass: olcSyncProvConfig
 objectClass: olcSyncProvConfig
 olcOverlay: syncprov
 olcOverlay: syncprov
 
 
-# Add sync replication on hdb
-dn: olcDatabase={1}hdb,cn=config
+# Add sync replication on mdb
+dn: olcDatabase={1}mdb,cn=config
 changetype: modify
 changetype: modify
 add: olcSyncRepl
 add: olcSyncRepl
 {{ LDAP_REPLICATION_HOSTS_HDB_SYNC_REPL }}
 {{ LDAP_REPLICATION_HOSTS_HDB_SYNC_REPL }}

+ 2 - 1
image/service/slapd/startup.sh

@@ -66,6 +66,7 @@ if [ ! -e "$FIRST_START_DONE" ]; then
     log-helper info "Database and config directory are empty..."
     log-helper info "Database and config directory are empty..."
     log-helper info "Init new ldap server..."
     log-helper info "Init new ldap server..."
 
 
+    # Use mdb : http://www.openldap.org/doc/admin24/backends.html
     cat <<EOF | debconf-set-selections
     cat <<EOF | debconf-set-selections
 slapd slapd/internal/generated_adminpw password ${LDAP_ADMIN_PASSWORD}
 slapd slapd/internal/generated_adminpw password ${LDAP_ADMIN_PASSWORD}
 slapd slapd/internal/adminpw password ${LDAP_ADMIN_PASSWORD}
 slapd slapd/internal/adminpw password ${LDAP_ADMIN_PASSWORD}
@@ -74,7 +75,7 @@ slapd slapd/password1 password ${LDAP_ADMIN_PASSWORD}
 slapd slapd/dump_database_destdir string /var/backups/slapd-VERSION
 slapd slapd/dump_database_destdir string /var/backups/slapd-VERSION
 slapd slapd/domain string ${LDAP_DOMAIN}
 slapd slapd/domain string ${LDAP_DOMAIN}
 slapd shared/organization string ${LDAP_ORGANISATION}
 slapd shared/organization string ${LDAP_ORGANISATION}
-slapd slapd/backend string HDB
+slapd slapd/backend string MDB
 slapd slapd/purge_database boolean true
 slapd slapd/purge_database boolean true
 slapd slapd/move_old_database boolean true
 slapd slapd/move_old_database boolean true
 slapd slapd/allow_ldap_v2 boolean false
 slapd slapd/allow_ldap_v2 boolean false