版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)備份與恢復(fù)目錄01數(shù)據(jù)庫(kù)故障及恢復(fù)策略02數(shù)據(jù)庫(kù)恢復(fù)的原理及方法03數(shù)據(jù)庫(kù)備份操作04數(shù)據(jù)庫(kù)恢復(fù)操作本章主要內(nèi)容本章主要介紹了數(shù)據(jù)庫(kù)的備份和恢復(fù)。數(shù)據(jù)庫(kù)恢復(fù)技術(shù)用來(lái)應(yīng)對(duì)各種各樣的故障,當(dāng)數(shù)據(jù)庫(kù)出現(xiàn)故障時(shí),恢復(fù)機(jī)制能將數(shù)據(jù)庫(kù)恢復(fù)到一致性狀態(tài),保證數(shù)據(jù)庫(kù)中的數(shù)據(jù)是正確的。數(shù)據(jù)庫(kù)的恢復(fù)是以備份為基礎(chǔ)的,SQLServer2019的備份和恢復(fù)組件為存儲(chǔ)在SQLServer中的關(guān)鍵數(shù)據(jù)提供了重要的保護(hù)手段。本章著重討論備份和恢復(fù)的策略與過(guò)程。數(shù)據(jù)庫(kù)故障及恢復(fù)策略01數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行中發(fā)生故障后,有些事務(wù)尚未完成就被迫中斷,這些未完成事務(wù)對(duì)數(shù)據(jù)庫(kù)所做的修改有一部分已寫(xiě)入物理數(shù)據(jù)庫(kù),這時(shí)數(shù)據(jù)庫(kù)就處于一種不正確的狀態(tài),或者說(shuō)是不一致的狀態(tài),這時(shí)可利用日志文件和數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)的后備副本將數(shù)據(jù)庫(kù)恢復(fù)到故障前的某個(gè)一致性狀態(tài)。數(shù)據(jù)庫(kù)故障是指導(dǎo)致數(shù)據(jù)庫(kù)值出現(xiàn)錯(cuò)誤描述狀態(tài)的情況,數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中可能出現(xiàn)各種各樣的故障,這些故障可分為3類:事務(wù)故障、系統(tǒng)故障和介質(zhì)故障。根據(jù)不同的故障類型,應(yīng)該采取不同的恢復(fù)策略。8.1.1事務(wù)故障及恢復(fù)事務(wù)故障表示由非預(yù)期的、不正常的程序結(jié)束所造成的故障。造成程序非正常結(jié)束的原因包括輸入數(shù)據(jù)錯(cuò)誤、運(yùn)算溢出、違反存儲(chǔ)保護(hù)和并行事務(wù)發(fā)生死鎖等。8.1.1事務(wù)故障及恢復(fù)【例8.1】圖書(shū)借閱事務(wù):某圖書(shū)借閱成功后,需要將該圖書(shū)的庫(kù)存數(shù)量A減去借閱數(shù)量M,同時(shí)在借閱記錄上添加借閱數(shù)量M。BEGINTRANSACTION讀圖書(shū)庫(kù)存量A;A=A-M;IF(A<0)THEN{顯示庫(kù)存數(shù)量不足,不能借閱;ROLLBACK;}ELSE{讀已借圖書(shū)數(shù)量B;B=B+M;COMMIT;}8.1.1事務(wù)故障及恢復(fù)發(fā)生事務(wù)故障時(shí),被迫中斷的事務(wù)可能已對(duì)數(shù)據(jù)庫(kù)進(jìn)行了修改,為了消除該事務(wù)對(duì)數(shù)據(jù)庫(kù)的影響,要利用日志文件中所記錄的信息強(qiáng)行回滾該事務(wù),將數(shù)據(jù)庫(kù)恢復(fù)到修改前的初始狀態(tài)。為此,要檢查日志文件中由這些事務(wù)引起變化的記錄,取消這些沒(méi)有完成的事務(wù)所做的一切改變。這類恢復(fù)操作稱為事務(wù)撤銷(UNDO),具體做法如下。(1)反向掃描日志文件,查找該事務(wù)的更新操作。(2)對(duì)該事務(wù)的更新操作執(zhí)行反操作,即對(duì)已經(jīng)插入的新記錄進(jìn)行刪除操作,對(duì)已刪除的記錄進(jìn)行插入操作,對(duì)修改的數(shù)據(jù)恢復(fù)舊值,用舊值代替新值。這樣由后向前逐個(gè)掃描該事務(wù)已做的所有更新操作并執(zhí)行反操作,直到掃描到此事務(wù)的開(kāi)始標(biāo)記,則事務(wù)故障恢復(fù)完畢。8.1.2系統(tǒng)故障及恢復(fù)
系統(tǒng)故障稱為軟故障,是指造成系統(tǒng)停止運(yùn)轉(zhuǎn)的任何事件,使得系統(tǒng)要重新啟動(dòng)。
系統(tǒng)斷電
數(shù)據(jù)庫(kù)管理系統(tǒng)代碼錯(cuò)誤特定類型的硬件錯(cuò)誤(如CPU故障)操作系統(tǒng)故障8.1.2系統(tǒng)故障及恢復(fù)系統(tǒng)故障的影響:
B所有正在運(yùn)行的事務(wù)都非正常終止C內(nèi)存中數(shù)據(jù)庫(kù)緩沖區(qū)的信息全部丟失D不破壞數(shù)據(jù)庫(kù)A整個(gè)系統(tǒng)的正常運(yùn)行突然被破壞8.1.2系統(tǒng)故障及恢復(fù)發(fā)生系統(tǒng)故障時(shí)可能會(huì)出現(xiàn)兩種情況:1.所有正在運(yùn)行的事務(wù)非正常終止2.數(shù)據(jù)庫(kù)內(nèi)存緩沖區(qū)的信息全部丟失恢復(fù)策略:系統(tǒng)重新啟動(dòng)時(shí),恢復(fù)程序讓所有非正常終止的事務(wù)回滾,強(qiáng)行撤消(UNDO)所有未完成事務(wù)?;謴?fù)策略:系統(tǒng)重新啟動(dòng)時(shí),恢復(fù)程序需要重做(REDO)所有已提交的事務(wù)。8.1.2系統(tǒng)故障及恢復(fù)具體做法如下:(1)
正向掃描日志文件重做(REDO)
隊(duì)列撤銷
(UNDO)隊(duì)列既有BEGINTRANSACTION記錄也有COMMIT記錄只有BEGIN
TRANSACTION記錄,無(wú)相應(yīng)的COMMIT記錄8.1.2系統(tǒng)故障及恢復(fù)(3)
對(duì)重做(REDO)隊(duì)列事務(wù)進(jìn)行重做(REDO)處理(2)
對(duì)撤銷(UNDO)隊(duì)列事務(wù)進(jìn)行撤銷(UNDO)處理反向掃描日志文件,對(duì)每個(gè)撤銷事務(wù)的更新操作執(zhí)行逆操作正向掃描日志文件,對(duì)每個(gè)重做事務(wù)重新執(zhí)行登記的操作8.1.2系統(tǒng)故障及恢復(fù)系統(tǒng)故障發(fā)生后,并不能確定哪些未完成的事務(wù)已更新過(guò)數(shù)據(jù)庫(kù),哪些事務(wù)的提交結(jié)果尚未寫(xiě)入數(shù)據(jù)庫(kù),這樣,系統(tǒng)重新啟動(dòng)后,就要撤銷所有的未完成事務(wù),重做所有已提交的事務(wù)。但是,在故障發(fā)生前已經(jīng)運(yùn)行完畢的事務(wù)有些是正常結(jié)束的,有些是異常結(jié)束的,所以不需要把它們?nèi)砍蜂N或重做。8.1.3介質(zhì)故障及恢復(fù)介質(zhì)故障是指系統(tǒng)在運(yùn)行過(guò)程中,由于輔助存儲(chǔ)器介質(zhì)受到破壞,使存儲(chǔ)在外存中的數(shù)據(jù)部分丟失或全部丟失。這類故障比事務(wù)故障和系統(tǒng)故障發(fā)生的可能性要小,但這是最嚴(yán)重的一種故障,破壞性很大,磁盤(pán)上的物理數(shù)據(jù)和日志文件可能被破壞。解決此問(wèn)題需要裝入發(fā)生介質(zhì)故障前最新的數(shù)據(jù)庫(kù)后備副本,然后利用日志文件重做該副本所運(yùn)行的所有事務(wù)。8.1.3介質(zhì)故障及恢復(fù)具體方法如下。(1)裝入最新的數(shù)據(jù)庫(kù)后備副本,使數(shù)據(jù)庫(kù)恢復(fù)到最近一次轉(zhuǎn)儲(chǔ)的可用狀態(tài)。(2)裝入最新的日志文件副本,根據(jù)日志文件中的內(nèi)容重做已完成的事務(wù)。首先正向掃描日志文件,找出發(fā)生故障前已提交的事務(wù),將其記入重做隊(duì)列。再對(duì)重做隊(duì)列中的各個(gè)事務(wù)進(jìn)行重做處理,方法是正向掃描日志文件,對(duì)每個(gè)重做事務(wù)重新執(zhí)行登記的操作,即將日志文件中數(shù)據(jù)更新后的值寫(xiě)入數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)恢復(fù)的原理及方法02恢復(fù)機(jī)制涉及的關(guān)鍵問(wèn)題2.如何利用這些冗余數(shù)據(jù)實(shí)施數(shù)據(jù)庫(kù)恢復(fù)1.如何建立冗余數(shù)據(jù)數(shù)據(jù)備份(backup)登記日志文件(logging)數(shù)據(jù)庫(kù)鏡像技術(shù)8.2.1數(shù)據(jù)備份備份的數(shù)據(jù)文本稱為后備副本或后援副本。
數(shù)據(jù)備份指定期或不定期地對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行復(fù)制。可以將數(shù)據(jù)復(fù)制到本地機(jī)器上,也可以復(fù)制到其他機(jī)器上,也稱為數(shù)據(jù)轉(zhuǎn)儲(chǔ)。8.2.1數(shù)據(jù)備份[例]故障發(fā)生點(diǎn)備份運(yùn)行事務(wù)正常運(yùn)行─┼───────┼─────────↓────Tf重裝后備副本恢復(fù)─┼───────┴--------→
重新運(yùn)行事務(wù)TaTb8.2.1數(shù)據(jù)備份備份方法按照備份狀態(tài),數(shù)據(jù)備份可分為靜態(tài)備份與動(dòng)態(tài)備份按照備份方式,備份還可以分為海量備份與增量備份是在系統(tǒng)中沒(méi)有正在運(yùn)行的事務(wù)時(shí)進(jìn)行了備份操作。備份期間不允許對(duì)數(shù)據(jù)庫(kù)的任何存取、修改活動(dòng)優(yōu)點(diǎn):簡(jiǎn)單
缺點(diǎn):降低了數(shù)據(jù)庫(kù)的可用性靜態(tài)備份8.2.1數(shù)據(jù)備份動(dòng)態(tài)備份是指在備份期間允許對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取或修改備份操作與用戶事務(wù)并發(fā)進(jìn)行
優(yōu)點(diǎn)
不用等待正在運(yùn)行的用戶事務(wù)結(jié)束
不會(huì)影響新事務(wù)的運(yùn)行
缺點(diǎn)
不能保證副本中的數(shù)據(jù)正確有效動(dòng)態(tài)備份8.2.1數(shù)據(jù)備份海量備份指每次備份全部數(shù)據(jù)庫(kù)增量備份指只備份上次備份后更新過(guò)的數(shù)據(jù)從故障恢復(fù)角度看,使用海量備份得到的后備副本進(jìn)行恢復(fù),會(huì)更方便些,直接裝入最新副本就行;而使用增量備份的后備副本進(jìn)行恢復(fù),需要按時(shí)間順序逐個(gè)加入副本,恢復(fù)時(shí)間比較長(zhǎng)。從傳統(tǒng)效率角度看,如果數(shù)據(jù)庫(kù)很大,事務(wù)處理又十分頻繁,則經(jīng)常性的做增量備份會(huì)更便捷,更實(shí)用,更有效,海量備份耗費(fèi)的時(shí)間太多,因而也就不能頻繁的進(jìn)行。8.2.1數(shù)據(jù)備份8.2.2登記日志文件什么是日志文件1.日志文件的格式以記錄為單位的日志文件以數(shù)據(jù)塊為單位的日志文件日志文件(logfile)是用來(lái)記錄事務(wù)對(duì)數(shù)據(jù)庫(kù)的更新操作的文件8.2.2登記日志文件以記錄為單位的日志文件內(nèi)容各個(gè)事務(wù)的開(kāi)始標(biāo)記(BEGIN
TRANSACTION)各個(gè)事務(wù)的結(jié)束標(biāo)記(COMMIT或ROLLBACK)各個(gè)事務(wù)的所有更新操作以上均作為日志文件中的一個(gè)日志記錄(log
record)8.2.2登記日志文件記錄事務(wù)開(kāi)始標(biāo)記的日志記錄事務(wù)標(biāo)志
+
BEGIN
TRANSACTION例:T1BEGIN
TRANSACTION記錄事務(wù)結(jié)束標(biāo)記的日志記錄事務(wù)標(biāo)志
+
COMMIT事務(wù)標(biāo)志
+
ROLLBACK例:T1
COMMITT2
ROLLBACK8.2.2登記日志文件記錄事務(wù)更新操作的日志記錄示意性例子:T1
U
AA
18
20
T1
I
TU
1T1
D
TV
201.事務(wù)標(biāo)識(shí)(標(biāo)明是哪個(gè)事務(wù))2.操作類型(插入、刪除或修改)3.操作對(duì)象(記錄ID、Block
NO.)4.更新前數(shù)據(jù)的舊值(對(duì)插入操作而言,此項(xiàng)為空值)5.更新后數(shù)據(jù)的新值(對(duì)刪除操作而言,
此項(xiàng)為空值)8.2.2登記日志文件以數(shù)據(jù)塊為單位的日志文件,每條日志記錄的內(nèi)容事務(wù)標(biāo)識(shí)被更新的數(shù)據(jù)塊由于將更新前的整個(gè)塊和更新后的整個(gè)塊都放入日志文件中,操作類型和操作對(duì)象等信息就不必放入日志記錄中了。8.2.2登記日志文件2.日志文件的作用具體作用01事務(wù)故障恢復(fù)和系統(tǒng)故障恢復(fù)必須用日志文件。03在靜態(tài)備份方式中,也可以建立日志文件。02在動(dòng)態(tài)備份時(shí),由于不能獲得數(shù)據(jù)一致性副本,所以采用動(dòng)態(tài)備份方式必須建立日志文件。8.2.2登記日志文件3.登記日志文件的原則
為保證數(shù)據(jù)庫(kù)是可恢復(fù)的,登記日志文件時(shí)必須遵循兩條原則:登記的次序嚴(yán)格按并發(fā)事務(wù)執(zhí)行的時(shí)間次序必須先寫(xiě)日志文件,后寫(xiě)數(shù)據(jù)庫(kù)寫(xiě)日志文件操作:把表示這個(gè)修改的日志記錄寫(xiě)到日志文件中寫(xiě)數(shù)據(jù)庫(kù)操作:把對(duì)數(shù)據(jù)的修改寫(xiě)到數(shù)據(jù)庫(kù)中8.2.3數(shù)據(jù)庫(kù)鏡像技術(shù)數(shù)據(jù)庫(kù)鏡像是數(shù)據(jù)庫(kù)管理系統(tǒng)根據(jù)數(shù)據(jù)庫(kù)管理員的要求,自動(dòng)把整個(gè)數(shù)據(jù)庫(kù)或其中的關(guān)鍵數(shù)據(jù)復(fù)制到另一個(gè)磁盤(pán)上。應(yīng)用1應(yīng)用2應(yīng)用3應(yīng)用4鏡像update復(fù)制readreadread8.2.3數(shù)據(jù)庫(kù)鏡像技術(shù)
出現(xiàn)故障時(shí)
可由鏡像磁盤(pán)繼續(xù)提供使用
同時(shí)數(shù)據(jù)庫(kù)管理系統(tǒng)自動(dòng)利用鏡像磁盤(pán)數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)的恢復(fù)
不需要關(guān)閉系統(tǒng)和重裝數(shù)據(jù)庫(kù)副本應(yīng)用1應(yīng)用2應(yīng)用3應(yīng)用4鏡像update復(fù)制readreadread8.2.3數(shù)據(jù)庫(kù)鏡像技術(shù)頻繁地復(fù)制數(shù)據(jù)自然會(huì)降低系統(tǒng)運(yùn)行效率在實(shí)際應(yīng)用中用戶往往只選擇對(duì)關(guān)鍵數(shù)據(jù)和日志文件鏡像,而不是對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行鏡像。數(shù)據(jù)庫(kù)備份操作038.3.1備份類型數(shù)據(jù)備份可以是完整的數(shù)據(jù)庫(kù)、部分?jǐn)?shù)據(jù)庫(kù)、一組文件或文件組。根據(jù)數(shù)據(jù)備份范圍的不同,SQLServer2019提供了不同的數(shù)據(jù)庫(kù)備份類型,以滿足不同數(shù)據(jù)庫(kù)系統(tǒng)的備份需求。8.3.1備份類型1.完整備份這類備份的速度較慢,而且占用大量的磁盤(pán)空間。在對(duì)數(shù)據(jù)庫(kù)進(jìn)行完整備份時(shí),所有未完成的事務(wù)或者發(fā)生在備份過(guò)程中的事務(wù)都將被忽略。完全備份的主要優(yōu)點(diǎn)是簡(jiǎn)單,備份是單一操作,可按一定的時(shí)間間隔預(yù)先設(shè)定,恢復(fù)時(shí)只需一個(gè)步驟就可以完成。完整備份
指對(duì)數(shù)據(jù)庫(kù)內(nèi)的所有對(duì)象都進(jìn)行備份(所有對(duì)象、系統(tǒng)表以及相關(guān)數(shù)據(jù))8.3.1備份類型2.差異備份這類備份的速度較快,適于更頻繁地執(zhí)行。差異備份也包括事務(wù)日志部分。當(dāng)數(shù)據(jù)庫(kù)發(fā)生故障需要進(jìn)行恢復(fù)操作時(shí),差異備份不能單獨(dú)運(yùn)行,必須結(jié)合數(shù)據(jù)庫(kù)的完整備份一起使用,注意要選用最新的數(shù)據(jù)庫(kù)完整備份和最新的數(shù)據(jù)庫(kù)差異備份來(lái)恢復(fù)數(shù)據(jù)庫(kù),這樣就可以將數(shù)據(jù)庫(kù)恢復(fù)到差異備份的時(shí)刻。差異備份
是完整備份的補(bǔ)充,只備份從最近的完整備份后數(shù)據(jù)庫(kù)變動(dòng)的部分
8.3.1備份類型3.事務(wù)日志備份與差異備份類似,事務(wù)日志備份生成的文件較小、占用時(shí)間較短,但是在還原數(shù)據(jù)時(shí),除了先要還原完整備份之外,還要依次還原每個(gè)事務(wù)日志備份,而不是只還原最后一個(gè)事務(wù)日志備份(這是與差異備份的區(qū)別)。事務(wù)日志備份
指只備份數(shù)據(jù)庫(kù)的事務(wù)日志內(nèi)容
8.3.1備份類型4.文件和文件組備份文件和文件組備份是針對(duì)數(shù)據(jù)庫(kù)文件或者文件組做備份,文件組是包含一個(gè)或者多個(gè)數(shù)據(jù)庫(kù)文件。在大型的數(shù)據(jù)庫(kù)中,可以選用文件和文件組備份的方式復(fù)制數(shù)據(jù)庫(kù)中比較重要的文件,一旦這些文件發(fā)生故障,就可以選用文件和文件組備份進(jìn)行還原操作,從而大大地提高數(shù)據(jù)庫(kù)的恢復(fù)效率。這種方式很便利,而且具有很大的彈性空間。8.3.2備份設(shè)備SQLServer將備份數(shù)據(jù)庫(kù)的載體稱為備份設(shè)備。備份設(shè)備可以是磁帶,也可以是磁盤(pán)。現(xiàn)在通常采用的是磁盤(pán)。備份設(shè)備分為永久備份設(shè)備和臨時(shí)備份設(shè)備兩類。只有創(chuàng)建備份設(shè)備后,才能將需要備份的數(shù)據(jù)庫(kù)備份到備份設(shè)備中。創(chuàng)建備份設(shè)備時(shí),需要指定備份設(shè)備(邏輯備份設(shè)備)對(duì)應(yīng)的操作系統(tǒng)文件名和文件的存放位置(物理備份文件)。SQLServer2019提供了兩種創(chuàng)建備份設(shè)備的方法:一是使用SQLServerManagementStudio(SSMS);二是使用T-SQL語(yǔ)句。8.3.2備份設(shè)備1.使用SQLServerManagementStudio創(chuàng)建備份設(shè)備(1)在SSMS工具的對(duì)象資源管理器中,展開(kāi)“服務(wù)器對(duì)象”,找到“備份設(shè)備”,右擊,在彈出的快捷菜單中選擇“新建備份設(shè)備”命令,如圖所示:8.3.2備份設(shè)備選擇“新建備份設(shè)備”命令后,打開(kāi)“備份設(shè)備”對(duì)話框,如右圖所示。(2)在該對(duì)話框的“設(shè)備名稱”文本框中輸入設(shè)備名稱(如bk),設(shè)置好目標(biāo)文件或保持默認(rèn)值,這里必須保證所選的硬盤(pán)驅(qū)動(dòng)器上有足夠的可用空間,單擊“確定”按鈕即可完成操作。8.3.2備份設(shè)備定義好備份設(shè)備后,在對(duì)象資源管理器中,依次展開(kāi)“服務(wù)器對(duì)象”→“備份設(shè)備”選項(xiàng),可以看到新建立的備份設(shè)備bk,如圖所示?!纠?.2】建立一個(gè)名為bk1的磁盤(pán)備份設(shè)備,其物理存儲(chǔ)位置及文件名為D:\河南城建學(xué)院\bk1.bak。EXECsp_addumpdevice'disk','bk1','D:\河南城建學(xué)院\bk1.bak'8.3.2備份設(shè)備2.使用T-SQL語(yǔ)句創(chuàng)建備份設(shè)備創(chuàng)建備份設(shè)備的T-SQL語(yǔ)句是sp_addumpdevice系統(tǒng)存儲(chǔ)過(guò)程:sp_addumpdevice[@devtype=]'device_type',[@logicalname=]'logical_name',[@physicalname=]'physical_name'8.3.3實(shí)現(xiàn)備份在SQLServer2019中,完整備份、差異備份、事務(wù)日志備份都可以在SQLServerManagementStudio的相同窗口中完成,提高了備份操作的簡(jiǎn)捷性。另外,也可以用T-SQL語(yǔ)句實(shí)現(xiàn)。8.3.3實(shí)現(xiàn)備份1.用SQLServerManagementStudio實(shí)現(xiàn)備份(1)以系統(tǒng)管理員的身份在連接到相應(yīng)的SQLServer服務(wù)器實(shí)例之后,在對(duì)象資源管理器中,單擊服務(wù)器名稱展開(kāi)服務(wù)器樹(shù),找到“數(shù)據(jù)庫(kù)”選項(xiàng)并展開(kāi),選擇要備份的數(shù)據(jù)庫(kù)student,右擊,在彈出的快捷菜單中選擇“任務(wù)”→“備份”命令,如圖8.4所示?;蛟谝獋浞輸?shù)據(jù)庫(kù)的備份設(shè)備上右擊,在彈出的快捷菜單中選擇“備份數(shù)據(jù)庫(kù)”命令,打開(kāi)“備份數(shù)據(jù)庫(kù)”對(duì)話框,如圖8.5所示,在圖中進(jìn)行相應(yīng)的設(shè)置。圖8.4備份命令8.3.3實(shí)現(xiàn)備份(2)在圖8.5中,從“數(shù)據(jù)庫(kù)”下拉列表中選擇student數(shù)據(jù)庫(kù),在“備份類型”中選擇備份類型,在備份組件中選擇“數(shù)據(jù)庫(kù)”命令,在“目標(biāo)”列表框中確保有備份設(shè)備。
圖8.5“備份數(shù)據(jù)庫(kù)”對(duì)話框8.3.3實(shí)現(xiàn)備份(3)在圖8.5中單擊左邊的“選擇頁(yè)”部分的“介質(zhì)選項(xiàng)”,如圖8.6所示。選中“備份到現(xiàn)有介質(zhì)集”單選按鈕,設(shè)置備份介質(zhì)的使用方式。圖8.6設(shè)置介質(zhì)選項(xiàng)8.3.3實(shí)現(xiàn)備份(4)在圖8.5中單擊左邊的“選擇頁(yè)”部分的“備份選項(xiàng)”,如圖8.7所示。保留“名稱”文本框中的內(nèi)容不變,采用默認(rèn)方式,單擊“確定”按鈕,開(kāi)始備份數(shù)據(jù)庫(kù)。圖8.7設(shè)置備份選項(xiàng)8.3.3實(shí)現(xiàn)備份2.用T-SQL語(yǔ)句實(shí)現(xiàn)備份備份使用的T-SQL語(yǔ)句為BACKUP。完整備份、差異備份、文件和文件組備份的語(yǔ)句均為BACKUPDATABASE,事務(wù)日志備份的語(yǔ)句為BACKUPLOG。8.3.3實(shí)現(xiàn)備份實(shí)現(xiàn)完整備份、差異備份、文件和文件組備份的基本語(yǔ)法格式為:BACKUPDATABASE{database_name|@database_name_var}[<file_or_filegroup>[,…n]]/*備份文件或文件組時(shí)使用*/TO<backup_device>[,…n][WITH[DIFFERENTIAL]/*表示進(jìn)行差異備份*/[[,]{INIT|NOINIT}]][;]8.3.3實(shí)現(xiàn)備份實(shí)現(xiàn)事務(wù)日志備份的基本語(yǔ)法格式為:BACKUPLOG{database_name|@database_name_var}TO<backup_device>[,…n][WITH[{INIT|NOINIT}]][;]8.3.3實(shí)現(xiàn)備份【例8.3】對(duì)“student”進(jìn)行一次完整備份,備份到bk備份設(shè)備上(假設(shè)此備份設(shè)備已創(chuàng)建好),并覆蓋掉該備份設(shè)備上已有的內(nèi)容。語(yǔ)句為:
BACKUPDATABASEstudentTObkWITHINIT【例8.4】對(duì)“student”進(jìn)行一次差異備份,也備份到bk備份設(shè)備上,并保留該備份設(shè)備上已有的內(nèi)容。語(yǔ)句為:
BACKUPDATABASEstudentTObkWITHDIFFERENTIAL,NOINIT【例8.5】對(duì)“student”進(jìn)行一次事務(wù)日志備份,直接備份到“D:\河南城建學(xué)院”文件夾下(假設(shè)此文件夾已存在)的student_log.bak文件上。語(yǔ)句為:
BACKUPLOGstudentTODISK='D:\河南城建學(xué)院\student_log.bak'數(shù)據(jù)庫(kù)恢復(fù)操作048.4.1還原模式在SQLServer中有3種數(shù)據(jù)庫(kù)還原模式,分別是簡(jiǎn)單還原(SimpleRecovery)、完全還原(FullRecovery)和批日志還原(Bulk-loggedRecovery)。1.簡(jiǎn)單還原簡(jiǎn)單還原是指在進(jìn)行數(shù)據(jù)庫(kù)還原時(shí)僅使用了完整備份或差異備份,而不涉及事務(wù)日志備份。簡(jiǎn)單還原模式可使數(shù)據(jù)庫(kù)還原到上一次備份的狀態(tài),但由于不使用事務(wù)日志備份進(jìn)行還原,因此無(wú)法將數(shù)據(jù)庫(kù)還原到失敗點(diǎn)狀態(tài)。備份策略:數(shù)據(jù)庫(kù)完整備份+差異備份8.4.1還原模式2.完全還原完全還原是指通過(guò)使用數(shù)據(jù)庫(kù)完整備份和事務(wù)日志備份,將數(shù)據(jù)庫(kù)還原到發(fā)生失敗的時(shí)刻。選擇完全還原模式時(shí)常使用的備份策略是:首先進(jìn)行數(shù)據(jù)庫(kù)完整備份,然后進(jìn)行差異備份,最后進(jìn)行事務(wù)日志備份。8.4.1還原模式3.批日志還原批日志還原在性能上要優(yōu)于簡(jiǎn)單還原和完全還原模式,它能盡最大努力減少批操作所需要的存儲(chǔ)空間。選擇批日志還原模式所采用的備份策略與完全還原所采用的備份策略基本相同。8.4.2恢復(fù)的順序恢復(fù)數(shù)據(jù)庫(kù)的順序如下。(1)恢復(fù)最近的完整備份。(2)恢復(fù)最近的差異備份(如果有)。(3)恢復(fù)自差異備份之后的所有事務(wù)日志備份(按備份的先后順序)。8.4.3實(shí)現(xiàn)恢復(fù)在SQLServer2019中,恢復(fù)數(shù)據(jù)庫(kù)可以在SQLServerManagementStudio中實(shí)現(xiàn),也可以用T-SQL語(yǔ)句實(shí)現(xiàn)。1.使用SQLServerManagementStudio恢復(fù)數(shù)據(jù)庫(kù)(1)在“對(duì)象資源管理器”中右擊student數(shù)據(jù)庫(kù),在彈出的快捷菜單中選擇“任務(wù)”→“還原”→“數(shù)據(jù)庫(kù)”命令,如圖8.8所示,打開(kāi)圖8.9所示的“還原數(shù)據(jù)庫(kù)”窗口。8.4.3實(shí)現(xiàn)恢復(fù)
圖8.8選擇還原數(shù)據(jù)庫(kù)命令
圖8.9“還原數(shù)據(jù)庫(kù)”窗口8.4.3實(shí)現(xiàn)恢復(fù)(2)在圖8.9的“還原數(shù)據(jù)庫(kù)”窗口中,在“源”部分有兩個(gè)選項(xiàng)。如果選中“數(shù)據(jù)庫(kù)”單選按鈕,則可從其對(duì)應(yīng)的下拉列表中選擇要從哪個(gè)數(shù)據(jù)庫(kù)的備份進(jìn)行恢復(fù)。如果選中“設(shè)備”單選按鈕,則可通過(guò)單擊右側(cè)的按鈕,從彈出的“選擇備份設(shè)備”窗口(見(jiàn)圖8.10)中指定備份所在的備份設(shè)備或備份所在的文件。這里以選中“數(shù)據(jù)庫(kù)”單選按鈕為例,并從下拉列表中選擇“student”。選擇“student”后,在窗口下面的“要還原的備份集”列表框中會(huì)列出該數(shù)據(jù)庫(kù)的全部備份,利用這些備份可以還原數(shù)據(jù)庫(kù)。圖8.10“選擇備份設(shè)備”窗口8.4.3實(shí)現(xiàn)恢復(fù)單擊圖8.9中左側(cè)“選擇頁(yè)”部分的“選項(xiàng)”選項(xiàng),窗口形式如圖8.11所示。在圖8.11所示的窗口中,“還原選項(xiàng)”部分各復(fù)選框的含義如下。覆蓋現(xiàn)有數(shù)據(jù)庫(kù):如果服務(wù)器中有與被恢復(fù)的數(shù)據(jù)庫(kù)同名的數(shù)據(jù)庫(kù),則選中該復(fù)選框?qū)⒏采w掉服務(wù)器中現(xiàn)有的同名數(shù)據(jù)庫(kù)。如果服務(wù)器中存在與被恢復(fù)數(shù)據(jù)庫(kù)同名的數(shù)據(jù)庫(kù),并且沒(méi)有對(duì)被恢復(fù)的數(shù)據(jù)庫(kù)進(jìn)行日志尾部備份,則在恢復(fù)數(shù)據(jù)庫(kù)時(shí),必須選中該復(fù)選框,否則會(huì)出現(xiàn)一個(gè)報(bào)錯(cuò)窗口。保留復(fù)制設(shè)置:用于復(fù)制數(shù)據(jù)庫(kù)。將已發(fā)布的數(shù)據(jù)庫(kù)還原到創(chuàng)建該數(shù)據(jù)庫(kù)的服務(wù)器之外的服務(wù)器時(shí),保留復(fù)制設(shè)置。僅在選擇“回滾未提交的事務(wù),使數(shù)據(jù)庫(kù)處于可以使用的狀態(tài)”選項(xiàng)(將在后面說(shuō)明)時(shí),此復(fù)選框才可用。限制訪問(wèn)還原的數(shù)據(jù)庫(kù):使正在還原的數(shù)據(jù)庫(kù)僅供db_owner、dbcreator或sysadmin的成員使用。其他選擇默認(rèn),單擊“確定”按鈕即可完成對(duì)student數(shù)據(jù)庫(kù)的還原操作。
圖8.11還原數(shù)據(jù)庫(kù)中的“選項(xiàng)”窗口8.4.3實(shí)現(xiàn)恢復(fù)2.用T-SQL語(yǔ)句恢復(fù)數(shù)據(jù)庫(kù)恢復(fù)使用的T-SQL語(yǔ)句為RESTORE。數(shù)據(jù)庫(kù)恢復(fù)的語(yǔ)句為RESTOREDATABASE,事務(wù)日志文件恢復(fù)的語(yǔ)句為RESTORELOG。8.4.3實(shí)現(xiàn)恢復(fù)實(shí)現(xiàn)數(shù)據(jù)庫(kù)恢復(fù)的基本語(yǔ)法格式為:RESTOREDATABASE{database_name|@database_name_var}<file_or_filegroup>[,…n][FROM<backup_device>[,…n]][WITH[FILE={file_number|@file_number}][[,]{NORECOVERY|RECOVERY
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代家居裝飾風(fēng)格與心理健康關(guān)系探討
- 構(gòu)建以服務(wù)功能為導(dǎo)向的綠色生態(tài)環(huán)境教育體系
- 生物醫(yī)藥與健康產(chǎn)業(yè)的投資潛力研究
- 現(xiàn)代化技術(shù)與醫(yī)療中心的高層建筑設(shè)計(jì)思考
- 生態(tài)城市建設(shè)中環(huán)境科學(xué)的應(yīng)用研究
- Unit 5 We're family Period 3 (說(shuō)課稿)-2024-2025學(xué)年外研版(三起)(2024)英語(yǔ)三年級(jí)上冊(cè)
- 2024-2025學(xué)年高中生物 第四部分 淺嘗現(xiàn)代生物技術(shù)說(shuō)課稿 浙科版選修1
- 2024-2025學(xué)年高中物理 第四章 電磁感應(yīng) 5 電磁感應(yīng)現(xiàn)象的兩類情況(1)說(shuō)課稿 新人教版選修3-2
- 9古代科技 耀我中華-獨(dú)領(lǐng)風(fēng)騷的古代技術(shù)創(chuàng)造(說(shuō)課稿)2023-2024學(xué)年統(tǒng)編版道德與法治五年級(jí)上冊(cè)
- 26 手術(shù)臺(tái)就是陣地 說(shuō)課稿-2024-2025學(xué)年統(tǒng)編版語(yǔ)文三年級(jí)上冊(cè)001
- 2025版茅臺(tái)酒出口業(yè)務(wù)代理及銷售合同模板4篇
- 2025年N1叉車司機(jī)考試試題(附答案)
- 《醫(yī)院財(cái)務(wù)分析報(bào)告》課件
- 2024年考研政治試題及答案
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級(jí)上冊(cè) 期末綜合卷(含答案)
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 物理 含解析
- 2025年初級(jí)社會(huì)工作者綜合能力全國(guó)考試題庫(kù)(含答案)
- 2024年濰坊護(hù)理職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)附答案
- 《鉗工基本知識(shí)》課件
- DB63T 2357-2024 危化品常壓儲(chǔ)罐安全管理規(guī)范
- 中交與機(jī)械竣工區(qū)別
評(píng)論
0/150
提交評(píng)論