Migration from OpenLDAP LTB 2.4 to OpenLDAP LTB 2.5
Migration from OpenLDAP 2.4 to OpenLDAP 2.5 is quite easy. Here is a step by step documentation to follow if you are using LTB packages.
Backup
Use slapd-cli to backup data and configuration:
slapd-cli backup
slapd-cli backupconfig
Deploy new version
First, stop OpenLDAP process:
systemctl stop slapd
Then update package repository configuration, to use the openldap25 repository.
- For Debian: 
deb [arch=amd64] https://ltb-project.org/debian/openldap25/bullseye bullseye main
- For CentOS: 
[ltb-project]
name=LTB project packages
baseurl=https://ltb-project.org/rpm/openldap25/$releasever/$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-LTB-project
If openldap-ltb-ppm package is installed, remove it, as ppm will now be included in openldap-ltb-contrib-overlays package.
- For Debian: 
apt remove openldap-ltb-ppm
- For CentOS: 
yum remove openldap-ltb-ppm
And upgrade to latest version:
- For Debian: 
apt update && apt upgrade
- For CentOS: 
yum update
OpenLDAP 2.5 packages should now be installed
Configuration
Some changes are required in your configuration, depending on which feature to you use.
Edit the configuration backup LDIF file you generated at the first step:
- Remove built-in schema definition in - cn=schema,cn=configentry, keep only the 3 first lines:
dn: cn=schema,cn=config
objectClass: olcSchemaConfig
cn: schema
- Remove - ppolicyschema if present (it will now be loaded by the overlay), but do not remove the overlay if it was already in your configuration
- Replace parameter - olcMirrorModeby- olcMultiProvider
- Replace BDB/HDB configuration by MDB if you were still using these backends 
- Load all backends and overlays in - cn=modules,cn=config(they are no more compiled in the slapd binary), for example:
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/local/openldap/lib64/:/usr/local/openldap/libexec/openldap/
olcModuleLoad: {0}lastbind
olcModuleLoad: {1}pw-sha2
olcModuleLoad: {2}pw-pbkdf2
olcModuleLoad: {4}ppolicy
olcModuleLoad: {5}back_mdb
olcModuleLoad: {6}dynlist
olcModuleLoad: {7}syncprov
- Remove - explockoutoverlay if you used it and configure- pwdMinDelayand- pwdMaxDelayin your password policy definition.
Restore the updated configuration:
slapd-cli restoreconfig
Data
Restore data from the backup done at first step:
slapd-cli restore
Check the service
The systemd service name has changed from slapd to slapd-ltb, you can now get the status with:
systemctl status slapd-ltb