SQL Server數據庫的三種恢復模式:簡單恢復模式、完整恢復模式和大容量日志恢復模式
如何圖形界面下修改恢復模式
找到你想修改的數據庫 右鍵 > 屬性 > 左側 選項既可看到
1.Simple 簡單恢復模式,
Simple模式的舊稱叫”Checkpoint with truncate log“,其實這個名字更形象,在Simple模式下,SQL Server會在每次checkpoint或backup之后自動截斷l(xiāng)og,也就是丟棄所有的inactive log records,僅保留用于實例啟動時自動發(fā)生的instance recovery所需的少量log,這樣做的好處是log文件非常小,不需要DBA去維護、備份log,但壞處也是顯而易見的,就是一旦數據庫出現異常,需要恢復時,最多只能恢復到上一次的備份,無法恢復到最近可用狀態(tài),因為log丟失了。 Simple模式主要用于非critical的業(yè)務,比如開發(fā)庫和測試庫,但是道富這邊的SQL Server(即使是生產庫)大都采用Simple模式,是因為這邊的SQL Server大都用于非critical的業(yè)務(critical的數據庫大都采用Oracle和DB2),可以忍受少于1天的數據丟失(我們的job每天都會定時備份全庫)。
如果需要壓縮數據庫日志(Shrink語句),將數據庫模式切換到簡單恢復模式后壓縮率才是最高的,如果你的數據庫在完整恢復模式或大容量日志回復模式下采用日志壓縮,壓縮后的日志大小并不會很理想。
2.Full 完整恢復模式,
和Simple模式相反,Full模式的舊稱叫”Checkpoint without truncate log“,也就是SQL Server不主動截斷l(xiāng)og,只有備份log之后,才可以截斷l(xiāng)og,否則log文件會一直增大,直到撐爆硬盤,因此需要部署一個job定時備份log。Full的好處是可以做point-in-time恢復,最大限度的保證數據不丟失,一般用于critical的業(yè)務環(huán)境里。缺點就是DBA需要維護log,增加人員成本(其實也就是多了定時備份log這項工作而已)。
3.Bulk-logged 大容量日志恢復
Bulk-logged模式和full模式類似,唯一的不同是針對以下Bulk操作,會產生盡量少的log: 1) Bulk load operations (bcp and BULK INSERT). 2) SELECT INTO. 3) Create/drop/rebuild index 眾所周知,通常bulk操作會產生大量的log,對SQL Server的性能有較大影響,bulk-logged模式的作用就在于降低這種性能影響,并防止log文件過分增長,但是它的問題是無法point-in-time恢復到包含bulk-logged record的這段時間。 Bulk-logged模式的最佳實踐方案是在做bulk操作之前切換到bulk-logged,在bulk操作結束之后馬上切換回full模式。
以下是補充更簡單易懂
SQL Server 2008 支持三種恢復模式,即簡單恢復模式、完整恢復模式和大容量日志恢復模式。
1、簡單恢復:無日志備份。自動回收日志空間以減少空間需求,實際上不再需要管理事務日志空間。 最新備份之后的更改不受保護。在發(fā)生災難時,這些更改必須重做。 只能恢復到備份的結尾。
2、完整恢復:需要日志備份。數據文件丟失或損壞不會導致丟失工作??梢曰謴偷饺我鈺r點(例如應用程序或用戶錯誤之前)。
3、大容量日志恢復:需要日志備份。是完整恢復模式的附加模式,允許執(zhí)行高性能的大容量復制操作。通過使用最小方式記錄大多數大容量操作,減少日志空間使用量。
如果在最新日志備份后發(fā)生日志損壞或執(zhí)行大容量日志記錄操作,則必須重做自該上次備份之后所做的更改。否則不丟失任何工作??梢曰謴偷饺魏蝹浞莸慕Y尾。不支持時點恢復。
其中,如果符合下列任一要求,則使用完整恢復模式:
• 您必須能夠恢復所有數據。
• 數據庫包含多個文件組,并且您希望逐段還原讀/寫輔助文件組(以及可選地還原只讀文件組)。
• 您必須能夠恢復到故障點。
• 您希望可以還原單個頁。
• 您愿意承擔事務日志備份的管理開銷。
因此還原單個數據頁是完整恢復模式功能。
上一篇:SQL Server 數據庫調整表中列的順序操作方法及遇到問題
欄 目:MsSql
下一篇:SQL Server 2008數據庫設置定期自動備份的方法
本文標題:SQL Server數據庫的三種恢復模式:簡單恢復模式、完整恢復模式和大容量日志恢復模式
本文地址:http://mengdiqiu.com.cn/a1/MsSql/10343.html
您可能感興趣的文章
- 01-10SQLServer存儲過程實現單條件分頁
- 01-10SQL Server 2012降級至2008R2的方法
- 01-10SQLServer中防止并發(fā)插入重復數據的方法詳解
- 01-10SQL Server數據庫定時自動備份
- 01-10SQL Server性能調優(yōu)之緩存
- 01-10實現SQL Server 原生數據從XML生成JSON數據的實例代碼
- 01-10Sql Server 死鎖的監(jiān)控分析解決思路
- 01-10SqlServer 在事務中獲得自增ID的實例代碼
- 01-10SqlServer快速檢索某個字段在哪些存儲過程中(sql 語句)
- 01-10SQLServer性能優(yōu)化--間接實現函數索引或者Hash索引


閱讀排行
本欄相關
- 01-10SQLServer存儲過程實現單條件分頁
- 01-10SQLServer中防止并發(fā)插入重復數據的方
- 01-10SQL Server 2012降級至2008R2的方法
- 01-10SQL Server性能調優(yōu)之緩存
- 01-10SQL Server數據庫定時自動備份
- 01-10Sql Server 死鎖的監(jiān)控分析解決思路
- 01-10實現SQL Server 原生數據從XML生成JSON數
- 01-10SqlServer快速檢索某個字段在哪些存儲
- 01-10SqlServer 在事務中獲得自增ID的實例代
- 01-10SQLServer性能優(yōu)化--間接實現函數索引或
隨機閱讀
- 01-10C#中split用法實例總結
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10delphi制作wav文件的方法
- 08-05dedecms(織夢)副欄目數量限制代碼修改
- 01-11ajax實現頁面的局部加載
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10使用C語言求解撲克牌的順子及n個骰子