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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第11章

數(shù)據(jù)備份、恢復(fù)和報(bào)表

數(shù)據(jù)庫的導(dǎo)入導(dǎo)出備份概述備份類型創(chuàng)建備份設(shè)備數(shù)據(jù)庫備份的執(zhí)行恢復(fù)(還原)概述恢復(fù)(還原)數(shù)據(jù)庫概述恢復(fù)(還原)數(shù)據(jù)庫數(shù)據(jù)庫的導(dǎo)入導(dǎo)出

通過導(dǎo)入導(dǎo)出操作可以在SQLServer2008和其他異類數(shù)據(jù)源(例如Excel或Oracle數(shù)據(jù)庫)之間輕松地移動(dòng)數(shù)據(jù)。例如,可以將數(shù)據(jù)從Excel應(yīng)用程序?qū)С龅綌?shù)據(jù)文件,然后將該數(shù)據(jù)文件導(dǎo)入到SQLServer表中。

導(dǎo)出是指將數(shù)據(jù)從SQLServer表復(fù)制到數(shù)據(jù)文件中;導(dǎo)入是指將數(shù)據(jù)從數(shù)據(jù)文件加載到SQLServer表中。

在SQLServer2008中,可以將數(shù)據(jù)表中的數(shù)據(jù)在

SQLServerManagement

Studio中導(dǎo)出(兩種途徑進(jìn)行導(dǎo)出)。操作步驟如下圖所示。

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

備份類型:恢復(fù)模式描述簡(jiǎn)單恢復(fù)模式數(shù)據(jù)庫的完整或差異副本截?cái)嗍聞?wù)日志完整恢復(fù)模式包括數(shù)據(jù)庫備份和事務(wù)日志備份大容量日志恢復(fù)包括數(shù)據(jù)庫和事務(wù)日志備份,但使用較少的日志空間

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

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

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

使用SQLServer管理平臺(tái)創(chuàng)建備份設(shè)備:在SQLServer管理平臺(tái)中,選擇想要?jiǎng)?chuàng)建備份設(shè)備的『服務(wù)器』,打開『服務(wù)器對(duì)象』文件夾。

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

在備份設(shè)備圖標(biāo)上右擊,從彈出的快捷菜單中選擇『新建備份設(shè)備』選項(xiàng),如圖所示。

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

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

使用SQLServer管理平臺(tái)進(jìn)行備份:在SQLServer管理平臺(tái)中,展開『數(shù)據(jù)庫』文件夾,右擊所要進(jìn)行『備份的數(shù)據(jù)庫』圖標(biāo),在彈出的快捷菜單中選擇『任務(wù)』選項(xiàng),再選擇『備份數(shù)據(jù)庫』,如圖所示。

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

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

備份數(shù)據(jù)庫的『選項(xiàng)』頁框,如圖:

使用備份向?qū)В?/p>

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

按照backupdatabase的語法規(guī)則,書寫數(shù)據(jù)庫備份的sql語句,完成后執(zhí)行此語句,即可完成數(shù)據(jù)庫備份的操作。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)建一個(gè)名為AdventureWorksBack的命名備份設(shè)備,并執(zhí)行完整的數(shù)據(jù)庫備份。--創(chuàng)建一個(gè)名為AdventureWorksBack的命名備份設(shè)備--設(shè)備存儲(chǔ)在D:\MyBachupDir目錄下--執(zhí)行一個(gè)完整的數(shù)據(jù)庫備份以備份到AdventureWorksBack文件中程序清單如下:USEAdventureWorksEXECsp_addumpdevice‘disk’,‘AdventureWorksBack’,‘D:\MyBachupDir\AdventureWorksBack.bak’BACKUPDATABASEAdventureWorksTOAdventureWorksBack1、BACKUPDATABASEAdventureWorksTOAdventureWorksBackWITHINIT注意以下語句的不同之處:2、BACKUPDATABASEAdventureWorksTOAdventureWorksBackWITHNOINIT3、BACKUPDATABASEAdventureWorksTODISK=‘D:\MyBachupDir\AdventureWorksBack.bak’舉例:為日志創(chuàng)建一個(gè)備份設(shè)備,并備份AdventureWorks數(shù)據(jù)庫的事務(wù)日志。--創(chuàng)建一個(gè)名為AWBackLog的備份設(shè)備,設(shè)備存儲(chǔ)在D:\Bachup目錄下--備份AdventureWorks數(shù)據(jù)庫的事務(wù)日志到備份設(shè)備程序清單如下:USEAdventureWorksEXECsp_addumpdevice‘disk’,‘AWBackLog’,‘D:\Bachup\AWBackLog.bak’BACKUPLOGAdventureWorksTOAWBackLog舉例:在臨時(shí)的備份文件上創(chuàng)建增量(差異)備份。--在臨時(shí)的備份磁盤文件上創(chuàng)建名為MyDiffBackup的差異備份(D:\MyData

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

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

在這個(gè)交互式多媒體中,你需要對(duì)數(shù)據(jù)庫執(zhí)行事務(wù)日志備份。你可以了解到通過SSMS如何建立事務(wù)日志備份,以及設(shè)置事務(wù)日志備份的選項(xiàng)?;謴?fù)(還原)概述:

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

