How can I fix this? Hardware is ok, this is just I think a database problem of cyrus. Has anybody an idea how to get back to normal with keeping all my emails?
While I don't think I can help you, not knowing too much about the innards of Cyrus or problems with it, I can suggest a bit more information you could provide to make your question easier to answer.
In particular, if you could post your operating system, OS version, Cyrus version, and Sendmail version that could be helpful to someone trying to answer.
It'd also be useful to know what mail client you use.
You might want to have a look in /var/spool/imap/user/$USERNAME and see how many messages are /really/ in the database. Don't change anything there, as it's all indexed carefully, but it's quite safe to look. Perhaps horde is right?
If you're game, running an strace on imapd as it accepts the connection could also be helpful for telling you what's going on. If you're on *BSD I think it's called ptrace. It'll be very verbose, but if you redirect the output to a file and look over it later it can tell you a lot about what the program did just before dying.
Craig Ringer