數據備份、恢復和報表_第1頁
數據備份、恢復和報表_第2頁
數據備份、恢復和報表_第3頁
數據備份、恢復和報表_第4頁
數據備份、恢復和報表_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第11章

數據備份、恢復和報表

數據庫的導入導出備份概述備份類型創(chuàng)建備份設備數據庫備份的執(zhí)行恢復(還原)概述恢復(還原)數據庫概述恢復(還原)數據庫數據庫的導入導出

通過導入導出操作可以在SQLServer2008和其他異類數據源(例如Excel或Oracle數據庫)之間輕松地移動數據。例如,可以將數據從Excel應用程序導出到數據文件,然后將該數據文件導入到SQLServer表中。

導出是指將數據從SQLServer表復制到數據文件中;導入是指將數據從數據文件加載到SQLServer表中。

在SQLServer2008中,可以將數據表中的數據在

SQLServerManagement

Studio中導出(兩種途徑進行導出)。操作步驟如下圖所示。

在“導入導出向導中”依次選擇好數據源,導出的目標,要導出的具體數據(可以根據需要是要基礎數據還是綜合數據),最后進行導出。備份概述:MicrosoftSQLServer2008提供了高性能的備份和還原機制。數據庫備份可以創(chuàng)建備份完成時數據庫內存在的數據的副本,這個副本能在遇到故障時恢復數據庫。這些故障包括:媒體故障,硬件故障,用戶操作錯誤,自然災害等。數據庫備份對于例行的工作(例如,將數據庫從一臺服務器復制到另一臺服務器、設置數據庫鏡像)也很有用。對SQLServer數據庫或事務日志進行備份時,數據庫備份記錄了在進行備份這一操作時數據庫中所有數據的狀態(tài),以便在數據庫遭到破壞時能夠及時地將其恢復。SQLServer備份數據庫是動態(tài)的,在進行數據庫備份時,SQLServer允許其他用戶繼續(xù)對數據庫進行操作。備份類型描述完整備份完整備份包含所有數據文件和部分事務日志事務日志備份所有數據庫更改差異備份備份上一次完整數據庫備份之后被更改的數據庫部分文件或文件組備份制定的文件或文件組(大型數據庫完整備份不可?。?/p>

備份類型:恢復模式描述簡單恢復模式數據庫的完整或差異副本截斷事務日志完整恢復模式包括數據庫備份和事務日志備份大容量日志恢復包括數據庫和事務日志備份,但使用較少的日志空間

恢復模式中包含的備份類型:以下情況應采用完整數據庫備份:數據庫較小數據庫具有很少的數據修改操作或是只讀數據庫時如果采用完整數據庫備份,則要定期清除事務日志星期日星期一星期二完整數據庫備份策略:使用數據庫和事務日志備份策略的場合:修改頻繁的數據庫完整備份耗時太長星期日星期一數據庫和事務日志備份策略:使用差異備份策略的場合:數據庫頻繁修改需要進行最小化備份時單獨備份事務日志星期一星期二增量(差異)備份策略:使用文件或文件組備份策略的場合:超大型數據庫完整備份時間太長單獨備份事務日志可能管理比較復雜星期日星期一星期二星期三數據文件1數據文件2數據文件3文件或文件組備份策略:多媒體:大批量日志備份選項

在這個交互式多媒體中,企業(yè)的數據庫每天將導入5百萬條數據,這會給事務日志備份帶來很大負擔。通過修改數據庫選項,可以解決這個問題。創(chuàng)建備份設備:

備份或還原操作中使用的磁帶機或磁盤驅動器稱為“備份設備”。在創(chuàng)建備份時,必須選擇要將數據寫入的備份設備。MicrosoftSQLServer2008可以將數據庫、事務日志和文件備份到磁盤和磁帶設備上。

使用SQLServer管理平臺創(chuàng)建備份設備:在SQLServer管理平臺中,選擇想要創(chuàng)建備份設備的『服務器』,打開『服務器對象』文件夾。

執(zhí)行備份操作必須擁有對數據庫備份的權限許可,SQLServer只允許系統(tǒng)管理員、數據庫所有者和數據庫備份執(zhí)行者備份數據庫。備份操作的權限:然后彈出備份設備對話框,如下圖所示。

在備份設備圖標上右擊,從彈出的快捷菜單中選擇『新建備份設備』選項,如圖所示。

使用系統(tǒng)存儲過程創(chuàng)建備份設備:

在SQLServer中,可以使用sp_addumpdevice語句創(chuàng)建備份設備,其語法形式如下:sp_addumpdevice{‘device_type’}[,’logical_name’][,’physical_name’][,{{controller_type|’device_status’}}]舉例:在磁盤上創(chuàng)建了一個備份設備(test_backup)。程序清單如下:USEmasterEXECsp_addumpdevice‘disk’,‘test_backup’,‘C:\ProgramFiles\MicrosoftSQLServer\MSSQL\BACKUP\test_backup.bak’數據庫備份的執(zhí)行:

使用SQLServer管理平臺進行備份:在SQLServer管理平臺中,展開『數據庫』文件夾,右擊所要進行『備份的數據庫』圖標,在彈出的快捷菜單中選擇『任務』選項,再選擇『備份數據庫』,如圖所示。

出現(xiàn)SQLServer備份對話框,如圖所示。圖中有兩個頁框,即“常規(guī)”和“選項”頁框。

單擊『添加』按鈕可以選擇將備份添加備份文件還是設備,如下圖所示。

備份數據庫的『選項』頁框,如圖:

使用備份向導:

在SQLServer管理平臺中,點擊菜單中的模板資源管理器。展開『backup』,再雙擊『backupdatabase』。在『連接到數據庫引擎』對話框中,填寫連接信息,再單擊『連接』。此時將打開一個新查詢編輯器窗口,其中包含『備份數據庫』模板的內容,如圖所示。

按照backupdatabase的語法規(guī)則,書寫數據庫備份的sql語句,完成后執(zhí)行此語句,即可完成數據庫備份的操作。Backup語句的語法形式如下:Backupdatabase{database_name|@database_name_var}TO<backup_file>[,…n][WITH[[,]FORMAT][[,]{INIT|NOINIT}][[,]RESTART]]<backup_file>::={backup_file_name|@backup_file_evar}|{disk|tape}={temp_file_name|@temp_file_name_evar}舉例:創(chuàng)建一個名為AdventureWorksBack的命名備份設備,并執(zhí)行完整的數據庫備份。--創(chuàng)建一個名為AdventureWorksBack的命名備份設備--設備存儲在D:\MyBachupDir目錄下--執(zhí)行一個完整的數據庫備份以備份到AdventureWorksBack文件中程序清單如下:USEAdventureWorksEXECsp_addumpdevice‘disk’,‘AdventureWorksBack’,‘D:\MyBachupDir\AdventureWorksBack.bak’BACKUPDATABASEAdventureWorksTOAdventureWorksBack1、BACKUPDATABASEAdventureWorksTOAdventureWorksBackWITHINIT注意以下語句的不同之處:2、BACKUPDATABASEAdventureWorksTOAdventureWorksBackWITHNOINIT3、BACKUPDATABASEAdventureWorksTODISK=‘D:\MyBachupDir\AdventureWorksBack.bak’舉例:為日志創(chuàng)建一個備份設備,并備份AdventureWorks數據庫的事務日志。--創(chuàng)建一個名為AWBackLog的備份設備,設備存儲在D:\Bachup目錄下--備份AdventureWorks數據庫的事務日志到備份設備程序清單如下:USEAdventureWorksEXECsp_addumpdevice‘disk’,‘AWBackLog’,‘D:\Bachup\AWBackLog.bak’BACKUPLOGAdventureWorksTOAWBackLog舉例:在臨時的備份文件上創(chuàng)建增量(差異)備份。--在臨時的備份磁盤文件上創(chuàng)建名為MyDiffBackup的差異備份(D:\MyData

)程序清單如下:BACKUPDATABASEAdventureWorksTODISK=‘D:\MyData\MyDiffBackup.bak’WITHDIFFERENTIAL舉例:用以下代碼備份了數據庫中某個文件組的Orders2文件。PhoneOrders數據庫包含三個文件:Orders1、Orders2和Orders3。事務日志存儲在Orderlog文件中。已存在以下備份文件OrderBackup1、OrderBackup2、OrderBackup3、OrderBackupLog。--備份數據庫中某個文件組的Orders2文件以及數據庫的日志文件。程序清單如下:BACKUPDATABASEPhoneOrdersFILE=Orders2TOOrderBackup2BACKUPLOGPhoneOrdersTOOrderBackupLog多媒體:進行完整備份

在這個交互式多媒體中,你需要對數據庫執(zhí)行完整備份。你可以了解到通過SSMS如何建立備份設備,以及設置完整備份的選項。多媒體:進行事務日志備份

在這個交互式多媒體中,你需要對數據庫執(zhí)行事務日志備份。你可以了解到通過SSMS如何建立事務日志備份,以及設置事務日志備份的選項?;謴停ㄟ€原)概述:

