4.6. 执行数据库完整性检查


目录服务器数据库完整性检查可以检测问题,如损坏元数据页面以及重复密钥的排序。如果出现问题,您可以重新索引数据库或恢复备份。

使用 dsctl dbverify 命令验证后端数据库的完整性。

流程

  1. 可选:列出实例的后端数据库:

    # dsconf <instance_name> backend suffix list
    dc=example,dc=com (userRoot)
    Copy to Clipboard Toggle word wrap
  2. 停止实例:

    # dsctl <instance_name> stop
    Copy to Clipboard Toggle word wrap
  3. 验证数据库。例如,要验证 userRoot 数据库,请输入:

    # dsctl <instance_name> dbverify userRoot
    [04/Feb/2022:13:11:02.453624171 +0100] - INFO - ldbm_instance_config_cachememsize_set - force a minimal value 512000
    [04/Feb/2022:13:11:02.465339507 +0100] - WARN - ldbm_instance_add_instance_entry_callback - ldbm instance userroot already exists
    [04/Feb/2022:13:11:02.468060144 +0100] - ERR - ldbm_config_read_instance_entries - Failed to add instance entry cn=userroot,cn=ldbm database,cn=plugins,cn=config
    [04/Feb/2022:13:11:02.471079045 +0100] - ERR - bdb_config_load_dse_info - failed to read instance entries
    [04/Feb/2022:13:11:02.476173304 +0100] - ERR - libdb - BDB0522 Page 0: metadata page corrupted
    [04/Feb/2022:13:11:02.481684604 +0100] - ERR - libdb - BDB0523 Page 0: could not check metadata page
    [04/Feb/2022:13:11:02.484113053 +0100] - ERR - libdb - /var/lib/dirsrv/slapd-instance_name/db/userroot/entryrdn.db: BDB0090 DB_VERIFY_BAD: Database verification failed
    [04/Feb/2022:13:11:02.486449603 +0100] - ERR - dbverify_ext - verify failed(-30970): /var/lib/dirsrv/slapd-<instance_name>/db/userroot/entryrdn.db
    dbverify failed
    Copy to Clipboard Toggle word wrap
  4. 如果验证过程报告了任何问题,请手动修复或恢复备份。
  5. 启动实例:

    # dsctl <instance_name> start
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat