PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fehler "Datenbankanbindungen geändert" bei Cyrus-2.2-Imap nach Upgrade Debian



AndreasMeier
22.01.11, 12:14
Hallo zusammen,

ich hab heute auf meinen Homeserver ein Update von Debian Lenny auf Debian Squeeze gemacht.
Lief eigentlich, bis auf ein paar Probleme, auch reibungslos ab.

Eines dieser Probleme ist folgendes:
Ich hab u.a. das Konstrukt Postfix + Cyrus-Imap laufen.
Beim Update hab ich folgende Fehlermeldung erhalten:


Konfiguriere cyrus-common-2.2

Datenbankanbindungen geändert

Ein Vergleich der Dateien /usr/lib/cyrus/cyrus-db-types.txt und /usr/lib/cyrus/db-types.active zeigt, dass die Datenbankanbindungen des
Cyrus IMPd geändert wurden.
Die Datenbanken, für die sich die Anbindungen geändert hat, müssen mit dem Hilfsprogramm cvt_cyrusdb(8) gegebenenfalls manuell in das neue Format überführt werden.
Mehr Informationen finden Sie in der Datei /usr/share/doc/cyrus-common-2.2/README.Debian.database. Starten Sie keinesfalls "cyrmaster", bevor Sie die Datenbank in das neue Format überführt haben.


Ich hab jetzt mal Cyrus und Postfix gestoppt, bis alles wieder normal laufen sollte.

Ich hab dann in die o.g. "README.Debian.database" reingeschaut und mit diff verglichen, was sich geändert hat.
Resultat:


server:/home/andreas# diff -u /usr/lib/cyrus/cyrus-db-types.active \
> /usr/lib/cyrus/cyrus-db-types.txt
--- /usr/lib/cyrus/cyrus-db-types.active 2009-09-23 12:06:21.000000000 +0200
+++ /usr/lib/cyrus/cyrus-db-types.txt 2010-01-24 00:25:11.000000000 +0100
@@ -1,5 +1,5 @@
ANNOTATION skiplist
-DBENGINE BerkeleyDB4.2
+DBENGINE BerkeleyDB4.7
DUPLICATE berkeley-nosync
MBOX skiplist
PTS berkeley


Soll ja heißen, dass sich die Version der BerkeleyDB geändert hat.
Aber dann versteh ich das README nicht.
Der Text lautet:


If the BerkeleyDB version is what was changed, you need to use the
Berkeley DB upgrade utility in all db* databases. See the manpages for db*_upgrade.
....


Ok, schön und gut.
Ich hab mir dann mal alle Befehle auflisten lassen, die mit "db" anfangen:


..... Liste gekürzt auf alle "db*_upgrade"-Befehle..........
db4.6_upgrade
db4.8_upgrade
....

Jetzt steht aber oben Version 4.7.

Dadurch weiß ich nicht, wie ich genau weiter vorgehen soll.

Folgende Fragen hab ich:
1.) mit welchem Befehl kann ich die Konvertierung durchführen ?
2.) muss ich den Befehl unter User root oder cyrus durchführen
2.) welche Datenbanken sind genau gemeint ?


server:/var/lib/cyrus# ls -l
insgesamt 698
-rw------- 1 cyrus mail 424 22. Jan 09:28 annotations.db
drwx------ 2 cyrus mail 232 22. Jan 09:28 db
drwx------ 2 cyrus mail 144 22. Jan 09:58 db.backup1
drwx------ 2 cyrus mail 144 22. Jan 09:28 db.backup2
-rw------- 1 cyrus mail 311296 22. Jan 09:58 deliver.db
-rw------- 1 cyrus mail 311296 22. Jan 11:40 deliver.db_bak
drwx------ 2 cyrus mail 48 27. Jul 2007 log
-rw------- 1 cyrus mail 43968 22. Jan 09:28 mailboxes.db
drwx------ 2 cyrus mail 48 27. Jul 2007 msg
drwx------ 2 cyrus mail 4728 20. Jan 16:13 proc
drwx------ 28 cyrus mail 672 27. Jul 2007 quota
drwxr-x--- 2 cyrus mail 304 26. Jun 2010 socket
-rw------- 1 cyrus mail 144 22. Jan 11:44 temp_deliver.db
-rw------- 1 cyrus mail 32768 22. Jan 09:58 tls_sessions.db
drwx------ 28 cyrus mail 672 27. Jul 2007 user
server:/var/lib/cyrus#


Danke und Gruß
Andreas

AndreasMeier
22.01.11, 13:21
Nach einem "apt-get autoremove" wurde das Paket "db4.6_utilties" entfernt.
Seit dem ist jetzt auch der Befehl "db4.6_upgrade" nicht mehr vorhanden.

Bleibt nur noch der Befehl "db4.8_upgrade" übrig, was die Beantwortung der 1.Frage ja deutlich vereinfacht :-)

Trotzdem: warum der Versionsunterschied 4.8 (vom Befehl her) zu 4.7 (laut diff) ??

Und natürlich die anderen o.g. Fragen :-)

Danke !!

AndreasMeier
24.01.11, 10:13
Würde mir ein Löschen der Datenbanken, verbunden mit einem "reconstruct" evtl. schneller weiterhelfen ?