解決辦法:你為服務(wù)器更換了新硬盤,使用存儲(chǔ)在另外一個(gè)盤上的備份文件進(jìn)行故障恢復(fù)。先使用上周日晚的完整備份文件進(jìn)行還原;再使用周二晚上的差異備份文件進(jìn)行還原;最后使用當(dāng)天中午12點(diǎn)的事務(wù)日志備份進(jìn)行了還原。還原的工作方式:

還原是從備份中復(fù)制數(shù)據(jù)并將記錄的事務(wù)應(yīng)用于此數(shù)據(jù),以使其前滾到目標(biāo)恢復(fù)點(diǎn)的過程?;謴?fù)是保持?jǐn)?shù)據(jù)庫一致性并使之處于可用狀態(tài)的操作的完整集合。使用NORECOVERY和RECOVERY選項(xiàng):還原期間的恢復(fù)狀態(tài)由RESTORE語句中的NORECOVERY和RECOVERY選項(xiàng)決定。RECOVERY選項(xiàng)是SQLServer默認(rèn)的選項(xiàng)。當(dāng)RECOVERY選項(xiàng)與最后一個(gè)要還原的事務(wù)日志一起使用或用于完整數(shù)據(jù)庫還原時(shí),在恢復(fù)完成后數(shù)據(jù)庫可供用戶使用。注意:若有額外的事務(wù)日志或必須還原的差異備份,則不能使用此選項(xiàng)。

當(dāng)要還原多個(gè)備份時(shí),應(yīng)使用NORECOVERY選項(xiàng)。要為除最后一個(gè)要還原的備份之外的所有備份指定NORECOVERY選項(xiàng)。對(duì)于NORECOVERY選項(xiàng),還原完數(shù)據(jù)庫后,數(shù)據(jù)庫才能為用戶使用?;謴?fù)(還原)數(shù)據(jù)庫概述:

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

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

SQLServer還原數(shù)據(jù)庫時(shí),根據(jù)數(shù)據(jù)庫備份文件自動(dòng)創(chuàng)建數(shù)據(jù)庫結(jié)構(gòu),并且還原數(shù)據(jù)庫中的數(shù)據(jù)。

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

使用SQLServer管理平臺(tái)還原數(shù)據(jù)庫:打開SQLServer管理平臺(tái),在『數(shù)據(jù)庫』上單擊鼠標(biāo)右鍵,從彈出的快捷菜單中選擇『任務(wù)』選項(xiàng),再選擇『還原數(shù)據(jù)庫』命令,彈出還原數(shù)據(jù)庫對(duì)話框,如圖所示。

恢復(fù)(還原)數(shù)據(jù)庫:選中『選項(xiàng)』頁框,進(jìn)行其他選項(xiàng)的設(shè)置,如圖所示

使用T-SQL語句還原數(shù)據(jù)庫:Transact-SQL提供了RESTORE語句還原數(shù)據(jù)庫,其語法形式如下: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備份設(shè)備中還原數(shù)據(jù)庫company。程序清單如下:RESTOREdatabasecompanyFROMbackup_company舉例:使用T-SQL語句從完整備份和差異備份中還原。假設(shè)完整備份存在于AWBack備份文件中,AWBackDiff文件包含差異備份。--從完整備份AWBack還原數(shù)據(jù)庫AdventureWorks,--回滾未提交事務(wù),使數(shù)據(jù)庫處于用戶可以使用的狀態(tài),無法還原其他事務(wù)日志。程序清單如下:RESTOREDATABASEAdventureWorksFROMAWBackWITHNORECOVERYRESTOREDATABASEAdventureWorksFROMAWBackDiffWITHRECOVERY

還原事務(wù)日志的方法:還原事務(wù)日志將日志中的更改應(yīng)用到數(shù)據(jù)庫

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

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論