認識SQL Server2000 幾種恢復模式
1, Simple Recovery 模式
Simple Recovery(簡單恢復)模式是最容易實現的恢復模式,這種恢復模式本質上與在 SQL Server 7.0 中選擇 trunc.log on checkpoint 選項相同。Simple Recovery 模式定期截斷事務日誌,刪除已經被提交的所有事務。因為日誌經常被截斷,所以不能備份。這就使得備份策略只能採用完全備份和差異備份。如果資料庫已經配置為 Simple Recovery 模式,那麼在試圖執行事務日誌備份時將接收到錯誤:
Server: Msg 4208, Level 16, State 1, Line 1 The statement BACKUP LOG is not allowed while the recovery model is SIMPLE. Use BACKUP DATABASE or change the recovery model using ALTER DATABASE. Server: Msg 3013, Level 16, State 1, Line 1 BACKUP LOG is terminating abnormally.
這種模式極其適合只在夜晚執行備份的那些資料庫,或者白天透過差異備份完成備份的那些資料庫。通常這種模式可以滿足大多數開發資料庫。然而使用這個選項意味著不能實現精確到時間點的恢復,而產品可能要求這種恢復。由於事務日誌被截斷和重用,因此應釋放事務日誌所佔用的空間和管理這些備份的維護開銷。
說明:
SQL Server Personal Edition 和 SQL Server Desktop Engine的預設恢復模式是這種模式。
2 , Full Recovery 模式
Full Recovery(完全恢復)模式將丟失資料的可能降至最低,但是增加管理開銷和空間開銷。在這種模式中,SQL Server 記錄所有的操作,其中包括透過類似 bcp 和 BULK INSERT 的批操作寫行。若採用 Full Recovery 模式,只要執行正常的事務日誌備份就可以恢復到任何時間點。應切記,在快速 OLTP 環境中如果選擇該選項,則事務日誌和日誌備份將快速增長。
說明:
Full Recovery模式是SQL Server Standard Edition和SQL Server Enterprise Edit的預設恢復模式。
說明:
Full Recovery模式同時記錄所有的CREATE INDEX命令。SQL Server 7.0僅記錄索引被建立的事實,而不記錄實際的索引。在SQL Server 2000中,記錄實際索引,這意味著透過事務日誌備份恢復資料庫之後不必重建索引。
3, Bulk Recovery 模式
Bulk-Logged Recovery 模式被設計為 Full Recovery 模式的折衷。與 Full Recovery模式相比,這種模式提供較好的效能和空間的利用率。這是因為當啟用此恢復模式的資料庫出現批操作時,SQL Server 僅僅記錄該批操作發生的事實及其發生的範圍。由於批操作的記錄不完全,因此事務日誌將比 Full Recovery 模式的事務日誌小很多。 因為記錄發生批操作的範圍,所以如果定期執行事務日誌備份,則可以將資料庫恢復到給定時間點。折衷的方案是在備份事務日誌時,除事務日誌以外還必須備份資料改變的範圍。這意味著事務日誌備份將變得很大,並且花費的時間更長。
說明:
在 Bulk-Logged Recovery 模式事務日誌的恢復與 Full 模式一致。在這種模式中恢復事務日誌時,無須重新執行搜尋改變範圍的過程。
4, 恢復選項
如果需要恢復設定為 Simple Recovery 模式的資料庫,只需恢復資料庫最近一次的全備份。如果需要恢復一設定為 Full 或 Bulk 模式的資料庫,則不但需要恢復資料庫最近一次的全備份,還要運用最後一次的差異備份以及最終的事務日誌備份。使用最終的事務日誌備份可以指定一個精確的時間點恢復。
提示:筆者建議,如果關心資料庫是否能恢復到指定時間點,則開發資料庫採用 Full 或 Bulk-Logged Recovery 模式。在極少數非這種情形的例項中,可以使用完全備份。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-509637/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mysql的幾種備份與恢復MySql
- 恢復 Microsoft SQL Server SA 密碼的三種方法ROSSQLServer密碼
- SQL Server資料庫恢復,SQL Server資料恢復,SQL Server資料誤刪除恢復工具SQLRescueSQLServer資料庫資料恢復
- kafka 傳送確認引數acks的幾種模式Kafka模式
- 使用 “恢復模式” 或 “DFU 模式” 來更新和恢復 iOS 韌體模式iOS
- 【RMAN】如果控制檔案損壞那麼如何恢復?恢復控制檔案的方式有哪幾種?
- 【知識分享】伺服器的防護幾種模式伺服器模式
- 認識設計模式設計模式
- 帶你認識幾種最流行的Python編輯器/IDEsPythonIDE
- 【RECO_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(四)PDB的幾種恢復方式Oracle
- 幾種常見的NO SQL DBSQL
- 建立物件的幾種模式物件模式
- Docker幾種網路模式Docker模式
- 認識PHP執行模式PHP模式
- 將 SQL Server 資料庫還原到某個時點(完整恢復模式)SQLServer資料庫模式
- Sybase SQL Anywhere(ASA)資料庫恢復,ASA資料恢復,資料誤刪除恢復工具ReadASADBSQL資料庫資料恢復
- 使用binlog2sql恢復資料SQL
- 伺服器sql server 資料恢復伺服器SQLServer資料恢復
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- 使用 DFU 模式修復或恢復 Mac 韌體模式Mac
- sql最佳化的幾種方式SQL
- Vim常見模式有幾種?模式
- 帶你認識幾種最流行的Python編輯器/IDEs(附連結)PythonIDE
- 如何進行SQL Server容災恢復WISQLServer
- 【北亞資料恢復】行動硬碟不認盤怎麼恢復硬碟資料?資料恢復硬碟
- 【知識分享】高防伺服器的常見幾種防禦模式伺服器模式
- 教你如何恢復各種文件密碼密碼
- ThinkPHP 列印 sql 語句的幾種方式PHPSQL
- spring注入bean的幾種策略模式SpringBean模式
- 單例模式有幾種寫法?單例模式
- 【北亞資料恢復】不認盤的行動硬碟怎麼恢復硬碟資料?資料恢復硬碟
- 重新認識Docker Compose之Sidecar模式DockerIDE模式
- 【資料庫資料恢復】SQL server資料庫被加密怎麼辦?如何恢復?資料庫資料恢復SQLServer加密
- 認識各種記憶體地址記憶體
- SQL SEVER 缺少LOG檔案資料庫恢復SQL資料庫
- SQL Server資料庫恢復常見問題SQLServer資料庫
- 解密MySQL備份恢復的4種方法解密MySql
- 資料庫SQL調優的幾種方式資料庫SQL
- 檔案刪除如何恢復?推薦幾款超實用的資料恢復軟體資料恢復