場景:你所在的企業(yè)的數據庫庫擁有一套完整的備份策略:每周日晚上執(zhí)行完整備份,每天晚上執(zhí)行差異備份,每天10點、12點、14點和16點執(zhí)行事務日志備份。某個周三的下午13點,用戶報告說不能訪問數據庫。作為DBA,你檢查時發(fā)現(xiàn)數據庫發(fā)生了嚴重的故障,存儲數據庫文件的硬盤無法工作。這時你將會如何處理?

解決辦法:你為服務器更換了新硬盤,使用存儲在另外一個盤上的備份文件進行故障恢復。先使用上周日晚的完整備份文件進行還原;再使用周二晚上的差異備份文件進行還原;最后使用當天中午12點的事務日志備份進行了還原。還原的工作方式:

還原是從備份中復制數據并將記錄的事務應用于此數據,以使其前滾到目標恢復點的過程?;謴褪潜3謹祿煲恢滦圆⑹怪幱诳捎脿顟B(tài)的操作的完整集合。使用NORECOVERY和RECOVERY選項:還原期間的恢復狀態(tài)由RESTORE語句中的NORECOVERY和RECOVERY選項決定。RECOVERY選項是SQLServer默認的選項。當RECOVERY選項與最后一個要還原的事務日志一起使用或用于完整數據庫還原時,在恢復完成后數據庫可供用戶使用。注意:若有額外的事務日志或必須還原的差異備份,則不能使用此選項。

