服务器崩溃后Ldap数据库恢复

所以我的服务器崩溃了,我的备份是几个星期老:(所以….

我有可以在/ var / lib / ldap中find的旧文件

我怎样才能恢复我的数据库,或导出他们在一个ldif文件。

Tnx所有Zlatko

我在这里假设一个openldap实例,但slapcat实用程序可能会certificate是有用的。 几年前,我运行一个ldap实例,经常炸毁它的索引,所以很常见的是将数据库放到一个大的ldif文件中,移出db文件,然后slapadd从ldif重新生成db。

我们的一台运行第三方系统的机器在使用LDAP进行身份validation之前,已经破坏了它的LDAP设置(我从来没有研究过,因为通常没有我可以考虑的无懈可击的站点)。

以下一直对它进行分类:

  1. 确保ldap守护进程停止:
    /etc/init.d/ldap stop
  2. 以防万一:
    cd /var/lib/ldap-dpp/
    rmdir -rfv /home/tmp_ldap/
    mkdir /home/tmp_ldap
    cp * /home/tmp_ldap/ -av
  3. 运行恢复工具重新运行/清除日志中的事务:
    /usr/sbin/slapd_db_recover -v
  4. 重新启动ldap服务:
    /etc/init.d/ldap start

(当然,用你的系统replace正确的path)

如果失败,则从步骤2开始备份以回滚以准备尝试其他方法。 在采取任何措施解决问题之前,现在可能需要进行全面的系统备份,以防万一解决问题的尝试使事情变得更糟。