6.3. 维护特定数据库的索引
目录服务器中的每个数据库都有自己的索引。您可以使用 dsconf
实用程序或 Web 控制台创建、更新和删除索引。
6.3.1. 使用命令行维护特定数据库的索引 复制链接链接已复制到粘贴板!
您可以使用 dsconf
工具来使用命令行维护索引设置。
流程
例如,要将
roomNumber
属性添加到带有索引类型eq
和sub
的userRoot
数据库的索引中,请输入:dsconf <instance_name> backend index add --attr roomNumber --index-type eq --index-type sub --reindex userRoot
# dsconf <instance_name> backend index add --attr roomNumber --index-type eq --index-type sub --reindex userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow --reindex
选项会导致目录服务器自动重新索引数据库。例如,要将
pres
索引类型添加到userRoot
数据库中roomNumber
属性的索引设置中,请输入:dsconf <instance_name> backend index set --attr roomNumber --add-type pres userRoot
# dsconf <instance_name> backend index set --attr roomNumber --add-type pres userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如,要从
userRoot
数据库中roomNumber
属性的索引设置中删除pres
索引类型,请输入:dsconf <instance_name> backend index set --attr roomNumber --del-type pres userRoot
# dsconf <instance_name> backend index set --attr roomNumber --del-type pres userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如,要从
userRoot
数据库中的索引中删除roomNumber
属性,请输入:dsconf <instance_name> backend index delete --attr roomNumber userRoot
# dsconf <instance_name> backend index delete --attr roomNumber userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出
userRoot
数据库的索引设置:dsconf <instance_name> backend index list userRoot
# dsconf <instance_name> backend index list userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.3.2. 在实例离线时重新创建索引 复制链接链接已复制到粘贴板!
您可以使用 dsctl db2index
实用程序在实例离线时重新索引整个数据库。
先决条件
-
您创建了索引条目,或向现有的
userRoot
数据库添加了额外的索引类型。
流程
关闭实例:
dsctl <instance_name> stop
# dsctl <instance_name> stop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新创建索引:
对于数据库中的所有索引,请运行:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于特定属性索引,请运行:
dsctl <instance_name> db2index userRoot --attr aci cn givenname
# dsctl <instance_name> db2index userRoot --attr aci cn givenname
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下命令为
aci
、cn
和givenname
属性重新创建索引。请注意,如果没有指定数据库,命令会为所有属性重新创建索引。
有关
dsctl
(离线)命令的更多信息,请运行:dsctl <instance_name> db2index --help
# dsctl <instance_name> db2index --help
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
启动实例:
dsctl <instance_name> start
# dsctl <instance_name> start
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出
userRoot
数据库的索引设置:dsconf <instance_name> backend index list userRoot
# dsconf <instance_name> backend index list userRoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.3.3. 使用 Web 控制台维护特定数据库的索引 复制链接链接已复制到粘贴板!
您可以使用 Web 控制台在 Directory Server 中维护索引设置。
先决条件
- 在 web 控制台中登录到实例。
流程
导航到
。 在索引中添加属性:
- 点 。
-
在
Select An Attribute
字段中输入属性名称。 - 选择索引类型。
- 在创建后选择 Index 属性。
- 点 。
更新属性的索引设置:
- 单击属性旁边的溢出菜单,然后选择 Edit Index。
- 根据您的需要更新索引设置。
- 在创建后选择 Index 属性。
- 点 。
从索引中删除属性:
- 单击属性旁边的溢出菜单,然后选择 Delete Index。
- 选择 Yes, I am sure,然后点 。
- 在 Reindex Suffix。 菜单中,选择
验证
-
导航到
,再验证索引设置是否反映了您所做的更改。