10.5. 使用命令行设置 DN 缓存大小
目录服务器使用 entryrdn
索引将可分辨名称(DN)和 relative distinguished name (RDN)与条目关联。它使服务器能够有效地重命名子树、移动条目和执行 moddn
操作。服务器使用 DN 缓存缓存 entryrdn
索引的内存中表示,以避免昂贵的文件 I/O 和转换操作。
如果您不使用自动调整功能(尤其是对于最佳性能),但没有限制重命名条目和移动操作,请将 DN 缓存设置为启用目录服务器在数据库中缓存所有 DN 的大小。
如果 DN 不在缓存中,Directory 服务器会从 entryrdn.db
索引数据库文件读取 DN,并将 DN 从磁盘上的格式转换为内存中格式。存储在缓存中的 DNS 可让服务器跳过磁盘 I/O 和转换步骤。
流程
显示后缀及其对应的后端:
# dsconf -D "cn=Directory Manager" ldap://server.example.com suffix list dc=example,dc=com (userroot)
这个命令显示每个后缀旁的后端数据库名称。下一步需要后缀的数据库名称。
设置 DN 缓存大小:
# dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix set --dncache-memsize=20971520 userRoot
这个命令将
userRoot
数据库的 DN 缓存设置为 20MB。重启实例:
# dsctl instance_name restart