三種SQL Server 恢復(fù)模式的比較
此文章主要向大家講述的是SQL Server 恢復(fù)模式,我們大家都知道恢復(fù)模式(Recovery Model)的主要作用在于控制事務(wù)日志維護。SQL Server數(shù)據(jù)庫的恢復(fù)模式說明了工作丟失的風險,能否恢復(fù)到時點?
SQL Server數(shù)據(jù)庫有三種恢復(fù)模式:簡單恢復(fù)模式、完整恢復(fù)模式和大容量日志恢復(fù)模式。
相對于簡單恢復(fù)模式而言,完整SQL Server 恢復(fù)模式和大容量日志恢復(fù)模式提供了更強的數(shù)據(jù)保護功能。這些恢復(fù)模式都是基于備份事務(wù)日志來提供完整的可恢復(fù)性及在***范圍的故障情形內(nèi)防止丟失工作。通常,數(shù)據(jù)庫使用完整恢復(fù)模式或簡單恢復(fù)模式。
下面對三種恢復(fù)模式做一個比較:
恢復(fù)模式
日志備份
恢復(fù)點
優(yōu)點
缺點
解決方案及建議
簡單(Simple)
無日志備份。
自動回收日志空間以減少空間需求,實際上不再需要管理事務(wù)日志空間。
***備份之后的更改不受保護。在發(fā)生災(zāi)難時,這些更改必須重做。只能恢復(fù)到備份的結(jié)尾。
簡單恢復(fù)模式可***程度地減少事務(wù)日志的管理開銷,因為不備份事務(wù)日志。
如果數(shù)據(jù)庫損壞,則簡單SQL Server 恢復(fù)模式將面臨極大的工作丟失風險。數(shù)據(jù)只能恢復(fù)到已丟失數(shù)據(jù)的***備份。
在簡單恢復(fù)模式下,備份間隔應(yīng)盡可能短,以防止大量丟失數(shù)據(jù)。簡單恢復(fù)模式并不適合生產(chǎn)系統(tǒng),因為對生產(chǎn)系統(tǒng)而言,丟失***的更改是無法接受的。在這種情況下,我們建議使用完整恢復(fù)模式。
完整(Full)
需要日志備份。
理論上可以恢復(fù)到任意時點。
數(shù)據(jù)文件丟失或損壞不會導(dǎo)致丟失工作。
此模式完整記錄所有事務(wù),占用大量空間。
大容量(Bulk-logged)
需要日志備份。
如果在***日志備份后發(fā)生日志損壞或執(zhí)行大容量日志記錄操作,則必須重做自該上次備份之后所做的更改。 可以恢復(fù)到任何備份的結(jié)尾。不支持時點恢復(fù)。
該模式是完整恢復(fù)模式的附加模式,允許執(zhí)行高性能的大容量復(fù)制操作。通過使用最小方式記錄大多數(shù)大容量操作,減少日志空間使用量。
比完整模式節(jié)省日志存儲空間。
對于某些大規(guī)模大容量操作(如大容量導(dǎo)入或索引創(chuàng)建),暫時切換到大容量日志恢復(fù)模式可提高性能并減少日志空間使用量。由于大容量日志恢復(fù)模式不支持時點恢復(fù),因此必須在增大日志備份與增加工作丟失風險之間進行權(quán)衡。
注意:
1. 適合于數(shù)據(jù)庫的恢復(fù)模式取決于數(shù)據(jù)庫的可用性和恢復(fù)要求。
2. 在完整恢復(fù)模式和大容量日志SQL Server 恢復(fù)模式下,必須進行日志備份。如果不想進行日志備份,則請使用簡單恢復(fù)模式。
【編輯推薦】
- SQL Server自增字段插入值的步驟
- SQL Server數(shù)據(jù)庫之一個 SQL 2005 XML 查詢的例子
- SQL Server數(shù)據(jù)庫之查看SQL日志文件大小的命令
- SQL Server存儲過程之新手導(dǎo)航
- SQL Server 2008數(shù)據(jù)格式修改時應(yīng)注意什么?