2012-10-10 89 views

回答

9

Postfix服務器本身不存儲電子郵件(至少很長時間不存在) - 它只能臨時排隊,直到它被轉發給目標收件人。通常只有IMAP(或過時的POP3)服務器實際存儲您的電子郵件。

大多數開源IMAP服務器(Courier,Cyrus,Dovecot ...)都支持使用MySQL作爲數據庫來保存元信息,如用戶和密碼列表,接受域名列表,用戶別名等。甚至試圖利用像MySQL這樣的數據庫作爲實際的存儲後端。

當然,如果你真的覺得冒險,你可以嘗試實現你自己的SQL IMAP後端。 對您而言,最重要的考慮因素之一是通過數據庫引擎支持無限長的VARCHAR或BLOB(用於電子郵件附件)。不幸的是,就BLOB支持而言,MySQL並不是非常好的服務器(你必須爲此調整客戶端和服務器配置)。此外,如果您關心電子郵件數據的安全性,您可能希望獲得良好的交易支持。對於MySQL,這意味着你必須使用InnoDB引擎。

+1

我認爲你的答案在某些地方是錯誤的。如果我們談論外發郵件,隊列是正確的。但傳入郵件後綴會將電子郵件存儲到文件系統中。從那裏,imap/pop服務器將會接收它們。存儲是以mbox格式完成的,通常位於/ var/spool/mail/[username] –

+0

@BerndOtt:我從來沒有說過postfix在數據庫中存儲郵件,完全相反:「甚至沒有嘗試將數據庫用作實際存儲後端」 。我只是說用戶或別名列表可以存儲在數據庫中。 – mvp

+1

這是誤導......接受答案和明顯錯誤......你應該研究它是如何工作的,並編輯你的答案。 –

相關問題