SQLServer的三種Recovery Model


SQL Server恢復模式的三種類型的比較

此文章主要向大家講述的是SQL Server恢復模式,我們主要介紹的是三種恢復模式,其中包括簡單SQL Server數據庫的恢復模式、完整恢復模式與大容量日志的正確恢復模式。以下就是文章的主要內容講述。

恢復模式(Recovery Model)旨在控制事務日志維護。恢復模式說明了工作丟失的風險,能否恢復到時點?


SQL Server數據庫有三種恢復模式:簡單SQL Server恢復模式、完整恢復模式和大容量日志恢復模式。

相對於簡單恢復模式而言,完整恢復模式和大容量日志恢復模式提供了更強的數據保護功能。這些恢復模式都是基於備份事務日志來提供完整的可恢復性及在最大范圍的故障情形內防止丟失工作。通常,數據庫使用完整恢復模式或簡單SQL Server恢復模式。

下面對三種恢復模式做一個比較:

恢復模式

日志備份


恢復點


優點


缺點


解決方案及建議

 

簡單(Simple)


無日志備份。


自動回收日志空間以減少空間需求,實際上不再需要管理事務日志空間。

最新備份之后的更改不受保護。在發生災難時,這些更改必須重做。只能恢復到備份的結尾。


簡單恢復模式可最大程度地減少事務日志的管理開銷,因為不備份事務日志。


如果數據庫損壞,則簡單SQL Server恢復模式將面臨極大的工作丟失風險。數據只能恢復到已丟失數據的最新備份。


在簡單恢復模式下,備份間隔應盡可能短,以防止大量丟失數據。簡單恢復模式並不適合生產系統,因為對生產系統而言,丟失最新的更改是無法接受的。在這種情況下,我們建議使用完整恢復模式。

 

完整(Full)


需要日志備份。


理論上可以恢復到任意時點。


數據文件丟失或損壞不會導致丟失工作。


此模式完整記錄所有事務,占用大量空間。

 

大容量(Bulk-logged)


需要日志備份。


如果在最新日志備份后發生日志損壞或執行大容量日志記錄操作,則必須重做自該上次備份之后所做的更改。 可以恢復到任何備份的結尾。不支持時點恢復。

該模式是完整SQL Server恢復模式的附加模式,允許執行高性能的大容量復制操作。通過使用最小方式記錄大多數大容量操作,減少日志空間使用量。


比完整模式節省日志存儲空間。


對於某些大規模大容量操作(如大容量導入或索引創建),暫時切換到大容量日志恢復模式可提高性能並減少日志空間使用量。由於大容量日志恢復模式不支持時點恢復源碼天空,因此必須在增大日志備份與增加工作丟失風險之間進行權衡。


注意:


1. 適合於數據庫的恢復模式取決於數據庫的可用性和恢復要求。


2. 在完整恢復模式和大容量日志SQL Server恢復模式下,必須進行日志備份。如果不想進行日志備份,則請使用簡單恢復模式。

詳細請參考:http://www.codesky.net/article/201007/145522.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM