How to get rid of Berkeley DB
Colin Bruce
ccx004 at coventry.ac.uk
Thu Apr 15 17:39:59 EDT 2004
Dear Mark,
Thanks for the help. Your idea worked a treat. I also had to mess around
with the files in the db directory but I worked all that out it seemed
to work okay. Just in case anyone else wants to do that (as I've copied
this to the list). Here's what I did to convert the seen database from
Berkeley DB to skiplist.
1. stop the server
2. run db_recover in var/imap/db
3. rm the log file from var/imap/db and any left over __db files
4. cd var/imap/user
5. run a script which for each seen file in every directory did a db_dump
and a db_load
6. repeat steps 2 and 3 at this point
7. run a script which Mark suggested that converts every file from BDB
to skiplist. Once all the conversions are complete rename all the
skiplist files to replace the seen files.
8. repeat steps 2 and 3
9. now edit impad.conf and set seenstate_db: to skiplist
10. Make sure that the var/imap/db directory contains nothing other than
the file called skipstamp.
11. start master and all should be fine. There should be no errors in
imapd.log about PANICs or DB errors.
This worked for me anyway so perhaps it might be useful for others. I
risked it because the seen files could be lost and it wouldn't be a total
disaster. Perhaps on other databases it might not be much good.
Best wishes.....
Colin
On Thu, 15 Apr 2004, Mark Keasling wrote:
> Did you try converting all of the ".seen" berkeley db files to skiplist before
> moving them? After stopping cyrus, something like this might work for you:
>
> cd var/user
> for f in */*.seen
> do
> cvt_cyrusdb `pwd`/$f berkeley `pwd`$f.new skiplist
> done
>
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list