4.4. 数据库插件属性
数据库插件也组织在信息树中,如 图 4.1 “数据库插件” 所示。
图 4.1. 数据库插件
数据库实例使用的所有插件技术都存储在 cn=ldbm 数据库
插件节点上。本节以 cn=ldbm database,cn=plugins,cn=config
信息树以粗体显示每个节点的附加属性信息。
本节介绍所有实例通用的全局配置属性,存储在 cn=config,cn=ldbm database,cn=plugins,cn=config
tree 节点上。
4.4.1.1. nsslapd-backend-implement 复制链接链接已复制到粘贴板!
nsslapd-backend-implement
参数定义数据库后端服务器使用。
目录服务器目前只支持 Berkeley 数据库(BDB)。因此,您无法将此参数设置为不同的值。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | bdb |
默认值 | bdb |
语法 | 目录字符串 |
示例 | nsslapd-backend-implement: bdb |
4.4.1.2. nsslapd-backend-opt-level 复制链接链接已复制到粘贴板!
这个参数可以触发实验代码以提高写入性能。
可能的值:
-
0
:禁用参数。 -
1:
在事务过程中,复制更新向量不会写入数据库 -
2
:更改获取后端锁定并启动事务的顺序 -
4
:将代码从事务中移出。
所有参数都可以合并。例如 7
会启用所有最佳功能。
这个参数是实验性的。除非特别被红帽支持告知,否则请勿更改其值。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 0 | 1 | 2 | 4 |
默认值 | 0 |
语法 | 整数 |
示例 | nsslapd-backend-opt-level: 0 |
4.4.1.3. nsslapd-directory 复制链接链接已复制到粘贴板!
此属性指定数据库实例的绝对路径。如果手动创建数据库实例,则必须包含此属性,这在 Directory Server Console 中默认设置(可修改)。创建数据库实例后,请勿修改此路径,因为更改风险阻止服务器访问数据。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 数据库实例的任何有效绝对路径 |
默认值 | |
语法 | DirectoryString |
示例 | nsslapd-directory: /var/lib/dirsrv/slapd-instance/db |
4.4.1.4. nsslapd-exclude-from-export 复制链接链接已复制到粘贴板!
此属性包含在导出数据库时从条目中排除的属性名称列表。这主要用于某些特定于服务器实例的配置和操作属性。
不要删除此属性的任何默认值,因为这可能会影响服务器性能。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的属性 |
默认值 | entrydn entryid dncomp parentid numSubordinates entryusn |
语法 | DirectoryString |
示例 | nsslapd-exclude-from-export: entrydn entryid dncomp parentid numSubordinates entryusn |
4.4.1.5. nsslapd-db-transaction-wait 复制链接链接已复制到粘贴板!
如果您启用 nsslapd-db-transaction-wait
参数,目录服务器不会启动事务并等待锁定资源可用。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-db-transaction-wait: off |
4.4.1.6. nsslapd-db-private-import-mem 复制链接链接已复制到粘贴板!
nsslapd-db-private-import-mem
参数管理目录服务器是否使用私有内存来分配数据库导入的区域和 mutexes。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | on |
语法 | DirectoryString |
示例 | nsslapd-db-private-import-mem: on |
4.4.1.7. nsslapd-db-deadlock-policy 复制链接链接已复制到粘贴板!
nsslapd-db-deadlock-policy
参数设置 libdb
library-internal deadlock 策略。
只有红帽支持指示时更改此参数。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 0-9 |
默认值 | 0 |
语法 | DirectoryString |
示例 | nsslapd-db-deadlock-policy: 9 |
4.4.1.8. nsslapd-idl-switch 复制链接链接已复制到粘贴板!
nsslapd-idl-switch
参数设置 IDL 格式目录服务器使用。请注意,红帽不再支持旧的 IDL 格式。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 新 | 旧 |
默认值 | new |
语法 | 目录字符串 |
示例 | nsslapd-idl-switch: new |
4.4.1.9. nsslapd-idlistscanlimit 复制链接链接已复制到粘贴板!
默认情况下,这个与性能相关的属性指定搜索在搜索操作期间搜索的条目 ID 数量。对于 32 位签名整数,尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。建议保留默认值以提高搜索性能。
详情请查看以下相应部分:
此参数可以在服务器运行时更改,新值将影响后续搜索。
对应的 user-level 属性是 nsIDListScanLimit
。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 100 到最大 32 位整数值(2147483647)条目 ID |
默认值 | 2147483646 |
语法 | 整数 |
Example | nsslapd-idlistscanlimit: 50000 |
4.4.1.10. nsslapd-lookthroughlimit 复制链接链接已复制到粘贴板!
此与性能相关的属性指定 Directory 服务器在响应搜索请求时检查候选条目时检查的最大条目数。但是,目录管理器 DN 默认是无限的,覆盖此处指定的任何其他设置。值得注意,对于这个限制,基于绑定的资源限值可以正常工作,这意味着,如果条目中存在 operational 属性 nsLookThroughLimit
的值,用户绑定绑定,默认限制会被覆盖。对于 32 位签名的整数,尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | -1 在条目中最大 32 位整数(其中 -1 代表无限) |
默认值 | 5000 |
语法 | 整数 |
示例 | nsslapd-lookthroughlimit: 5000 |
4.4.1.11. nsslapd-mode 复制链接链接已复制到粘贴板!
此属性指定用于新创建的索引文件的权限。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 |
任何四位八进制数。但是,建议使用模式 |
默认值 | 600 |
语法 | 整数 |
示例 | nsslapd-mode: 0600 |
4.4.1.12. nsslapd-pagedidlistscanlimit 复制链接链接已复制到粘贴板!
此与性能相关的属性指定搜索的条目 ID 数,特别是使用简单页面结果控制的搜索操作。
此属性的工作方式与 nsslapd-idlistscanlimit
属性相同,但它只适用于使用简单页面的结果控制进行搜索。
如果此属性不存在或设置为零,则使用 nsslapd-idlistscanlimit
进行页化搜索和非页搜索。
对应的 user-level 属性是 nsPagedIDListScanLimit
。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | -1 在条目中最大 32 位整数(其中 -1 代表无限) |
默认值 | 0 |
语法 | 整数 |
示例 | nsslapd-pagedidlistscanlimit: 5000 |
4.4.1.13. nsslapd-pagedlookthroughlimit 复制链接链接已复制到粘贴板!
此与性能相关的属性指定在检查使用简单页面结果控制的候选条目时,Directory 服务器将检查的最大条目数。
此属性的工作方式与 nsslapd-lookthroughlimit
属性相同,但它只适用于使用简单页面结果控制进行搜索。
如果此属性不存在或设置为零,则使用 nsslapd-lookthroughlimit
进行页化搜索和非页搜索。
对应的 user-level 属性是 nsPagedLookThroughLimit
。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | -1 在条目中最大 32 位整数(其中 -1 代表无限) |
默认值 | 0 |
语法 | 整数 |
示例 | nsslapd-pagedlookthroughlimit: 25000 |
4.4.1.14. nsslapd-rangelookthroughlimit 复制链接链接已复制到粘贴板!
此与性能相关的属性指定 Directory 服务器在响应范围搜索请求时检查候选条目时的最大条目数。
范围搜索使用运算符设置括号,以搜索和返回目录中整个条目子集。例如,这会搜索在 1 月 1 日午夜之后修改的每个条目:
(modifyTimestamp>=20200101010101Z)
(modifyTimestamp>=20200101010101Z)
范围搜索的性质是它必须评估目录中的每一条目,才能查看它是否位于给定的范围内。基本上,搜索范围始终是所有 ID 搜索。
对于大多数用户,look-through 限制将启动,并防止范围搜索转换为所有 ID 搜索。这提高了整体性能并加快了范围搜索结果。但是,某些客户端或管理用户(如 Directory Manager)可能没有设置 look-through 限制。在这种情况下,范围搜索可能需要几分钟才能完成,甚至无限期地继续。
nsslapd-rangelookthroughlimit
属性设置适用于所有用户(包括 Directory Manager)的独立范围查找限制。
这允许客户端和管理用户具有较高的查找限制,同时仍允许对性能有影响的范围搜索进行合理的限制。
与其他资源限制不同,这适用于任何用户(包括目录管理器、常规用户和其他 LDAP 客户端)进行搜索。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | -1 在条目中最大 32 位整数(其中 -1 代表无限) |
默认值 | 5000 |
语法 | 整数 |
示例 | nsslapd-rangelookthroughlimit: 5000 |
4.4.1.15. nsslapd-search-bypass-filter-test 复制链接链接已复制到粘贴板!
如果您启用 nsslapd-search-bypass-filter-test
参数,Directory 服务器会在搜索期间构建候选列表时绕过过滤器检查。如果将参数设置为 验证
,Directory 服务器将根据搜索候选条目评估过滤器。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off | verify |
默认值 | on |
语法 | 目录字符串 |
示例 | nsslapd-search-bypass-filter-test: on |
4.4.1.16. nsslapd-search-use-vlv-index 复制链接链接已复制到粘贴板!
nsslapd-search-use-vlv-index
启用和禁用虚拟列表视图(VLV)搜索。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | on |
语法 | 目录字符串 |
示例 | nsslapd-search-use-vlv-index: on |
4.4.1.17. nsslapd-subtree-rename-switch 复制链接链接已复制到粘贴板!
每个目录条目都作为密钥存储在条目索引文件中。index 键将当前条目 DN 映射到索引中的 meta 条目。此映射通过条目的 RDN 或条目的完整 DN 来完成。
当允许重命名子树条目(注意,带有子条目的条目)时,其条目将存储在 entryrdn.db
索引中,该条目通过分配的 ID 而不是其 DN 关联父和子条目。如果不允许子树重命名操作,则禁用 entryrdn.db
索引,并使用 entrydn.db
索引,它只是使用完整的 DN,具有隐式 parent-child 关系。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | off | on |
默认值 | on |
语法 | DirectoryString |
示例 | nsslapd-subtree-rename-switch: on |
本节介绍所有实例通用的全局配置属性,存储在 cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config
tree 节点上。
4.4.2.1. nsslapd-cache-autosize 复制链接链接已复制到粘贴板!
此性能调优相关的属性设定数据库和条目缓存总量使用的可用内存百分比。例如,如果值设置为 10
,则系统的可用 RAM 的 10% 都用于两个缓存。如果将此值设置为大于 0
的值,则会为数据库和条目缓存启用自动大小。
为了优化性能,红帽建议不要禁用自动大小。然而,在某些情况下,可能需要禁用自动大小。在这种情况下,将 nsslapd-cache-autosize
属性设置为 0
并手动设置:
-
nsslapd-dbcachesize
属性中的数据库缓存。 -
nsslapd-cachememsize
属性中的条目缓存。
有关自动大小的详情,请查看 红帽目录服务器性能调优指南中的相应部分。
如果 nsslapd-cache-autosize
和 nsslapd-cache-autosize-split
属性都设置为高值,如 100
,目录服务器将无法启动。要解决这个问题,请将这两个参数都设置为更合理的值。例如:
nsslapd-cache-autosize: 10 nsslapd-cache-autosize-split: 40
nsslapd-cache-autosize: 10
nsslapd-cache-autosize-split: 40
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 100。如果设置了 0,则使用默认值。 |
默认值 | 10 |
语法 | 整数 |
示例 | nsslapd-cache-autosize: 10 |
4.4.2.2. nsslapd-cache-autosize-split 复制链接链接已复制到粘贴板!
此性能调优相关的属性设定用于数据库缓存的 RAM 百分比。剩余百分比用于条目缓存。例如,如果值设为 40
,数据库缓存使用 40%,并且条目缓存缓存在 nsslapd-cache-autosize
属性中保留的空闲 RAM 的剩余 60%。
有关自动大小的详情,请查看 红帽目录服务器性能调优指南中的相应部分。
如果 nsslapd-cache-autosize
和 nsslapd-cache-autosize-split
属性都设置为高值,如 100
,目录服务器将无法启动。要解决这个问题,请将这两个参数都设置为更合理的值。例如:
nsslapd-cache-autosize: 10 nsslapd-cache-autosize-split: 40
nsslapd-cache-autosize: 10
nsslapd-cache-autosize-split: 40
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 99。如果设置了 0,则使用默认值。 |
默认值 | 40 |
语法 | 整数 |
示例 | nsslapd-cache-autosize-split: 40 |
4.4.2.3. nsslapd-db-checkpoint-interval 复制链接链接已复制到粘贴板!
这会设定目录服务器向数据库事务日志发送检查点条目的时间(以秒为单位)。数据库事务日志包含所有最新数据库操作的连续列表,仅用于数据库恢复。checkpoint 条目表示已将哪些数据库操作物理写入目录数据库。checkpoint 条目用于确定数据库事务日志中在系统失败后开始恢复的位置。dse.ldif
中缺少 nsslapd-db-checkpoint-interval
属性。要更改检查点间隔,请将属性添加到 dse.ldif
。可以使用 ldapmodify
动态修改此属性。有关修改此属性的详情,请参考红帽目录服务器管理指南中的"调整 目录服务器性能"章节。
此属性仅用于系统修改/无关,仅应在红帽技术支持或红帽咨询指导下更改。此属性和其他配置属性的设置不一致可能会导致目录服务器不稳定。
有关数据库事务日志记录的更多信息,请参阅 红帽目录服务器管理指南 中的"监控服务器和数据库活动"章节。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 10 到 300 秒 |
默认值 | 60 |
语法 | 整数 |
示例 | nsslapd-db-checkpoint-interval: 120 |
4.4.2.4. nsslapd-db-circular-logging 复制链接链接已复制到粘贴板!
此属性为事务日志文件指定循环日志记录。如果此属性关闭,旧的事务日志文件不会被删除,并被重命名为旧的日志事务文件。关闭环形日志记录会严重降低服务器性能,因此只有红帽技术支持或红帽咨询的指导才应修改。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | on |
语法 | DirectoryString |
示例 | nsslapd-db-circular-logging: on |
4.4.2.5. nsslapd-db-compactdb-interval 复制链接链接已复制到粘贴板!
nsslapd-db-compactdb-interval
属性定义目录服务器压缩数据库和复制更改日志时的时间间隔(以秒为单位)。紧凑操作会将未使用的页面返回到文件系统和数据库文件大小缩小。请注意,紧凑数据库是资源密集型,不应经常进行。
您不必重新启动服务器才能使此设置生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 0 (无压缩)到 2147483647 秒 |
默认值 | 2592000 (30 天) |
语法 | 整数 |
示例 | nsslapd-db-compactdb-interval: 2592000 |
4.4.2.6. nsslapd-db-compactdb-time 复制链接链接已复制到粘贴板!
nsslapd-db-compactdb-time
属性设置目录服务器压缩所有数据库及其复制更改日志的时间。超过压缩间隔后运行压缩任务(nsslapd-db-compactdb-interval
)。
您不必重新启动服务器才能使此设置生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | H:MM.时间以 24 小时格式设置 |
默认值 | 23:59 |
语法 | DirectoryString |
示例 | nsslapd-db-compactdb-time: 23:59 |
4.4.2.7. nsslapd-db-debug 复制链接链接已复制到粘贴板!
此属性指定是否向 {Directory Server} 报告额外的错误信息。要报告错误信息,请在 上将
参数设置为。此参数用于故障排除;启用该参数可能会减慢目录服务器的速度。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-db-debug: off |
4.4.2.8. nsslapd-db-durable-transactions 复制链接链接已复制到粘贴板!
此属性设定数据库事务日志条目是否立即写入磁盘。数据库事务日志包含所有最新数据库操作的连续列表,仅用于数据库恢复。启用持久事务后,每个目录更改将始终在日志文件中记录,因此可以在系统失败时恢复。但是,持久化事务功能可能会降低目录服务器的性能。当禁用持久事务时,所有事务在逻辑上写入数据库事务日志,但可能无法立即写入磁盘。如果在目录更改物理上写入磁盘前系统出现故障,则该更改将无法被恢复。dse.ldif
中缺少 nsslapd-db-durable-transactions
属性。要禁用持久事务,请将属性添加到 dse.ldif
。
此属性仅用于系统修改/无关,仅应在红帽技术支持或红帽咨询指导下更改。此属性和其他配置属性的设置不一致可能会导致目录服务器不稳定。
有关数据库事务日志记录的更多信息,请参阅 红帽目录服务器管理指南 中的"监控服务器和数据库活动"章节。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | on |
语法 | DirectoryString |
示例 | nsslapd-db-durable-transactions: on |
4.4.2.9. nsslapd-db-home-directory 复制链接链接已复制到粘贴板!
为了提高性能,要将数据库移到另一个物理位置,请使用此参数来指定主目录。
这个情况只会针对某些数据库缓存大小、物理内存大小和内核调优属性的组合发生。特别是,如果数据库缓存大小小于 100MB,则不应发生这种情况。
- 磁盘被大量使用(每秒 1MB/秒的数据传输)。
- 服务时间较长(超过 100ms)。
- 主要有多的写入活动。
如果这些都是 true,请使用 nsslapd-db-home-directory
属性来指定 tempfs
类型文件系统的子目录。
nsslapd-db-home-directory
属性引用的目录必须是 tempfs (如 /tmp
)的文件系统的子目录。但是,目录服务器不会创建此属性引用的子目录。此目录必须手动创建,也可以使用脚本创建。如果无法创建由 nsslapd-db-home-directory
属性引用的目录,会导致目录服务器无法启动。
另外,如果同一机器上有多个目录服务器,则它们的 nsslapd-db-home-directory
属性必须配置不同的目录。如果不这样做,将导致两个目录的数据库被破坏。
使用此属性会导致内部目录服务器数据库文件移到属性引用的目录中。有可能,但不太可能,服务器在文件移动后不再启动,因为无法分配足够的内存。这是为服务器配置过大的数据库缓存大小的症状。如果发生这种情况,将数据库缓存大小的大小减小到服务器再次启动的值。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 |
tempfs 文件系统中的任何有效目录名称,如 |
默认值 | |
语法 | DirectoryString |
示例 | nsslapd-db-home-directory: /tmp/slapd-phonebook |
4.4.2.10. nsslapd-db-idl-divisor 复制链接链接已复制到粘贴板!
此属性按每个数据库页面的块数量来指定索引块大小。块大小是通过将数据库页大小除以此属性的值来计算的。值 1
使块大小等于页大小。默认值 0
将块大小设置为页大小减去了内部数据库开销的估算。对于大多数安装,除非有特定的调整需要,否则不应更改默认值。
在修改此属性的值之前,请使用 db2ldif
脚本导出所有数据库。完成修改后,使用 ldif2db
脚本重新加载数据库。
这个参数应该只被非常高级的用户使用。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 8 |
默认值 | 0 |
语法 | 整数 |
示例 | nsslapd-db-idl-divisor: 2 |
4.4.2.11. nsslapd-db-locks 复制链接链接已复制到粘贴板!
目录服务器中的锁定机制控制目录服务器进程可以同时运行多少个副本。nsslapd-db-locks
参数设置最大锁定数。
只有在 Directory 服务器没有锁定并且日志 libdb: Lock 表没有可用的锁定错误消息时,才会将
这个参数设置为更高的值。如果您在不需要设置更高的值,这会增加 /var/lib/dirsrv/slapd-instance_name/db__db decisions
文件的大小,而无需任何好处。有关监控日志并确定实际值的更多信息,请参阅 目录服务器性能调优指南中的相应部分。
必须重启该服务才能使此属性生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 - 2147483647 |
默认值 | 10000 |
语法 | 整数 |
示例 | nsslapd-db-locks: 10000 |
4.4.2.12. nsslapd-db-locks-monitoring-enable 复制链接链接已复制到粘贴板!
不使用数据库锁定可能会导致数据崩溃。使用 nsslapd-db-locks-monitoring-enable
参数,您可以启用或禁用数据库锁定监控。如果启用了该参数(这是默认设置),如果活跃数据库锁定的数量高于 nsslapd-db-locks-monitoring-threshold 中配置的百分比阈值,则目录服务器会终止所有搜索。如果出现问题,管理员可以在 nsslapd-db-locks 参数中增加数据库锁定的数量。
重启该服务以使更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | on |
语法 | DirectoryString |
示例 | nsslapd-db-locks-monitoring-enable: on |
4.4.2.13. nsslapd-db-locks-monitoring-pause 复制链接链接已复制到粘贴板!
如果在 nsslapd-db-locks-monitoring-enable 参数中启用了数据库锁定,nsslapd-db-locks-monitoring-pause
会定义监控线程在检查之间休眠的时间间隔,以毫秒为单位。
如果将此参数设置为过高的值,服务器可以在监控检查发生前耗尽数据库锁定。但是,设置太低的值可能会减慢服务器的速度。
您不必重新启动服务器才能使此设置生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 0 - 2147483647 (以毫秒为单位的值) |
默认值 | 500 |
语法 | DirectoryString |
示例 | nsslapd-db-locks-monitoring-pause: 500 |
4.4.2.14. nsslapd-db-locks-monitoring-threshold 复制链接链接已复制到粘贴板!
如果在 nsslapd-db-locks-monitoring-enable 参数中启用了数据库锁定,nsslapd-db-locks-monitoring-threshold
会在 Directory 服务器终止搜索前设置使用数据库锁定的最大百分比,以避免进一步锁定。
重启该服务以使更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 70 - 95 |
默认值 | 90 |
语法 | DirectoryString |
示例 | nsslapd-db-locks-monitoring-threshold: 90 |
4.4.2.15. nsslapd-db-logbuf-size 复制链接链接已复制到粘贴板!
此属性指定日志信息缓冲区大小。日志信息保存在内存中,直到缓冲区填满或事务提交强制将缓冲区写入到磁盘。较大的缓冲区大小可在长时间运行的事务、高度并发应用程序或事务生成大量数据的情况下显著提高吞吐量。日志信息缓冲大小是事务日志大小除以 4 个。
只有 nsslapd-db-durable-transactions
属性设置为 on
时,nsslapd-db-logbuf-size
属性才有效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 32k 最多 32 位整数(仅限于机器上可用内存) |
默认值 | 32K |
语法 | 整数 |
示例 | nsslapd-db-logbuf-size: 32K |
4.4.2.16. nsslapd-db-logdirectory 复制链接链接已复制到粘贴板!
此属性指定包含数据库事务日志的目录的路径。数据库事务日志包含所有最新数据库操作的连续列表。目录服务器使用此信息在实例意外关闭后恢复数据库。
默认情况下,数据库事务日志存储在与目录数据库相同的目录中。要更新此参数,您必须手动更新 /etc/dirsrv/slapd-instance_name/dse.ldif
文件。详情请参阅 Red Hat Directory Server Administration Guide中的 change theTransaction Log Directory 部分。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的路径 |
默认值 | |
语法 | DirectoryString |
示例 | nsslapd-db-logdirectory: /var/lib/dirsrv/slapd-instance_name/db/ |
4.4.2.17. nsslapd-db-logfile-size 复制链接链接已复制到粘贴板!
此属性指定日志中单个文件的最大大小(以字节为单位)。默认情况下,或者如果值设为 0,
则使用最大 10MB。最大大小是一个未签名的 4 字节值。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到未签名的 4 字节整数 |
默认值 | 10MB |
语法 | 整数 |
示例 | nsslapd-db-logfile-size: 10 MB |
4.4.2.18. nsslapd-db-page-size 复制链接链接已复制到粘贴板!
此属性指定用于存放数据库中项目的页面大小(以字节为单位)。最小大小为 512 字节,最大大小为 64 KB。如果没有显式设置页面大小,Directory 服务器默认为 8 KB 的页大小。更改此默认值可能会对性能有重大影响。如果页面大小太小,则会导致大量页面分割和复制,而如果页大小太大,则可能会浪费磁盘空间。
在修改此属性的值之前,请使用 db2ldif
脚本导出所有数据库。完成修改后,使用 ldif2db
脚本重新加载数据库。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 512 字节到 64 KB |
默认值 | 8KB |
语法 | 整数 |
示例 | nsslapd-db-page-size: 8KB |
4.4.2.19. nsslapd-db-spin-count 复制链接链接已复制到粘贴板!
此属性指定 test-and-set mutexes 应该在不阻止的情况下启动的次数。
除非您对 Berkeley DB 的内部工作或被红帽支持特别告知,否则永远不会联系这个值。
默认值 0
会导致 BDB 通过乘以可用 CPU 内核数(由 nproc
实用程序或 sysconf (_SC_NPROCESSORS_ONLN)
调用来计算实际值。例如,如果处理器有 8 个逻辑内核,使此属性设置为
0
相当于将其设置为 400
。无法完全关闭中断 - 如果您要尽可能减少 test-and-set mutexes 将启动的次数,如果没有阻塞,将此属性设置为 1
。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 2147483647 (2^31-1) |
默认值 | 0 |
语法 | 整数 |
示例 | nsslapd-db-spin-count: 0 |
4.4.2.20. nsslapd-db-transaction-batch-max-wait 复制链接链接已复制到粘贴板!
如果设置了 第 4.4.2.22 节 “nsslapd-db-transaction-batch-val”,则当达到集合批处理值时,由单独的线程清除事务。但是,如果只有几个更新,这个过程可能需要很长时间。此参数控制何时应刷新事务,独立于批处理计数。这些值以毫秒为单位定义。
这个参数是实验性的。除非特别被红帽支持告知,否则请勿更改其值。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 - 2147483647 (以毫秒为单位的值) |
默认值 | 50 |
语法 | 整数 |
示例 | nsslapd-db-transaction-batch-max-wait: 50 |
4.4.2.21. nsslapd-db-transaction-batch-min-wait 复制链接链接已复制到粘贴板!
如果设置了 第 4.4.2.22 节 “nsslapd-db-transaction-batch-val”,则当达到集合批处理值时,由单独的线程清除事务。但是,如果只有几个更新,这个过程可能需要很长时间。此参数控制何时应独立于批处理计数单独清空事务。这些值以毫秒为单位定义。
这个参数是实验性的。除非特别被红帽支持告知,否则请勿更改其值。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 - 2147483647 (以毫秒为单位的值) |
默认值 | 50 |
语法 | 整数 |
示例 | nsslapd-db-transaction-batch-min-wait: 50 |
4.4.2.22. nsslapd-db-transaction-batch-val 复制链接链接已复制到粘贴板!
此属性指定在提交前将批处理多少个事务。当不需要完整的事务持久性时,此属性可以提高更新的性能。可以使用 ldapmodify
动态修改此属性。有关修改此属性的详情,请参考红帽目录服务器管理指南中的"调整 目录服务器性能"章节。
设置此值将降低数据一致性,并可能导致数据丢失。这是因为,如果服务器可以在服务器刷新批处理事务前出现电源中断,则批处理中的这些事务将会丢失。
除非被红帽支持特别请求,否则不要设置这个值。
如果此属性未定义或设置为 0,则事务批处理将关闭,并且无法使用 LDAP 对此属性进行远程修改。但是,将此属性设置为大于
0
的值会导致服务器延迟提交事务,直到排队的事务数量等于属性值。大于 0
的值还允许使用 LDAP 远程修改此属性。此属性的 1
值允许使用 LDAP 远程修改属性设置,但不会批处理行为。因此,在服务器启动时,1
代表保持正常的持久性,同时允许在需要时远程打开和关闭事务批处理。请记住,此属性的值可能需要修改 nsslapd-db-logbuf-size
属性,以确保为批处理事务进行足够的日志缓冲区大小。
只有 nsslapd-db-durable-transaction
属性设置为 on
时,nsslapd-db-transaction-batch-val
属性才有效。
有关数据库事务日志记录的更多信息,请参阅 红帽目录服务器管理指南 中的"监控服务器和数据库活动"章节。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 30 |
默认值 | 0 (或关闭) |
语法 | 整数 |
示例 | nsslapd-db-transaction-batch-val: 5 |
4.4.2.23. nsslapd-db-trickle-percentage 复制链接链接已复制到粘贴板!
此属性设置,通过将脏页面写入其后备文件,来至少在 shared-memory 池中指定页面百分比进行清理。这是为了确保页面始终可用于读取新信息,而无需等待写入。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 0 到 100 |
默认值 | 40 |
语法 | 整数 |
示例 | nsslapd-db-trickle-percentage: 40 |
4.4.2.24. nsslapd-db-verbose 复制链接链接已复制到粘贴板!
此属性指定在搜索检查点、进行死锁检测和执行恢复时是否记录额外的信息和调试信息。此参数用于故障排除,启用该参数可能会减慢目录服务器的速度。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-db-verbose: off |
4.4.2.25. nsslapd-import-cache-autosize 复制链接链接已复制到粘贴板!
这个与性能调优相关的属性会自动设置在基于命令行的 LDIF 文件导入过程中使用的导入缓存(importCache
)的大小( ldif2db
操作)。
在目录服务器中,导入操作可以作为服务器任务运行,或者只在命令行中运行。在任务模式中,导入操作作为常规目录服务器操作运行。nsslapd-import-cache-autosize
属性允许在命令行上运行导入操作时自动将导入缓存设置为预先确定的大小。目录服务器在任务模式导入过程中也可以使用属性来分配指定的百分比用于导入缓存。
默认情况下,nsslapd-import-cache-autosize
属性被启用,并设置为 -1
的值。这个值会自动调整 ldif2db
操作的导入缓存,从而自动为导入缓存分配可用物理内存的有限百分比(50%)。百分比值(50%)被硬编码,不可更改。
将 attribute 值设置为 50
(nsslapd-import-cache-autosize: 50
)在 ldif2db
操作过程中对性能有同样的影响。但是,当导入操作作为 Directory Server 任务运行时,此类设置会对性能产生同样的影响。-1
值会自动调整仅针对 ldif2db
操作(包括导入、常规目录服务器任务)的导入缓存。
a -1
设置的目的是启用 ldif2db
操作,以便从空闲的物理内存中受益,但同时不与条目缓存竞争,它不用于目录服务器的常规操作。
将 nsslapd-import-cache-autosize
属性设置为 0
可关闭导入缓存自动大小的功能 - 也就是说,导入操作的任何模式都不会自动进行。相反,Directory 服务器使用 nsslapd-import-cachesize
属性导入缓存大小,默认值为 20000000
。
目录服务器上下文中有三个缓存:数据库缓存、条目缓存和导入缓存。导入缓存仅在导入操作过程中使用。nsslapd-cache-autosize
属性用于自动调整条目缓存和数据库缓存,仅在 Directory 服务器操作过程中使用,而不在 ldif2db
命令行操作过程中使用;属性值是要为条目缓存和数据库缓存分配的空闲物理内存的百分比。
如果自动化属性、nsslapd-cache-autosize
和 nsslapd-import-cache-autosize
均已启用,请确保其 sum 小于 100。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | -1, 0 (将导入缓存自动设置为 100) |
默认值 | -1 (只为 ldif2db 暂停导入缓存,并分配 50% 的空闲物理内存以导入缓存) |
语法 | 整数 |
示例 | nsslapd-import-cache-autosize: -1 |
4.4.2.26. nsslapd-dbcachesize 复制链接链接已复制到粘贴板!
此性能调优相关的属性指定数据库索引缓存大小(以字节为单位)。这是控制目录服务器使用的物理 RAM 最重要的值之一。
这不是条目缓存。这是 Berkeley 数据库后端将用来缓存索引( .db
文件)和其他文件的内存量。这个值被传递给 Berkeley DB API 功能 set_cachesize
。如果激活自动缓存调整大小,当服务器在服务器启动后续阶段将这些值替换为自己的猜测值时,此属性会被覆盖。
有关此属性的更多信息,请参阅 Berkeley DB 的缓存大小部分,网址为 https://docs.oracle.com/cd/E17076_04/html/programmer_reference/general_am_conf.html#am_conf_cachesize。
对于 32 位签名的整数,尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。
不要手动设置数据库缓存大小。红帽建议使用数据库缓存自动大小功能来优化性能。详情请查看 Red Hat Directory Server 性能调节指南中的相应部分。
必须重新启动服务器,才能使此属性的更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 32 位平台 500 KB 到 4GB,64 位平台为 500 KB 到 2^641 |
默认值 | |
语法 | 整数 |
示例 | nsslapd-dbcachesize: 10000000 |
4.4.2.27. nsslapd-dbncache 复制链接链接已复制到粘贴板!
此属性可以将 LDBM 缓存分成同样大小的内存。可以指定足够大的缓存,以便无法在某些构架上连续分配它们;例如,一些系统会限制进程连续分配的内存量。如果 nsslapd-dbncache
为 0
或 1
,则缓存将在内存中连续分配。如果大于 1
,则缓存将划分为 ncache
,平均大小为单独的内存片段。
要配置大于 4GB 的 dbcache 大小,请将 nsslapd-dbncache
属性添加到 cn=config,cn=ldbm database,cn=plugins,cn=config
between the nsslapd-dbcachesize
和 nsslapd-db-logdirectory
属性行。
将此值设置为 1-quarter (1/4)内存大小(以 GB 为单位)。例如,对于 12GB 系统,将 nsslapd-dbncache
值设置为 3
; 对于 8GB 系统,将其设置为 2
。
此属性仅用于系统修改/无关,仅应在红帽技术支持或红帽专业服务的指导下更改。此属性和其他配置属性的设置不一致可能会导致目录服务器不稳定。
必须重新启动服务器,才能使此属性的更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 1 到 4 |
默认值 | 1 |
语法 | 整数 |
示例 | nsslapd-dbncache: 1 |
4.4.2.28. nsslapd-search-bypass-filter-test 复制链接链接已复制到粘贴板!
如果您启用 nsslapd-search-bypass-filter-test
参数,Directory 服务器会在搜索期间构建候选列表时绕过过滤器检查。如果将参数设置为 验证
,Directory 服务器将根据搜索候选条目评估过滤器。
参数 | 描述 |
---|---|
条目 DN | cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off | verify |
默认值 | on |
语法 | 目录字符串 |
示例 | nsslapd-search-bypass-filter-test: on |
全局只读属性,包含数据库上监控活动的数据库统计信息,存储在 cn=monitor,cn=ldbm database,cn=plugins,cn=config
tree 节点上。有关这些条目的更多信息,请参阅 红帽目录服务器管理指南 中的"监控服务器和数据库活动"章节。
dbcachehits
此属性显示数据库中找到的请求页面。
dbcachetries
此属性显示缓存查找总数。
dbcachehitratio
此属性显示在数据库缓存中的请求页面的百分比(hits/tries)。
dbcachepagein
此属性显示读取到数据库缓存的页面。
dbcachepageout
此属性显示从数据库缓存写入后备文件的页面。
dbcacheroevict
此属性显示从缓存中强制使用的清理页面。
dbcacherwevict
此属性显示强制从缓存中有脏页面。
normalizedDNcachetries
实例启动以来的缓存查找总数。
normalizedDNcachehits
在缓存中找到的规范化 DN。
normalizedDNcachemisses
在缓存中未找到规范化 DN。
normalizedDNcachehitratio
在缓存中找到规范化 DN 的百分比。
currentNormalizedDNcachesize
规范化 DN 缓存的当前大小(以字节为单位)。
maxNormalizedDNcachesize
nsslapd-ndn-cache-max-size
参数的当前值。有关如何更新此设置的详情,请参考 第 3.1.1.130 节 “nsslapd-ndn-cache-max-size”。
currentNormalizedDNcachecount
规范化缓存的 DN 数量。
cn=database_name
子树包含用户定义的数据库的所有配置数据。
cn=userRoot
子树默认称为 userRoot。但是,这不是硬编码的,事实上会存在多个数据库实例,此名称由用户更改,并在添加新数据库时定义此名称。引用的 cn=userRoot
数据库可以是任何用户数据库。
以下属性对数据库是通用的,如 cn=userRoot
。
4.4.4.1. nsslapd-cachesize 复制链接链接已复制到粘贴板!
此属性已弃用。要重新定义条目缓存的大小,请使用 nsslapd-cachememsize。
此性能调优相关的属性在可保存的条目数中指定缓存大小。但是,此属性已弃用,而是使用 nsslapd-cachememsize
属性,它为条目缓存大小设置 RAM 绝对分配,如 第 4.4.4.2 节 “nsslapd-cachememsize” 所述。
对于 32 位签名的整数(在 32 位系统中),尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。
必须重新启动服务器,才能使此属性的更改生效。
此设置的性能计数器会进入最高 64 位整数,即使在 32 位系统中,但由于系统地址内存的方式,在 32 位系统中设置本身也限制为最高 32 位整数。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 1 到32位系统上的 321,或 64 位系统上的 263-1,这意味着无限 |
默认值 | -1 |
语法 | 整数 |
示例 | nsslapd-cachesize: -1 |
4.4.4.2. nsslapd-cachememsize 复制链接链接已复制到粘贴板!
此性能调优相关的属性指定条目缓存的可用内存空间大小(以字节为单位)。最简单的方法是以占用的内存方式限制缓存大小。激活自动缓存大小会覆盖此属性,在服务器启动时用自己的猜测值替换这些值。
对于 32 位签名的整数(在 32 位系统中),尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。
此设置的性能计数器会进入最高 64 位整数,即使在 32 位系统中,但由于系统地址内存的方式,在 32 位系统中设置本身也限制为最高 32 位整数。
不要手动设置数据库缓存大小。红帽建议使用条目缓存自动大小功能来优化性能。详情请查看 Red Hat Directory Server 性能调节指南中的相应部分。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 64位系统上的 500 KB 到 2 641 |
默认值 | 209715200 (200 MiB) |
语法 | 整数 |
示例 | nsslapd-cachememsize: 209715200 |
4.4.4.3. nsslapd-directory 复制链接链接已复制到粘贴板!
此属性指定数据库实例的路径。如果它是一个相对路径,它将从全局数据库条目 cn=config,cn=ldbm database,cn=plugins,cn=config
中 nsslapd-directory
指定的路径开始。数据库实例目录以实例名称命名,默认情况下位于全局数据库目录中。创建数据库实例后,请不要修改此路径,因为任何更改风险都会阻止服务器访问数据。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 数据库实例的任何有效路径 |
默认值 | |
语法 | DirectoryString |
示例 | nsslapd-directory: /var/lib/dirsrv/slapd-instance/db/userRoot |
4.4.4.4. nsslapd-dncachememsize 复制链接链接已复制到粘贴板!
此性能调优相关的属性指定 DN 缓存的可用内存空间大小(以字节为单位)。DN 缓存与数据库的条目缓存类似,只有其表仅存储条目 ID 和条目 DN。这允许更快地查找 rename 和 moddn 操作。
最简单的方法是以占用的内存方式限制缓存大小。
对于 32 位签名的整数(在 32 位系统中),尝试设置不是数字或太大的值会返回 LDAP_UNWILLING_TO_PERFORM
错误消息,并解释此问题的额外错误消息。
此设置的性能计数器会进入最高 64 位整数,即使在 32 位系统中,但由于系统地址内存的方式,在 32 位系统中设置本身也限制为最高 32 位整数。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效范围 | 32位系统上的 500 KB 到 2 321,64位系统上的 2 641 |
默认值 | 10,485,760 (10 MB) |
语法 | 整数 |
示例 | nsslapd-dncachememsize: 10485760 |
4.4.4.5. nsslapd-readonly 复制链接链接已复制到粘贴板!
此属性为单个后端实例指定只读模式。如果此属性的值为 off
,则用户具有其访问权限所允许的读取、写入和执行权限。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-readonly: off |
4.4.4.6. nsslapd-require-index 复制链接链接已复制到粘贴板!
切换到 上的
时,此属性允许一个拒绝未索引的搜索。此与性能相关的属性可避免服务器出现错误搜索的饱和。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-require-index: off |
4.4.4.7. nsslapd-require-internalop-index 复制链接链接已复制到粘贴板!
当插件修改数据时,它在数据库中有一个写入锁定。在大型数据库中,如果插件随后执行未索引的搜索,该插件可以使用所有数据库锁定并损坏数据库,或者服务器变得无响应。要避免这个问题,您可以通过启用 nsslapd-require-internalop-index
参数来拒绝内部未索引的搜索。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | on | off |
默认值 | off |
语法 | DirectoryString |
示例 | nsslapd-require-internalop-index: off |
4.4.4.8. nsslapd-suffix 复制链接链接已复制到粘贴板!
此属性指定数据库链接的后缀。这是一个单值属性,因为每个数据库实例只能有一个后缀。在以前的版本中,在单个数据库实例上可以有多个后缀,但这不再是这种情况。因此,此属性为单值,用于强制每个数据库实例只能有一个后缀条目。只有在创建条目后对此属性所做的任何更改仅在包含数据库链接的服务器重启后生效。
参数 | 描述 |
---|---|
条目 DN | cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的 DN |
默认值 | |
语法 | DirectoryString |
示例 | nsslapd-suffix: o=Example |
4.4.4.9. vlvBase 复制链接链接已复制到粘贴板!
此属性设置创建浏览或虚拟列表视图(VLV)索引的基本 DN。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的 DN |
默认值 | |
语法 | DirectoryString |
示例 | vlvBase: ou=People,dc=example,dc=com |
4.4.4.10. vlvEnabled 复制链接链接已复制到粘贴板!
vlvEnabled
属性提供有关特定 VLV 索引的状态信息,而 Directory 服务器在运行时设置此属性。虽然配置中显示 vlvEnabled
,但您无法修改此属性。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | 0 (禁用)| 1 (启用) |
默认值 | 1 |
语法 | DirectoryString |
示例 | vlvEnbled: 0 |
4.4.4.11. vlvFilter 复制链接链接已复制到粘贴板!
浏览或虚拟列表视图(VLV)索引是通过根据过滤器运行搜索来创建的,并在索引中包含与该过滤器匹配的条目。过滤器在 vlvFilter
属性中指定。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的 LDAP 过滤器 |
默认值 | |
语法 | DirectoryString |
示例 | vlvFilter: ( |
4.4.4.12. vlvIndex (Object Class) 复制链接链接已复制到粘贴板!
浏览索引 或虚拟列表视图(VLV)索引 会动态生成条目标头的缩写索引,从而可以更快地浏览大型索引。VLV 索引定义有两个部分:一个定义索引,它定义了用于标识要添加到索引中的条目的搜索。vlvIndex
对象类定义索引条目。
此对象类在 Directory Server 中定义。
卓越的类
top
OID
2.16.840.1.113730.3.2.42
属性 | 定义 |
---|---|
objectClass | 定义条目的对象类。 |
cn | 提供条目的通用名称。 |
标识浏览索引(虚拟列表视图索引)所排序的属性列表。 |
属性 | 定义 |
---|---|
存储浏览索引的可用性。 | |
包含使用浏览索引的数量。 |
4.4.4.13. vlvScope 复制链接链接已复制到粘贴板!
此属性设置搜索范围,以针对浏览或虚拟列表视图(VLV)索引中的条目运行。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | * 1 (一个级别或子搜索) * 2 (subtree search) |
默认值 | |
语法 | 整数 |
示例 | vlvScope: 2 |
4.4.4.14. vlvSearch (Object Class) 复制链接链接已复制到粘贴板!
浏览索引 或虚拟列表视图(VLV)索引 会动态生成条目标头的缩写索引,从而可以更快地浏览大型索引。VLV 索引定义有两个部分:一个定义索引,它定义了用于标识要添加到索引中的条目的搜索。vlvSearch
对象类定义搜索过滤器条目。
此对象类在 Directory Server 中定义。
卓越的类
top
OID
2.16.840.1.113730.3.2.38
属性 | 定义 |
---|---|
objectClass | 定义条目的对象类。 |
标识创建浏览索引的基本 DN。 | |
标识要定义浏览索引的范围。 | |
标识用于定义浏览索引的过滤器字符串。 |
属性 | 定义 |
---|---|
multiLineDescription | 提供条目的文本描述。 |
4.4.4.15. vlvSort 复制链接链接已复制到粘贴板!
此属性为浏览或虚拟列表视图(VLV)索引中的返回条目设置排序顺序。
此属性的条目是 vlvSearch
条目下的 vlvIndex
条目。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何目录服务器属性,以空格分隔 |
默认值 | |
语法 | DirectoryString |
示例 | vlvSort: cn givenName o ou sn |
4.4.4.16. vlvUses 复制链接链接已复制到粘贴板!
vlvUses
属性包含浏览索引使用的计数,而 Directory 服务器在运行时设置此属性。虽然配置中显示 vlvUses
,但您无法修改此属性。
有关 VLV 索引的更多信息,请参阅管理指南中的索引章节。
参数 | 描述 |
---|---|
条目 DN | cn=index_name,cn=userRoot,cn=ldbm database,cn=plugins,cn=config |
有效值 | N/A |
默认值 | |
语法 | DirectoryString |
示例 | vlvUses:800 |
此树节点条目中的属性都是只读的、数据库性能计数器。这些属性的所有值都是 32 位整数,但 entrycachehits
和 entrycachetries
除外。
如果在 上将
cn=config
中的 nsslapd-counters
属性设置为,那么 Directory Server 实例使用 64 位整数保留的一些计数器使用 64 位整数,即使在 32 位机器上或使用 32 位目录服务器版本。对于数据库监控,entrycachehits
和 entrycachetries
计数器使用 64 位整数。
nsslapd-counters
属性启用对这些特定数据库和服务器计数器的 64 位支持。使用 64 位整数的计数器不可配置;对于所有允许的计数器,可启用 64 位整数,或为所有允许的计数器禁用 64 位整数。
nsslapd-db-abort-rate
此属性显示已中止的事务数量。
nsslapd-db-active-txns
此属性显示当前活跃的事务数量。
nsslapd-db-cache-hit
此属性显示缓存中找到的请求页面。
nsslapd-db-cache-try
此属性显示缓存查找总数。
nsslapd-db-cache-region-wait-rate
此属性显示在获取区域锁定前强制等待的控制线程的次数。
nsslapd-db-cache-size-bytes
此属性显示缓存的总大小(以字节为单位)。
nsslapd-db-clean-pages
此属性显示当前在缓存中的清理页面。
nsslapd-db-commit-rate
此属性显示已提交的事务数量。
nsslapd-db-deadlock-rate
此属性显示检测到的死锁数量。
nsslapd-db-dirty-pages
此属性显示当前缓存中的脏页面。
nsslapd-db-hash-buckets
此属性显示缓冲区散列表中哈希 bucket 的数量。
nsslapd-db-hash-elements-examine-rate
此属性显示哈希表查找过程中遍历的 hash 元素总数。
nsslapd-db-hash-search-rate
此属性显示缓冲区哈希表查找的总数。
nsslapd-db-lock-conflicts
此属性显示因为冲突而无法立即可用的锁定总数。
nsslapd-db-lock-region-wait-rate
此属性显示在获取区域锁定前强制等待的控制线程的次数。
nsslapd-db-lock-request-rate
此属性显示请求的锁定总数。
nsslapd-db-lockers
此属性显示当前锁定者的数量。
nsslapd-db-log-bytes-since-checkpoint
此属性显示自上次检查点以来写入此日志的字节数。
nsslapd-db-log-region-wait-rate
此属性显示在获取区域锁定前强制等待的控制线程的次数。
nsslapd-db-log-write-rate
此属性显示写入此日志的 MB 和字节数。
nsslapd-db-longest-chain-length
此属性显示在缓冲区哈希表查找中遇到的最大链。
nsslapd-db-page-create-rate
此属性显示缓存中创建的页面。
nsslapd-db-page-read-rate
此属性显示读取到缓存的页面。
nsslapd-db-page-ro-evict-rate
此属性显示从缓存中强制使用的清理页面。
nsslapd-db-page-rw-evict-rate
此属性显示强制从缓存中有脏页面。
nsslapd-db-page-trickle-rate
此属性显示使用 memp_trickle
接口编写的脏页面。
nsslapd-db-page-write-rate
此属性显示读取到缓存的页面。
nsslapd-db-pages-in-use
此属性显示当前正在使用的页面(清理或脏)。
nsslapd-db-txn-region-wait-rate
此属性显示线程控制在获取区域锁定前等待的次数。
currentdncachecount
此属性显示 DN 缓存中当前存在的 DN 数量。
currentdncachesize
此属性显示 DN 缓存中当前存在的 DN 的总大小(以字节为单位)。
maxdncachesize
此属性显示可在数据库 DN 缓存中维护的 DN 的最大大小(以字节为单位)。
此树节点条目中的属性都是只读的、数据库性能计数器。
如果在 上将
cn=config
中的 nsslapd-counters
属性设置为,那么 Directory Server 实例使用 64 位整数保留的一些计数器使用 64 位整数,即使在 32 位机器上或使用 32 位目录服务器版本。对于数据库监控,entrycachehits
和 entrycachetries
计数器使用 64 位整数。
nsslapd-counters
属性启用对这些特定数据库和服务器计数器的 64 位支持。使用 64 位整数的计数器不可配置;对于所有允许的计数器,可启用 64 位整数,或为所有允许的计数器禁用 64 位整数。
dbfilecachehit-number
此属性给出执行此文件数据的搜索次数,并且数据从缓存中成功获取。此属性名称中的数字对应于 dbfilename
中的数字。
dbfilecachemiss-number
此属性提供执行此文件数据的搜索数量,并且无法从缓存中获取数据。此属性名称中的数字对应于 dbfilename
中的数字。
dbfilepagein-number
此属性提供此文件中放入缓存的页面数量。此属性名称中的数字对应于 dbfilename
中的数字。
dbfilepageout-number
此属性提供从缓存写入到磁盘的此文件的页面数。此属性名称中的数字对应于 dbfilename
中的数字。
currentDNcachecount
缓存的 DN 数量。
currentDNcachesize
DN 缓存的当前大小(以字节为单位)。
DNcachehitratio
缓存中找到的 DN 的百分比。
DNcachehits
在缓存中找到的 DNS。
DNcachemisses
在缓存中没有找到 DNS。
DNcachetries
实例启动以来的缓存查找总数。
maxDNcachesize
nsslapd-ndn-cache-max-size
参数的当前值。有关如何更新此设置的详情,请参考 第 3.1.1.130 节 “nsslapd-ndn-cache-max-size”。
默认索引集合存储在此处。默认索引会按后端配置,以针对大多数设置场景优化目录服务器功能。除系统基本索引外,所有索引都可以删除,但应小心谨慎,以免造成不必要的中断。有关索引的更多信息,请参阅 Red Hat Directory Server Administration Guide 中的 "Managing Indexes" 章节。
4.4.7.1. cn 复制链接链接已复制到粘贴板!
此属性提供要索引的属性的名称。
参数 | 描述 |
---|---|
条目 DN | cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的索引 cn |
默认值 | 无 |
语法 | DirectoryString |
示例 | cn: aci |
4.4.7.2. nsIndex 复制链接链接已复制到粘贴板!
此对象类在后端数据库中定义一个索引。此对象在 Directory Server 中定义。
卓越的类
top
OID
2.16.840.1.113730.3.2.44
属性 | 定义 |
---|---|
objectClass | 定义条目的对象类。 |
cn | 提供条目的通用名称。 |
确定索引是否为系统定义的索引。 |
属性 | 定义 |
---|---|
description | 提供条目的文本描述。 |
标识索引类型。 | |
标识匹配的规则。 |
4.4.7.3. nsIndexType 复制链接链接已复制到粘贴板!
此可选, multi-valued 属性指定 Directory Server 操作的索引类型,并取要索引的属性值。必须在单独的行中输入每个所需的索引类型。
参数 | 描述 |
---|---|
条目 DN | cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | * pres = 存在索引 * EQ = 平等索引 * Approx = 大约索引 * sub = 子字符串索引 * 匹配规则 = 国际索引 * index browse = 浏览索引 |
默认值 | |
语法 | DirectoryString |
示例 | nsIndexType: eq |
4.4.7.4. nsMatchingRule 复制链接链接已复制到粘贴板!
此可选,multi-valued 属性指定用于匹配值和为属性生成索引键的排序匹配规则名称或 OID。这最常用于确保对英语(7-bit ASCII)以外的语言正确搜索相同和范围。
这也用于允许范围搜索正常工作,对于在架构定义中没有指定排序匹配规则的整数语法属性。uidNumber
和 gidNumber
是两个常用的两个属性,它们属于这个类别。
例如,对于使用整数语法的 uidNumber
,rule 属性可以是 nsMatchingRule: integerOrderingMatch
。
在保存更改并且使用 db2index
重新构建索引之前,对此属性的任何更改都不会生效,这在 红帽目录服务器管理指南的"管理索引"一章中详细介绍。
参数 | 描述 |
---|---|
条目 DN | cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何有效的 collation order 对象标识符(OID) |
默认值 | 无 |
语法 | DirectoryString |
示例 | nsMatchingRule: 2.16.840.1.113730.3.3.2.3.1 (For Bulgarian) |
4.4.7.5. nsSystemIndex 复制链接链接已复制到粘贴板!
此强制属性指定索引是否为 系统索引,这是一个对目录服务器操作至关重要的索引。如果此属性的值为 true
,则代表 system-essential。系统索引不应被删除,因为这会严重破坏服务器功能。
参数 | 描述 |
---|---|
条目 DN | cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config |
有效值 | true | false |
默认值 | |
语法 | DirectoryString |
示例 | nssystemindex: true |
除了 cn=default index,cn= config,cn=ldbm database,cn=plugins,cn=config 中保存的默认
索引集合外,可以为用户定义的后端实例创建自定义索引;它们存储在 cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config
.每个索引属性代表 cn=config
信息树节点下的子条目,如下图所示:
图 4.2. 索引的属性代表一个子条目
例如,o=UserRoot
下的 aci
属性的索引文件会出现在 Directory 服务器中,如下所示:
这些条目共享 第 4.4.7 节 “cn=default index,cn=config,cn=ldbm database,cn=plugins,cn=config 下的数据库属性” 中默认索引列出的所有索引属性。有关索引的更多信息,请参阅 Red Hat Directory Server Administration Guide 中的 "Managing Indexes" 章节。
4.4.8.1. nsIndexIDListScanLimit 复制链接链接已复制到粘贴板!
这个多值参数定义了特定索引的搜索限制,或者不使用 ID 列表。如需更多信息,请参阅 Directory Server 性能调节指南中的相应部分。
参数 | 描述 |
---|---|
条目 DN | cn=attribute_name,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 请参阅 目录服务器性能调优指南中的相应部分。 |
默认值 | |
语法 | DirectoryString |
示例 | nsIndexIDListScanLimit: limit=0 type=eq values=inetorgperson |
4.4.8.2. nsSubStrBegin 复制链接链接已复制到粘贴板!
默认情况下,要索引搜索,搜索字符串必须至少有三个字符,而无需计算任何通配符字符。例如,字符串 abc
将是一个索引的搜索,而 ab*
不是一个索引的搜索。索引的搜索比未索引搜索要快,因此更改搜索键的最小长度有助于增加索引搜索数量。
根据任何通配符字符的位置,可以编辑此子字符串长度。nsSubStrBegin
属性设置索引字符串开头所需的字符数,在通配符之前。例如:
abc*
abc*
如果更改了此属性的值,则必须使用 db2index
重新生成索引。
参数 | 描述 |
---|---|
条目 DN | cn=attribute_name,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何整数 |
默认值 | 3 |
语法 | 整数 |
示例 | nsSubStrBegin: 2 |
4.4.8.3. nsSubStrEnd 复制链接链接已复制到粘贴板!
默认情况下,要索引搜索,搜索字符串必须至少有三个字符,而无需计算任何通配符字符。例如,字符串 abc
将是一个索引的搜索,而 ab*
不是一个索引的搜索。索引的搜索比未索引搜索要快,因此更改搜索键的最小长度有助于增加索引搜索数量。
根据任何通配符字符的位置,可以编辑此子字符串长度。nsSubStrEnd
属性在通配符后设置索引搜索结尾的字符数。例如:
*xyz
*xyz
如果更改了此属性的值,则必须使用 db2index
重新生成索引。
参数 | 描述 |
---|---|
条目 DN | cn=attribute_name,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何整数 |
默认值 | 3 |
语法 | 整数 |
示例 | nsSubStrEnd: 2 |
4.4.8.4. nsSubStrMiddle 复制链接链接已复制到粘贴板!
默认情况下,要索引搜索,搜索字符串必须至少有三个字符,而无需计算任何通配符字符。例如,字符串 abc
将是一个索引的搜索,而 ab*
不是一个索引的搜索。索引的搜索比未索引搜索要快,因此更改搜索键的最小长度有助于增加索引搜索数量。
根据任何通配符字符的位置,可以编辑此子字符串长度。nsSubStrMiddle
属性设置索引搜索所需的字符数,其中搜索字符串中间使用通配符。例如:
ab*z
ab*z
如果更改了此属性的值,则必须使用 db2index
重新生成索引。
参数 | 描述 |
---|---|
条目 DN | cn=attribute_name,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 任何整数 |
默认值 | 3 |
语法 | 整数 |
示例 | nsSubStrMiddle: 3 |
nsAttributeEncryption
对象类允许选择加密数据库中的属性。信用卡号码和政府身份号等极端敏感信息可能无法通过例行访问控制措施进行保护。通常,这些属性值存储在数据库中的 CLEAR 中;加密它们,同时存储了另一个保护层。此对象类具有一个属性 nsEncryptionAlgorithm
,它设定每个属性使用的加密密码。每个加密属性代表上述 cn=config
信息树节点下的子条目,如下图所示:
图 4.3. cn=config 节点下的加密属性
例如,o=UserRoot
下 userPassword
属性的数据库加密文件会出现在目录服务器中,如下所示:
要配置数据库加密,请参阅红帽目录服务器管理指南中的"配置目录数据库"一章中的"数据库加密" 部分。有关索引的更多信息,请参阅 Red Hat Directory Server Administration Guide 中的 "Managing Indexes" 章节。
4.4.9.1. nsAttributeEncryption (Object Class) 复制链接链接已复制到粘贴板!
此对象类用于核心配置条目,用于识别和加密目录服务器数据库中所选属性。
此对象类在 Directory Server 中定义。
卓越的类
top
OID
2.16.840.1.113730.3.2.316
objectClass | 定义条目的对象类。 |
cn | 指定使用其通用名称加密的属性。 |
使用的加密密码。 |
4.4.9.2. nsEncryptionAlgorithm 复制链接链接已复制到粘贴板!
nsEncryptionAlgorithm
选择 nsAttributeEncryption
使用的密码。该算法可以为每个加密属性设置。
参数 | 描述 |
---|---|
条目 DN | cn=attributeName,cn=encrypted attributes,cn=database_name,cn=ldbm database,cn=plugins,cn=config |
有效值 | 以下是支持的密码: * 高级加密标准块加密(AES) * 三数据加密标准块加密加密(3DES) |
默认值 | |
语法 | DirectoryString |
示例 | nsEncryptionAlgorithm: AES |