3.4. 恢复包含复制条目的数据库

恢复供应商服务器时可能会出现几个情况:

  • 消费者服务器也会恢复。

    在不太可能的情况下,所有数据库都会同时从备份中恢复(因此数据同步),用户仍然与供应商同步,不需要执行任何其他操作。复制可在不中断的情况下恢复。

  • 只恢复供应商。

    如果只恢复供应商,或者消费者在不同时间从备份中恢复,请重新初始化供应商的用户来更新数据库中的数据。

  • changelog 条目尚未在供应商服务器上过期。

    如果因为进行数据库备份以来供应商的 changelog 没有过期,则恢复本地消费者并继续正常操作。只有在备份在超过最大更改期限属性 nsslapd-changelogmaxage ( cn=changelog,cn=database _name,cn=ldbm database,cn=plugins,cn=plugins,cn=plugins,cn=config 条目)设置的值时,才会发生此情况。

    目录服务器自动检测副本及其更改日志之间的兼容性。如果检测到不匹配,服务器会删除旧的 changelog 文件,并创建一个新的空更改文件。

  • 自本地备份起,更改日志条目已在供应商服务器上过期。

    如果 changelog 条目已过期,请重新初始化消费者。

例 3.1. 恢复目录服务器复制拓扑

要恢复复制环境中的所有服务器,由两个供应商和两个消费者服务器组成:

  1. 使用 restore 或 import 重新初始化第一个供应商。
  2. 使用复制在线初始化剩余的服务器:

    1. 从第一个供应商初始化第二个供应商。
    2. 初始化来自供应商的消费者。
  3. 在每个服务器上,显示复制状态以验证复制是否正常工作。

在恢复操作过程中,与恢复的数据库关联的 changelog 将被删除。将消息记录到供应商服务器的日志文件,表示需要重新初始化。