數據庫備份與還原(新)_第1頁
數據庫備份與還原(新)_第2頁
數據庫備份與還原(新)_第3頁
數據庫備份與還原(新)_第4頁
數據庫備份與還原(新)_第5頁
已閱讀5頁,還剩37頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第11章

數據庫備份與還原盡管SQLServer2005提供了將備份與恢復自動化的工具與模型,但是數據庫管理員仍然需要確定適當的方法,需要建立、建檔和測試健全的恢復計劃。備份與恢復是任何數據庫項目的關鍵部分,是應當在開發的所有階段都要考慮的。本章教與學的建議教師使用2課時邊講邊演示,學生使用2課時在課堂內練習,通過學習能夠根據需要靈活地使用對象資源管理器或T-SQL語句進行數據庫備份和還原。第11章數據庫的備份與還原2/4/20232本章學習任務備份與還原的概述備份與還原概念備份與還原方式數據庫的備份備份設備備份的執行數據庫的還原使用對象資源管理器還原數據庫使用T-SQL語句還原數據庫數據庫維護第11章數據庫的備份與還原2/4/20233備份的重要性備份是恢復受損數據庫最容易、把意外損失降到最小的保障方法。造成數據庫損失的因素有很多:存儲介質故障。用戶錯誤操作。服務器徹底崩潰。一些難以預料的因素。如果數據庫受到損害導致不可讀,應先刪除受損的數據庫,然后再從備份的文件中進行數據庫的重建從而恢復數據庫2/4/20234什么是備份?備份是指在某種介質上(如磁盤、磁帶等)存儲數據庫(或一部分)的拷貝。什么是還原?還原是指利用數據庫的備份,將數據庫返回到備份時的狀態。備份與還原的概述2/4/20235數據庫備份備份是指對數據庫事務日志進行拷貝,數據庫備份記錄了在進行備份操作時數據庫中所有數據的狀態。如果數據庫因意外而損壞,這些備份文件在數據庫恢復時被用來還原數據庫。制定一個良好的備份策略,定期對數據庫進行備份是保護數據庫的一項重要措施。如果發生數據丟失或破壞的情況,可以從數據庫備份中將數據恢復到原來的狀態。另外,除了保護數據庫安全,在制作數據庫副本和在不同服務器之間移動數據庫時也要用到數據庫備份。2/4/20236數據庫備份類型1.數據庫完整備份數據庫完整備份是指對數據庫內的所有對象都進行備份,如果數據庫不是很大而且不是24小時運行的應用系統,也不是一個變化頻繁的系統,可以采用這種備份方式。如果數據庫很大,采用這種方式將很費時間,甚至造成系統訪問緩慢。雖然完整備份比較費時間,但是對于數據庫還是需要定期做完整備份,如一周一次。2/4/20237數據庫備份類型2.數據庫差異備份數據庫差異備份只備份(DifferentialDatabaseBackup)自從上次數據庫全部備份后(注意:不是上一次差異備份后)數據庫變動的部分。如果你在某一天做了數據庫全部備份后,接下來又做了幾次差異備份,當你恢復數據庫時只要先恢復上次的完整備份,然后再恢復最近一次的差異備份就可以了,而不需要依次恢復每一次的差異備份。2/4/20238數據庫備份類型2.數據庫差異備份差異數據庫備份只記錄自上次數據庫備份后發生更改的數據。差異數據庫備份比數據庫備份小而且備份速度快,因此可以經常地備份,經常備份將減少丟失數據的危險。使用差異數據庫備份將數據庫還原到差異數據庫備份完成時那一點。若要恢復到精確的故障點,必須使用事務日志備份。2/4/20239數據庫備份類型3.事務日志備份事務日志備份(Transactionlogbackup)只備份數據庫的事務處理記錄,當數據庫很大時,每次完整備份需要花費很多時間,并且系統可能需要24小時運行,不允許讓過長的備份時間影響在線運行,這時可以采用事務日志備份方式。但是,事務日志備份在數據庫恢復時無法單獨運行,它必須和一次完整備份一起才可以恢復數據庫,而且事務日志備份在恢復時有一定的時間順序,不能搞錯。2/4/202310數據庫備份類型4.文件及文件組備份文件及文件組備份是針對單一數據庫文件或者是文件夾做備份和恢復,它的好處是便利和具有彈性,而且在恢復時可以僅僅針對受損的數據庫文件做恢復。雖然文件及文件組備份有其方便性,但是這類備份必須搭配事務日志備份,因為在恢復部分數據庫文件或者文件夾后必須恢復自數據庫文件或者文件夾備份后所做的所有事務日志備份,否則會造成數據庫的不一致性。因此在做完文件或者文件夾備份后最好立刻做一個事務日志備份。2/4/202311數據庫的還原策略由數據庫的還原模型決定,還原模型是數據庫遭到破壞時恢復用于數據庫中數據的存儲方式。SQLServer2005有三種還原模型:簡單還原模型完整還原模型大容量日志記錄還原數據庫還原方式2/4/202312簡單還原模型特點:

