Depende do que você quer dizer exatamente com banco de dados.
Se você quiser armazenar e-mails em um RDBMS (real), você pode usar o dbmail. No entanto, não vejo realmente a vantagem no uso diário de e-mail de um RDBMS.
Se você quiser armazenar e-mails em um servidor para vários usuários, talvez não queira usar um servidor de e-mail POP. Em vez disso, você deseja usar um servidor IMAP. O IMAP mantém o correio incl. estrutura da subpasta e informações lidas / não lidas no servidor, permitindo que os usuários visualizem seus e-mails a partir de um cliente de e-mail arbitrário que conheça o IMAP, incluindo aplicativos de webmail.
Servidores de correio padrão IMAP para o Ubuntu são Courier, Cyrus e Dovecot. Para armazenar credenciais de login para seus usuários, o openLDAP seria uma boa escolha. O quadro completo provavelmente envolveria:
- um MTA como o Postfix ou o Exim
- um servidor IMAP como Courier, Dovecot ou Cyrus
- um dbase como o MySQL ou o OpenLDAP para credenciais de login / informações do usuário.
- vários utilitários de filtro de e-mail para enviar spam, como clamav, spamassassin, greylistd e navalha.
- talvez um aplicativo de webmail como squirrelmail ou horde.
Você poderia fazer essa configuração mesmo se quisesse armazenar o email em um banco de dados. Você pode exportar e-mails (em segundo plano) para um banco de dados (muito) rápido como o CouchDB e fazer todas as análises dos seus. Um capítulo em 'Mining the Social Web' de O'Reilly sela com um cenário como esse, BTW.