第 1 章 备份目录服务器

目录服务器中的备份包含以下文件:

  • 包含数据库索引属性的 LDIF 文件 dse_index.ldif
  • 包含实例配置属性的 LDIF 文件 dse_instance.ldif
  • 每个后端的一个目录,如 userRoot,其中包含数据库中定义的索引的 .db 文件
  • 事务日志文件 log memcached
  • 数据库版本文件 DBVERSION

请注意,目录服务器不支持备份单个数据库。

有关备份其他重要文件(如配置)的详情,请参阅 备份配置文件、证书数据库和自定义模式文件

与备份不同,您可以导出数据,如从 Directory Server 导出数据 中所述。使用导出功能,以 LDIF 格式从服务器导出特定数据,如子树。

1.1. 在实例运行时使用命令行备份所有数据库

要备份正在运行的 Directory 服务器实例的所有数据库,请使用 dsconf backup create 命令。

重要

当数据库从在线备份中恢复时,目录服务器会清理 changelog。因此,使用在线备份需要在数据库恢复后重新初始化副本。要避免重新初始化,请使用离线备份。

先决条件

  • dirsrv 用户在目标目录中具有写入权限。

    请注意,目录服务器默认使用自己的私有目录。因此,除非您禁用了 PrivateTmp systemd 指令,否则在 /var/tmp//tmp//root/ 目录下备份和导出会失败。

  • 目录服务器实例正在运行。

流程

  1. 备份所有数据库:

    # dsconf -D "cn=Directory Manager" ldap://server.example.com backup create
    The backup create task has finished successfully

    默认情况下,dsconf 将备份存储在名为 instance_name-YYYY_MM_DD_hh_mm_ss 的子目录中,保存在 /var/lib/dirsrv/slapd- instance_name /bak/ 目录中的名为instance_name-YYYY_MM_DD_hh_mm_ss 的子目录中。要指定不同的位置,请在命令中附加一个目录名称。

  2. 在备份过程中搜索 /var/log/dirsrv/slapd-instance_name/errors 日志。

其他资源