因為數據庫沒有事務日志備份,所以只能執行完整數據庫備份和差異備份。優點:

耗費比較少的磁盤空間,恢復模型簡單。缺點:數據庫只能還原到執行備份操作的那一刻,執行備份之后的所有數據修改都將丟失。數據庫還原方式2/4/202313完整還原模型允許將數據庫還原到故障點狀態。因為這種模型對數據庫的所有操作都記錄在事務日志中,所以當數據庫遭到破壞時,可以使用事務日志迅速地將數據庫恢復到破壞前的那一刻。這種還原模型能對數據庫執行完全數據庫備份、差異備份(可選)和事務日志備份。還原次序:應該從最近的一次完整備份開始;如果最近一次完全備份之后還有差異備份則還原最后一個差異備份;如果最后一個差異備份之后還有日志備份則依次全部還原。數據庫還原方式2/4/202314大容量日志記錄還原同完整還原模型一樣,只是事務日志耗費的磁盤空間比完全還原模型小得多。具體見完整還原模型。數據庫還原方式2/4/202315本章學習任務備份與還原的概述備份與還原概念備份與還原方式數據庫的備份備份設備備份的執行數據庫的還原使用對象資源管理器還原數據庫使用T-SQL語句還原數據庫數據庫維護第11章數據庫的備份與還原2/4/202316備份的執行數據庫的備份策略一般采用:完全數據庫備份策略。主要應用于數據庫比較小或數據庫的數據很少修改或只讀等情況。完全數據庫備份和日志備份策略。主要應用于數據至關重要,任何數據丟失都是難以接受的情況或數據庫更新非常頻繁等情況。差異備份策略。增加備份操作速度,減少備份時間。一般來說,為了減少數據損失在進行增量備份之間的時間間隔內執行日志備份。數據庫的備份2/4/202317備份和還原的流程:創建備份設備進行數據庫的完整備份、差異備份、日志備份、文件和文件組備份還原數據庫數據庫的備份2/4/202318管理備份設備在備份一個數據庫之前,需要先創建一個備份設備,比如磁帶、硬盤等,然后再去復制有備份的數據庫、事務日志、文件/文件組。

SQLServer2005可以將本地主機或者遠端主機上的硬盤作為備份設備,數據備份在硬盤是以文件的方式被存儲。SQLServer2005只支持將數據備份到本地磁帶機,無法將數據備份到網絡上的磁帶機。2/4/2023192.備份設備備份設備是指備份內容的存儲介質。包括:“disk(硬盤文件)”“tape(磁帶)”“pipe(命名管道)”其中,硬盤文件最常用設備介質。

2/4/202320管理備份設備

新建一個備份設備2/4/202321管理備份設備使用備份設備備份數據庫2/4/202322管理備份設備查看備份設備2/4/202323管理備份設備刪除備份設備2/4/202324備份數據庫打開SQLServerManagementStudio,右擊需要備份的數據庫,選擇“任務”→“備份”命令,出現備份數據庫窗口。在這里可以選擇要備份的數據庫以及備份類型。2/4/202325備份數據庫備份數據庫窗口2/4/202326使用T-SQL語句管理備份設備創建一個備份設備sp_addumpdevice‘<設備介質>’,‘<備份設備名>’,'<物理文件>‘刪除備份設備sp_dropdevice[@logicalname=]'device'

[,[@delfile=]'delfile']

2/4/202327使用T-SQL語句備份數據庫(1)數據庫完全備份

BACKUPDATABASE<數據庫名>TO<備份設備名>(2)數據庫差異備份

BACKUPDATABASE<數據庫名>TO<備份設備名>WITHDIFFERENTIAL(3)事務日志備份