當要還原多個備份時,應使用NORECOVERY選項。要為除最后一個要還原的備份之外的所有備份指定NORECOVERY選項。對于NORECOVERY選項,還原完數據庫后,數據庫才能為用戶使用?;謴停ㄟ€原)數據庫概述:

數據庫備份后,一旦系統(tǒng)發(fā)生崩潰或者執(zhí)行了錯誤的數據庫操作,就可以從備份文件中還原數據庫。

數據庫還原是指將數據庫備份加載到系統(tǒng)中的過程。系統(tǒng)在還原數據庫的過程中,自動執(zhí)行安全性檢查、重建數據庫結構以及完成填寫數據庫內容。

SQLServer還原數據庫時,根據數據庫備份文件自動創(chuàng)建數據庫結構,并且還原數據庫中的數據。

由于數據庫的還原操作是靜態(tài)的,所以在還原數據庫時,必須限制用戶對該數據庫進行其他操作,因而在還原數據庫之前,首先要設置數據庫訪問屬性。如圖所示。

使用SQLServer管理平臺還原數據庫:打開SQLServer管理平臺,在『數據庫』上單擊鼠標右鍵,從彈出的快捷菜單中選擇『任務』選項,再選擇『還原數據庫』命令,彈出還原數據庫對話框,如圖所示。

恢復(還原)數據庫:選中『選項』頁框,進行其他選項的設置,如圖所示

使用T-SQL語句還原數據庫:Transact-SQL提供了RESTORE語句還原數據庫,其語法形式如下:RESTOREdatabase[FROM<backup_device[],…n>][WITH[[,]FILE=file_number][[,]MOVE‘logical_file_name’TO‘operating_system_file_name’][[,]REPLACE][[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name}]]<backup_device>::={{backup_device_name|@backup_device_name_evar}|{disk|tape|pipe}={temp_backup_device|@temp_backup_device_var}舉例:從backup_company備份設備中還原數據庫company。程序清單如下:RESTOREdatabasecompanyFROMbackup_company舉例:使用T-SQL語句從完整備份和差異備份中還原。假設完整備份存在于AWBack備份文件中,AWBackDiff文件包含差異備份。--從完整備份AWBack還原數據庫AdventureWorks,--回滾未提交事務,使數據庫處于用戶可以使用的狀態(tài),無法還原其他事務日志。程序清單如下:RESTOREDATABASEAdventureWorksFROMAWBackWITHNORECOVERYRESTOREDATABASEAdventureWorksFROMAWBackDiffWITHRECOVERY

還原事務日志的方法:還原事務日志將日志中的更改應用到數據庫

在還原事務日志之前,先還原完整的數據庫備份,再還原最近的差異備份,后按順序還原自上次完整或差異備份后的所有事務日志備份。在將被還原的最后的日志上使用RECOVERY選項舉例:使用T-SQL語句進行還原。假設一個備份文件AWBack中存在完整的數據庫AdventureWorks

,另一個文件AWBackLog中存在兩個(

溫馨提示

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

評論

0/150

提交評論