所以我的服务器崩溃了并且我的备份已经有几个星期了 :(。所以......
我有可以在 /var/lib/ldap 中找到的旧文件
我如何恢复我的数据库,或将其导出到 ldif 文件中。
感谢 Zlatko 的一切
答案1
我假设这里有一个 openldap 实例,但是斯巴达猫实用程序可能会很有用。几年前,我运行了一个 ldap 实例,它经常会破坏其索引,因此斯巴达猫将数据库复制到一个大的 ldif 文件,移出 db 文件,然后打耳光从 ldif 重新生成数据库。
答案2
我们的一台机器运行着第三方系统,该系统使用 LDAP 进行身份验证,在此之前,它的 LDAP 设置已经发生了变化(我从来没有解决过如何因为通常没有我可以解释的不优雅的停止)。
以下方法始终有效:
- 确保 ldap 守护进程已停止:
/etc/init.d/ldap stop
- 备份当前状态以防万一:
cd /var/lib/ldap-dpp/
rmdir -rfv /home/tmp_ldap/
mkdir /home/tmp_ldap
cp * /home/tmp_ldap/ -av
- 运行恢复工具来重新运行/清除日志中的交易:
/usr/sbin/slapd_db_recover -v
- 重新启动 ldap 服务:
/etc/init.d/ldap start
(当然,用适合你系统的正确路径替换所有路径)
如果失败,您可以回滚第 2 步中的备份,准备尝试其他方法。在采取任何措施修复问题之前,最好先进行完整的系统备份,以防修复尝试导致情况恶化。