BACKUPLOG<數據庫名>TO<備份設備名>2/4/202328例為student數據庫創建備份sp_addumpdevice'disk','s_bak_mdf','d:\example\s_bak_mdf.bak'gosp_addumpdevice'disk','s1_bak_mdf','d:\example\s1_bak_mdf.bak'gosp_addumpdevice'disk','s_bak_log','d:\example\s_bak_log.bak'gobackupdatabasestudenttos_bak_mdfbackupdatabasestudenttos1_bak_mdfwithdifferentialbackuplogstudenttos_bak_log2/4/202329本章學習任務備份與還原的概述備份與還原概念備份與還原方式數據庫的備份備份設備備份的執行數據庫的還原使用對象資源管理器還原數據庫使用T-SQL語句還原數據庫數據庫維護第11章數據庫的備份與還原2/4/202330使用對象資源管理器還原數據庫啟動SQLServerManagementStudio,選擇服務器,右擊相應的數據庫,選擇“還原”命令,再單擊“數據庫”,出現還原數據庫窗口。使用備份設備還原在還原數據庫窗口中選擇“源設備”,單擊其文本框右邊的按鈕,出現“指定備份”對話框。選中備份媒體中的備份設備,單擊“添加”按鈕,出現“選擇備份設備”對話框。選擇相應的備份設備,單擊“確定”按鈕即可。還原數據庫2/4/202331

還原數據庫2/4/202332使用T-SQL語句還原數據庫RESTOREDATABASE{database_name|@database_name_var}[FROM<backup_device>[,…n]][WITH[FILE=file_number][MEDIANAME={media_name|@med1a_name_variable}][[,]MOVE'logical_file_name'TO'operating_system_file_name'][,…n][[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name}][[,]REPLACE][[,]RESTART]]

還原數據庫2/4/202333數據庫的恢復(1)從數據庫備份中還原

RESTOREDATABASE<數據庫名>FROM<備份設備名>[WITHNORECOVERY]2/4/202334數據庫的恢復(2)從事務日志備份中還原

RESTORELOG<數據庫名>FROM<備份設備名>[WITHNORECOVERY]其中,要繼續從后續備份中還原數據必須帶參數WITHNORECOVERY,且數據庫不可用。2/4/202335數據庫的恢復(3)從指定還原點還原 RESTORELOG<數據庫名>FROM<備份設備名>WITHRECOVERY,STOPAT='<日期><時間>'2/4/202336例還原數據庫student。restoredatabasestudentfroms_bak_mdfwithnorecoveryrestoredatabasestudentfroms1_bak_mdfwithnorecoveryrestoredatabasestudentfroms_bak_log2/4/202337例定點還原實例。說明:按步驟完成以下操作,其中的注釋語句可以在SQL-EM中進行,其余語句可以在查詢分析器中執行。本例說明如何使用事務日志備份將數據庫還原至任一時間點。sp_addumpdevice'disk','s_mdf','d:\example\s_mdf.bak'gosp_addumpdevice'disk','s_log1','d:\example\s_log1.bak'gosp_addumpdevice'disk','s_log2','d:\example\s_log2.bak'gobackupdatabasestudenttos_mdf--對數據庫student進行了修改1backuplogstudenttos_log1--對數據庫student進行了修改2--對數據庫student進行了修改3(設時間為2005-6-1716:38:00)--對數據庫student進行了修改4backuplogstudenttos_log2restoredatabasestudentfroms_mdfwithnorecoveryrestorelogstudentfroms_log1withnorecoveryrestorelogstudentfroms_log2withrecovery,stopat='2005-06-1716:38PM'--將數據庫student還原至2005-6-1716:38:00時的狀態。2/4/202338創建數據庫維護計劃可以讓SQLServer自動而有效地維護數據庫。在數據庫引擎中,維護計劃可創建一個作業按照預定間隔自動執行這些維護任務。維護計劃向導可以用于設置核心維護任務,從而確保數據庫執行良好,做到定期備份數據庫以防系統出現故障,對數據庫實施不一致性檢查。維護計劃向導可創建一個或多個SQLServer代理作業,代理作業將按照計劃的間隔自動執行這些維護任務。數據庫維護2/4/202339實驗名稱:數據庫數據的復制與恢復目的要求:掌握SQLServer2005

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論