各大服務器硬件廠商(IBM,HP等)提供有很好的數據保護策略(硬件或軟件).如大家熟知的RAID磁盤陣列(Redundant Array of Independent Disks)就是很好的數據保護方法.就SQL Server而言,通過維護計劃可以制定詳細的數據備份計劃.
數據備份策略(full backup, differential backup and transaction log backup)
數據備份是為數據恢復服務的,所以建立數據備份計劃之前,應先考慮是否能利用該備份有效的恢復數據(在downtime允許的時間范圍內).還應先考慮系統允許的RPO(Recovery Point Objective,災難發生後,系統或數據必須恢復的時間點), RTO(Recovery Time Objective,指當災難發生後,所采用的系統復原工具或解決方案,可讓系統或數據恢復到正常運作的狀況時,所需花費的時間).
有三種通常使用的備份計劃:
(1). 只有全備份
兩個全備份之間的時間段發生故障,數據會丟失,只能恢復到上一個全備份的數據.
(2). 全備份+日志備份
在全備份之間加入日志備份,可以把備份時間點縮小到更小的粒度.可以在每天做一個全備份,每一個小時或者半個小時做一次日志備份.這樣子的話,如果在23:59分發生故障,需要restore一個full backup+23個transaction log backup,操作恢復的時間會比較久.
(3). 全備份+差異備份+日志備份
在全備份之間加入差異備份(differential backup),差異備份之間有日志備份.
至於選擇哪一種備份策略,要根據實際的情況(RTO, RPO, Server loading等)靈活運用.