Cyrus IMAP: DBERROR nach Update auf Ubuntu

Symptom:
Der Cyrus IMAP Server liefert nach dem Update von zB Ubuntu 9.04 auf Ubuntu 9.10 keine Mails mehr aus und in den Mail Logs erscheinen Horror Zeilen wie:

cyrus/notify[12345]: DBERROR: critical database situation
cyrus/notify[12346]: DBERROR: critical database situation
 
oder
 
mail ctl_cyrusdb[908]: checkpointing cyrus databases
mail ctl_cyrusdb[908]: DBERROR db4: DB_LOGC->get: log record checksum mismatch
mail ctl_cyrusdb[908]: DBERROR db4: DB_LOGC->get: catastrophic recovery may be required
mail ctl_cyrusdb[908]: DBERROR db4: PANIC: DB_RUNRECOVERY: Fatal error, run database recovery
mail ctl_cyrusdb[908]: DBERROR: critical database situation
mail imapd[757]: DBERROR db4: fatal region error detected; runrecovery
mail imapd[757]: DBERROR: error closing: DB_RUNRECOVERY: Fatal error, run database recovery

 

Lösung:
Die Ursache für das Problem liegt daran, dass sich die DB Version geändert hat.
Die Lösung ist trivial. Einfach die “kaputten” bzw. alten Datenbank Files löschen.
(Wer jetzt Angst hat, dass mit dem Löschen der *db-Dateien Cyrus irreparabel beschädigt wird, der sollte entweder Gottvertrauen, gute Pillen oder ein Backup haben.)

# ACHTUNG:
# Alle Cyrus Dienste müssen gestoppt / gekillt sein !!!
su - cyrus
cd /var/lib/cyrus
rm db/*
rm db.backup1/*
rm db.backup2/*
rm deliver.db
rm tls_sessions.db
exit

Hinweis:
Wenn keine db-Dateien vorhanden sind erstellt Cyrus aus den bestehenden Mailboxstrukuren die Dateien neu. Was je nach Größe des Servers eine Weile dauern kann. Es kann also nichts schiefgehen.

0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert