Hi,
I'm looking for the right method to monitor the usage of an MDB database
according to the limit of its size imposed via the parameter
olcDbMaxSize. Currently, I am using the following command:
# mdb_stat -e /var/lib/ldap/accesslog/
Environment Info
Map address: (nil)
Map size: 4294967296
Page size: 4096
Max pages: 1048576
Number of pages used: 1048572
Last transaction ID: 24153425
Max readers: 126
Number of readers used: 18
Status of Main DB
Tree depth: 1
Branch pages: 0
Leaf pages: 1
Overflow pages: 0
Entries: 6
Here, I determine the percentage of database usage with the information
"Number of pages used" and "Max pages".
This seemed to be a good method, but I noticed that after a significant
purge of objects in the directory, the number of used pages does not
seem to decrease.
Is there another and/or better method to monitor this? Failing that, is
there a solution to release "falsely" used pages, ideally without too
much downtime of the service (so not a dump/restore)? I read that it was
possible to use the "mdb_copy -c" command, but I am a little concerned
about the duration on a database with approximately 1,000,000 entries.
Thank you in advance.
--
Benjamin Renard - Easter-eggs
44-46 rue de l'Ouest - 75014 Paris - France - Métro Gaité
Phone: +33 (0) 1 43 35 00 37 - mailto:brenard@easter-eggs.com