OpenLDAP即使使用分页搜索也无法搜索超过500条条目
我正在设置一个OpenLDAP数据库,现在正在测试它如何处理添加大量用户。我写了一些测试函数来添加成千上万的用户,我可以手动检查每个用户,确认他们确实被添加到了数据库中。然而,当我尝试使用ldapsearch来获取数据库中的所有用户时:
ldapsearch -x -LLL -b dc=example,dc=com uidNumber
它在打印出500个用户后就停止了,然后显示出
Size limit exceeded (4)
我尝试了一些方法。我试着在ldap.conf和slapd.conf中把大小限制改成非常大的数字,还有“unlimited”和“-1”,这些都是我在不同网站上看到的可能的关键词。但这些都没有用。
接着,我尝试使用分页结果。这是通过python ldap来实现的,但同样没有成功。我可以查看返回的结果的多个页面,但它仍然不会给我超过500个结果。例如,我做了10个条目的页面,100个条目的页面,还有500个条目的页面。对于10个条目的页面,我可以得到50页,但之后就不行了。对于100个条目,我得到了5页。对于500个条目,我只得到了1页。500个条目是ldapsearch返回的默认限制,但我真的需要能够获取更多的结果。
有没有人有什么想法,如何解决这个低的最大值限制?
1 个回答
5
slapd.conf
文件中的 sizelimit
是指 OpenLDAP 服务器可以返回的最大条目数量,无论是否使用分页搜索结果。这个值通常在你的服务器上设置为 500。此外,顺便提一下,你可以通过使用 ldapsearch
命令中的 -Epr
选项来设置 page-size
。