LDAP data import export: Difference between revisions
Line 68: | Line 68: | ||
</pre> | </pre> | ||
* Import the production LDAP database | * Import the production LDAP database. The last argument is the full path to the data export file: | ||
Prior to ZCS 8.0.2: | Prior to ZCS 8.0.2: |
Revision as of 20:18, 13 February 2013

Article Information |
---|
This article applies to the following ZCS versions. |
Zimbra OpenLDAP Server
Data export
Zimbra ships with a utility to export the configuration and main databases as /opt/zimbra/libexec/zmslapcat. It takes a destination directory as an argument for where to store the exported data. A timestamped export of the database will be created. It is safe to run zmslapcat while the LDAP server is running.
Example of main database export:
/opt/zimbra/libexec/zmslapcat /tmp
Example of configuration database export:
/opt/zimbra/libexec/zmslapcat -c /tmp
Example of an accesslog database export (8.0.2 and later):
/opt/zimbra/libexec/zmslapcat -a /tmp
Data import
To import data, the existing database will need to be deleted. You must have a valid LDIF data export to use for import. If you delete the current database off of the disk, there will be no way to recover it from that system.
Preparing for data import
As the Zimbra user:
- Stop slapd
ldap stop
- ZCS 6 and 7: Clean up the old database and move it to a new location
cd /opt/zimbra/data/ldap/hdb/db /opt/zimbra/bdb/bin/db_recover cd ../.. mv hdb hdb.old
- ZCS 8 and later: Clean up the old database and move it to a new location
cd /opt/zimbra/data/ldap mv mdb mdb.old
- ZCS 6 and 7: Create the new directory structure and restore database tuning
mkdir -p hdb/db mkdir -p hdb/logs cd hdb/db cp ../../hdb.old/db/DB_CONFIG .
- ZCS 8 and later: Create the new directory structure:
mkdir -p mdb/db
- Reloading the config db should rarely be necessary (unless you customized the config). To do so though and only if necessary, you would need to clear the config/ directory and import the config data:
cd /opt/zimbra/data/ldap mv config config.bak mkdir config
- ZCS 8: Reloading the accesslog DB would only apply to a master or multi-master scenario. If necessary:
cd /opt/zimbra/data/ldap mv acccesslog accesslog.old mkdir -p accesslog/db
Importing the LDAP data
As the Zimbra user:
- If the config data had been removed (if /opt/zimbra/data/ldap/config is empty), import the LDAP config data:
Prior to ZCS 8.0.2:
/opt/zimbra/openldap/sbin/slapadd -q -n 0 -F /opt/zimbra/data/ldap/config -cv -l /tmp/ldap-config.bak
ZCS 8.0.2 or later:
/opt/zimbra/libexec/zmslapadd -c /tmp/ldap-config.bak
- Import the production LDAP database. The last argument is the full path to the data export file:
Prior to ZCS 8.0.2:
/opt/zimbra/openldap/sbin/slapadd -q -b "" -F /opt/zimbra/data/ldap/config -l /tmp/ldap.bak
ZCS 8.0.2 or later:
/opt/zimbra/libexec/zmslapadd /tmp/ldap.bak
- Import the accesslog LDAP database via the zmslapadd command. The last argument is the full path to the export:
ZCS 8.0.2 or later:
/opt/zimbra/libexec/zmslapadd -a /tmp/ldap-accesslog.bak
It may be helpful to review OpenLDAP Performance Tuning Wiki first to see if there are adjustments to the DB_CONFIG file that are desired prior to import.