2.5. 在实例离线时重新创建索引
您可以使用 dsctl db2index 工具在实例离线期间重新索引整个数据库。
前提条件
-
您创建了索引条目,或向现有的
userRoot数据库添加额外的索引类型。
流程
关闭实例:
# dsctl instance_name stop重新创建索引:
对于数据库中的所有索引,请运行:
# dsctl instance_name db2index [23/Feb/2023:05:38:28.034826108 -0500] - INFO - check_and_set_import_cache - pagesize: 4096, available bytes 1384095744, process usage 27467776 [23/Feb/2023:05:38:28.037952026 -0500] - INFO - check_and_set_import_cache - Import allocates 540662KB import cache. [23/Feb/2023:05:38:28.055104135 -0500] - INFO - bdb_db2index - userroot: Indexing attribute: aci ... [23/Feb/2023:05:38:28.134350191 -0500] - INFO - bdb_db2index - userroot: Finished indexing. [23/Feb/2023:05:38:28.151907852 -0500] - INFO - bdb_pre_close - All database threads now stopped db2index successful对于特定的属性索引,请运行:
# dsctl instance_name db2index userRoot --attr aci cn givenname以下命令为ci、
cn和givenname属性重新创建索引。请注意,如果没有指定数据库,命令会为所有属性重新创建索引。
有关
dsctl(离线)命令的更多信息,请运行:# dsctl instance_name db2index --help
启动实例:
# dsctl instance_name start
验证
列出
userRoot数据库的索引设置:# dsconf -D "cn=Directory Manager" ldap://server.example.com backend index list userRoot