2009-12-03 43 views
0

我有一個需要上傳文件的java web應用程序,我們希望將這些文件存儲在文件系統而不是數據庫中。數據庫將僅存儲文檔元數據。BFILE定位器可以指向不同文件管理器上的目錄嗎?

問題是,是否將路徑作爲字符串存儲在Oracle中,還是作爲BFILE定位符存儲? BFILE定位器可以指向位於不同文件系統上的位置嗎?如果我們必須將文件存儲在Oracle文件管理器中,那麼我們不妨將其存儲爲BLOB。

回答

2

BFILE定位器必須是從Oracle服務器可見並且Oracle操作系統用戶具有讀寫權限的目錄。所以,雖然理論上它可能是一個遠程服務器,但該方法的管理員會相當快地變得非常粗糙。實際上,在數據庫服務器上擁有BFILE目錄更有意義。

所以,你可以把它存儲爲一個BLOB?那麼,如果文件只能通過數據庫訪問,那麼肯定是。使用BLOB數據類型具有事務性支持的優點。在相關的一點上,它使備份和恢復變得更簡單,因爲文件內容保證與數據庫同步。這不一定適用於BFILE,對於駐留在不同物理服務器上的BFILE,幾乎肯定不是這樣。

相關問題