首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 資料庫備份替代方案:壓縮 + HTTP 下載,突破頻寬瓶頸

     編輯:關於SqlServer

背景與痛點

中小企業常面臨:磁帶備份成本高、雙機熱備昂貴、手工備份需離線保存。遠程撥號備份速度極慢 (實測 3KB/s),大型資料庫備份檔 (50MB+) 傳輸超過 1 小時,極易斷線失敗。

創新方案架構

  1. 本地備份:排程 DTS/維護計畫完整/差異備份至本地磁碟 (.bak)。
  2. 即時壓縮:自製元件 RichZip (壓縮率等同 WinZip) 將 .bak 壓縮為 .zip (實測壓縮比 12~13 倍)。
  3. HTTP 多執行緒下載:使用成熟下載工具 (如網絡螞蟻/NetAnts) 支援斷點續傳、多執行緒、排程下載 .zip 至異地。
  4. 還原流程:解壓縮 .zip → .bak → SQL Server 還原資料庫。

實測數據對比 (56K 撥號, 實際 3KB/s)

資料庫.bak 大小.zip 大小SQL 直接備份下載本方案下載
SoftEnterPrise27,970 KB2,109 KB強制中斷 (超時)12 分鐘
SoFTProduct10,265 KB739 KB18 分鐘3 分鐘
SoFTProductHz11,948 KB930 KB25 分鐘5 分鐘

三庫合計 50MB → 壓縮後 <4MB。直接備份下載需 ~1 小時,本方案 <20 分鐘,且具斷點續傳韌性。

關鍵技術決策

  • 下載工具選擇:採用成熟免費工具 (NetAnts 等),免開發維護成本,功能強大 (多執行緒、斷點續傳、排程),使用者零學習門檻。
  • 壓縮元件:自製 RichZip 或呼叫命令列 WinRAR/7-Zip,確保無授權問題。
  • 安全性:備份目錄不可對外 HTTP 存取;下載連結加入 Token/時效驗證;傳輸層建議 HTTPS。

伺服器端部署步驟

  1. 建立備份裝置,設定排程完整/差異備份至非 Web 可存取目錄。
  2. 部署壓縮排程 (SQL Agent Job 或 Windows 排程):備份完成 → 壓縮 → 搬移至 Web 可下載目錄。
  3. 設定 IIS 虛擬目錄指向下載目錄,啟用目錄瀏覽或提供下載頁面。
  4. 客戶端使用下載工具設定排程自動抓取。

適用場景

頻寬受限、無專線、需異地離線備份的中小型 SQL Server 環境。大型企業建議配合專業備份軟體 (Veritas, CommVault) 或雲端備份服務。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved