《Linux/UNIX OpenLDAP实战指南》——2.8 OpenLDAP索引

本节书摘来自异步社区《Linux/UNIX OpenLDAP实战指南》一书中的第2章,第2.8节,作者:郭大勇著,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.8 OpenLDAP索引

2.8.1 索引介绍
OpenLDAP索引(index)可以提高用户对OpenLDAP目录树查询的速度,减轻OpenLDAP服务器的压力,提高性能。那么如何创建OpenLDAP 索引呢?

可通过ldapmodify命令完成索引的创建和修改。下面通过为olcDatabase={2}hdb数据库文件创建一个“sn pres,eq,sub”索引来进行介绍。

2.8.2 创建索引
要创建索引具体步骤如下。

1)通过ldapsearch命令查看当前olcDatabase={2}hdb有哪些索引。

[root@mldap01 cn=config]# ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config  
                     '(olcDatabase={2}bdb)' olcDbIndex
dn: olcDatabase={2}bdb,cn=config
olcDbIndex: objectClass pres,eq
olcDbIndex: cn pres,eq,sub
olcDbIndex: uid pres,eq,sub
olcDbIndex: uidNumber pres,eq
olcDbIndex: gidNumber pres,eq
olcDbIndex: loginShell pres,eq
olcDbIndex: ou pres,eq,sub
olcDbIndex: mail pres,eq,sub
olcDbIndex: givenName pres,eq,sub
olcDbIndex: memberUid pres,eq,sub
olcDbIndex: nisMapName pres,eq,sub
olcDbIndex: nisMapEntry pres,eq,sub

上述结果显示当前数据库文件没有关于“sn pres,eq,sub”索引的信息。

2)创建一个ldif文件,用于存放索引命令。

[root@mldap01 cn=config]# cat >> hdb-index.ldif << EOF
dn: olcDatabase={2}bdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: sn pres,eq,sub
EOF

3)通过ldapmodify命令创建olcDatabase={2}hdb数据库相关索引条目。

[root@mldap01 ~]# ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f hdb-index.ldif 
modifying entry "olcDatabase={2}bdb,cn=config"

4)通过ldapsearch进行验证,是否“sn pres,eq sub”添加成功。

[root@mldap01 ~]# ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config   
                        '(olcDatabase={2}bdb)' olcDbIndex | grep -i 'sn' 
olcDbIndex: sn pres,eq,sub

从上述结果得知,索引添加成功。后期针对OpenLDAP服务器性能监控,适当添加索引,不仅能提高查询请求,还能提高服务器的性能。

上一篇:《Android游戏开发详解》一2.4 执行Java程序


下一篇:Mapreduce构建hbase二级索引