2013-01-08 59 views
0

我在項目中使用Sqlite。目前我已收集了3000萬個樣本,數據庫文件的大小約爲2GB!我也每12小時自動執行一次使用sqlite3.exe應用程序的備份。數據庫的大小正在增加,我應該切換到增量備份解決方案。我想問問是否有辦法爲sqlite數據庫執行此操作?增量備份解決方案(Sqlite,MySQL,SQL Server)

如果不是,我可以遷移到另一個DBMS(如MySQL或Microsoft SQL Server,...)。我可以使用哪種軟件來自動執行此增量備份過程。有沒有免費的軟件?

回答

0

假設你有你的表格中必要的字段,你可以簡單地完全備份改變的東西,後拉時創建一切最終抽拉:

-- export.sql.template 
sql='SELECT * FROM YourTable WHERE SampleID > $lastSampleID' 

然後,你可以存儲最後每次備份後的SampleID:

# in pseudo-code - this will not work as-is 
cd /path/to/db 
lastSampleID=$(cat lastIDFile) 
. export.sql.template 
echo $sql > export.sql 
sqlite db.sqlite --run-script export.sql > backups/$currentDate 
lastSampleID=$(get-last-id-from-file backups/$currentDate) 
echo $lastSampleID > lastIDFile