how to re-create corrupted db2 index in netscape directory server 4
-------------------------------------------------------------------
1. stop directory server at first
[terrence@baghdadic terrence]$ sudo /local/etc/sudo/scripts/stop-slapd-directory
2. make a backup of corrupted index file, and delete it
[http@baghdadic db]$ pwd
/servers/netscape/directory4/slapd-directory/db
[http@baghdadic db]$ cp -p unimacqipregupdate.db2 unimacqipregupdate.db2.orig
[http@baghdadic db]$ rm unimacqipregupdate.db2
3. create new index for attribute unimacqipregupdate
[http@baghdadic db]$ /servers/netscape/directory4/bin/slapd/server/ns-slapd db2index -f /servers/netscape/directory4/slapd-directory/config/slapd.conf -t unimacqipregupdate
[28/Feb/2005:19:54:42 +1100] NSUniqueAttr_Init - plugin loaded
[28/Feb/2005:19:54:42 +1100] radiusbind_init - Plug-in successfully registered
[28/Feb/2005:19:54:42 +1100] radiusbind_init - Read 0 additional arguments from configuration file.
[28/Feb/2005:19:54:42 +1100] NS7bitAttr_Init - plugin loaded
...1000 entries processed...
...
...260000 entries processed...
...260970 total entries.
OK
new directory file is created.
[http@baghdadic db]$ ls -al unimacqipregupdate.db2
-rw------- 1 http 16384 Feb 28 20:02 unimacqipregupdate.db2
4. start directory server
[terrence@baghdadic terrence]$ sudo /local/etc/sudo/scripts/start-slapd-directory
5. do teh same work of replicator server
[http@baghdadic db]$ pwd
/servers/netscape/directory4/slapd-replicator/db
[http@baghdadic db]$ /servers/netscape/directory4/bin/slapd/server/ns-slapd db2index -f /servers/netscape/directory4/slapd-replicator/config/slapd.conf -t unimacqipregupdate
[http@baghdadic db]$ ls -al unimacqipregupdate.db2
-rw------- 1 http 49152 Feb 25 10:51 unimacqipregupdate.db2
n. have a test:
[root@eclectic directory52]# time /servers/sun/directory52/shared/bin/ldapsearch -h directory.unimacq.edu.au -p 389 -D "cn=Directory Manager" -j /servers/local/directory/data/passwd-prod -s sub -b "ou=Resources, o=The University of Macquarie, c=AU" "(unimacqipregupdate=Y)" unimacqipregupdate unimacqipregremovedalias unimacqipregremovedsecondaryip modifytimestamp
...
real 0m0.359s
user 0m0.170s
sys 0m0.090s
[root@eclectic directory52]# time /servers/sun/directory52/shared/bin/ldapsearch -h directory.unimacq.edu.au -p 393 -D "cn=Directory Manager" -j /servers/local/directory/data/passwd-prod -s sub -b "ou=Resources, o=The University of Macquarie, c=AU" "(unimacqipregupdate=Y)" unimacqipregupdate unimacqipregremovedalias unimacqipregremovedsecondaryip modifytimestamp
Corrupted index will cost about 8 minutes to get the result.
Tip:
+ [attribute].db2 file is not recreated until you modify the attribute on an entry
|