我需要爲我的Rails應用製作一個備份系統,但這必須有點特別:它不必備份所有數據庫信息和文件在一個文件或文件夾中,但它必須備份數據庫信息和附件文件每個用戶。我的意思是,這些備份中的每一個都應該能夠重新生成單個用戶的所有信息和文件。備份Rails應用程序數據的最佳方式是什麼?
我的問題是: 這可能嗎?什麼是最好的方式來做到這一點?而且,如果它根本不可能或者是一個壞主意,爲什麼呢?
注:該數據庫是一個MySQL的。 注2:我用Paperclip
爲用戶上傳。
我需要爲我的Rails應用製作一個備份系統,但這必須有點特別:它不必備份所有數據庫信息和文件在一個文件或文件夾中,但它必須備份數據庫信息和附件文件每個用戶。我的意思是,這些備份中的每一個都應該能夠重新生成單個用戶的所有信息和文件。備份Rails應用程序數據的最佳方式是什麼?
我的問題是: 這可能嗎?什麼是最好的方式來做到這一點?而且,如果它根本不可能或者是一個壞主意,爲什麼呢?
注:該數據庫是一個MySQL的。 注2:我用Paperclip
爲用戶上傳。
我猜你有一個備份數據的應用程序,當用戶點擊正確的東西?我想讓所有的信息連接到用戶(取決於你如何做你的用戶模型,所以也許你應該有一個get_all_info方法),然後以sql格式寫入一個文件,你保存爲.sql。 (使用File.new或Logger.new)
我會將整個用戶對象和相關對象轉儲到單個xml文件轉儲中。在您創建XML時,會抓取所有文件並將XML +所有文件寫入一個目錄,然後對其進行壓縮。
我認爲確實有這樣的功能的使用情況,但一定要讓它在後臺進程中運行,並且只有在需要時才能運行,以避免停止Web服務器。看看http://github.com/tobi/delayed_job或http://github.com/defunkt/resque。
是的,但用戶的上傳呢? - 我爲此使用了「Paperclip」。 – 2010-09-03 14:58:47