我正在構建自己的Web電子郵件,並希望儘可能優化地存儲電子郵件附件。最佳的SQL電子郵件附件存儲數據類型?
以下是一般準則,我想實現...
1)這不是一個文件共享服務,它的電子郵件。
2.)我想確保合理大小的附件成功保存在數據庫中。
3.)我想最小化數據庫中使用的空間附件數量。
4.)我想使用中性SQL方法,以便將來從MySQL遷移到PostgreSQL時不會遇到問題。
5.)什麼是合理的限制?我正在考慮單個附件的16-25兆字節的上限。
AOL,Hotmail,Gmail,Yahoo和其他人似乎通常將附件編碼爲base64,一種文本類型。將附件作爲文本或二進制類型存儲是否更合適?
我很樂意作出任何話題上的澄清。
爲什麼你不能將附件存儲在文件系統而不是db中?文件系統的兩個原因將減少數據庫膨脹,並且更容易搜索文件內容。 –
對於文件系統來說,它具有安全性的全部或全無;通過數據庫,您可以使用PHP等腳本語言向預期的收件人說「是」,向其他人說「否」。 – John
僅僅因爲附件在文件系統上,並不意味着它們必須暴露於互聯網。我不是一個PHP的人,但我相信你可以使用它(PHP)來爲存儲在文件系統上的附件提供只有合適的用戶。無論如何,這當然是您決定將數據存儲在適合您的地方。 –