資源描述:
《SQLServer備份和還原全攻略.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、SQLServer備份和還原全攻略一、知識(shí)點(diǎn)完全備份:備份全部選中的文件夾,并不依賴(lài)文件的存檔屬性來(lái)確定備份那些文件。(在備份過(guò)程中,任何現(xiàn)有的標(biāo)記都被清除,每個(gè)文件都被標(biāo)記為已備份,換言之,清除存檔屬性)。完全備份也叫完整備份。差異備份:差異備份是針對(duì)完全備份:備份上一次的完全備份后發(fā)生變化的所有文件。(差異備份過(guò)程中,只備份有標(biāo)記的那些選中的文件和文件夾。它不清除標(biāo)記,即:備份后不標(biāo)記為已備份文件,換言之,不清除存檔屬性)。增量備份:增量備份是針對(duì)于上一次備份(無(wú)論是哪種備份):備份上一次備份后,所有發(fā)生
2、變化的文件。(增量備份過(guò)程中,只備份有標(biāo)記的選中的文件和文件夾,它清除標(biāo)記,即:備份后標(biāo)記文件,換言之,清除存檔屬性。)事務(wù)日志備份:在特定事務(wù)日志備份之前執(zhí)行的完整數(shù)據(jù)庫(kù)備份和上次差異備份(如果有)。在完整數(shù)據(jù)庫(kù)備份之后執(zhí)行的所有事務(wù)日志備份或在特定事務(wù)日志備份之前執(zhí)行的差異備份(如果您還原了差異備份)。如果你設(shè)置了恢復(fù)模式為【簡(jiǎn)單】,你將無(wú)法使用【事務(wù)日志】備份。SQLServer2000和SQLServer2005:創(chuàng)建事務(wù)日志備份,您必須使用完整恢復(fù)或大容量日志記錄恢復(fù)模型。部分備份:通過(guò)指定READ
3、_WRITE_FILEGROUPS創(chuàng)建的備份稱(chēng)為“部分備份”。在簡(jiǎn)單恢復(fù)模式下,只允許對(duì)只讀文件組執(zhí)行文件組備份。還原的數(shù)據(jù)備份類(lèi)型:數(shù)據(jù)庫(kù)備份、部分備份或文件備份。對(duì)于數(shù)據(jù)庫(kù)備份或部分備份,日志備份序列必須從數(shù)據(jù)庫(kù)備份或部分備份的結(jié)尾處開(kāi)始延續(xù)。對(duì)于一組文件備份,日志備份序列必須從整組文件備份的開(kāi)頭開(kāi)始延續(xù)。文件備份:“文件備份”包含一個(gè)或多個(gè)文件(或文件組)中的所有數(shù)據(jù)。日志鏈:連續(xù)的日志備份序列稱(chēng)為“日志鏈”。日志鏈從數(shù)據(jù)庫(kù)的完整備份開(kāi)始。通常,僅當(dāng)?shù)谝淮蝹浞輸?shù)據(jù)庫(kù)時(shí),或者將恢復(fù)模式從簡(jiǎn)單恢復(fù)模式切換到
4、完整恢復(fù)模式或大容量日志恢復(fù)模式之后,才會(huì)開(kāi)始一個(gè)新的日志鏈。除非在創(chuàng)建完整數(shù)據(jù)庫(kù)備份時(shí)選擇覆蓋現(xiàn)有備份集,否則現(xiàn)有的日志鏈將保持不變。在該日志鏈保持不變的情況下,便可從媒體集中的任何完整數(shù)據(jù)庫(kù)備份還原數(shù)據(jù)庫(kù),然后再還原相應(yīng)恢復(fù)點(diǎn)之前的所有后續(xù)日志備份?;謴?fù)點(diǎn)可以是上次日志備份的結(jié)尾,也可以是任何日志備份中的特定恢復(fù)點(diǎn)。一個(gè)備份方案例子:某個(gè)站點(diǎn)在星期天晚上執(zhí)行完整數(shù)據(jù)庫(kù)備份。在白天每隔4小時(shí)制作一個(gè)事務(wù)日志備份集,并用當(dāng)天的備份重寫(xiě)頭一天的備份。每晚則進(jìn)行差異備份。如果數(shù)據(jù)庫(kù)的某個(gè)數(shù)據(jù)磁盤(pán)在星期四上午9:1
5、2出現(xiàn)故障,則該站點(diǎn)可以:1)????備份當(dāng)前事務(wù)日志;(已經(jīng)出現(xiàn)故障了,如何備份當(dāng)前事務(wù)日志?)2)????還原從星期天晚上開(kāi)始的數(shù)據(jù)庫(kù)備份;3)????還原從星期三晚上開(kāi)始的差異備份,將數(shù)據(jù)庫(kù)前滾到這一時(shí)刻;4)????還原從早上4點(diǎn)到8點(diǎn)的事務(wù)日志備份,以將數(shù)據(jù)庫(kù)前滾到早上8點(diǎn);5)????還原故障之后的日志備份。這將使數(shù)據(jù)庫(kù)前滾到故障發(fā)生的那一刻。?二、還原步驟創(chuàng)建一個(gè)叫TestBackup的數(shù)據(jù)庫(kù),創(chuàng)建一張叫Table1的表,這個(gè)時(shí)候進(jìn)行一次完整備份,備份文件為:TestBackupDB-full.
6、bak;接著創(chuàng)建表Table2后進(jìn)行差異備份,備份文件為:TestBackupDB-diff.bak;接著創(chuàng)建表Table3后進(jìn)行事務(wù)日志備份(如果數(shù)據(jù)庫(kù)設(shè)置了恢復(fù)模式為【簡(jiǎn)單】,那么在備份類(lèi)型選項(xiàng)中將看不到【事務(wù)日志】),備份文件為:TestBackupDB-log.bak;創(chuàng)建一個(gè)叫TestBackup2的數(shù)據(jù)庫(kù),用于測(cè)試TestBackup數(shù)據(jù)庫(kù)的備份文件的還原。(圖1:創(chuàng)建庫(kù)結(jié)構(gòu))(圖2:備份類(lèi)型)??????下面我們就可以對(duì)三個(gè)備份文件:TestBackupDB-full.bak、TestBacku
7、pDB-diff.bak、TestBackupDB-log.bak進(jìn)行還原:??????步驟1:還原完整備份文件TestBackupDB-full.bak,選項(xiàng)如圖4、圖5所示,還原成功后數(shù)據(jù)列表就會(huì)如圖6所示,這是因?yàn)榛謴?fù)狀態(tài)選項(xiàng):不對(duì)數(shù)據(jù)庫(kù)執(zhí)行任何操作,不回滾未提交的事務(wù)??梢赃€原其他事務(wù)日志。(RESTOREWITHNORECOVERY)(圖3:進(jìn)入SSMS還原)(圖4:還原常規(guī))(圖5:還原選項(xiàng))(圖6:完整備份還原)步驟2:還原差異備份文件TestBackupDB-diff.bak,操作如步驟1所示
8、,這個(gè)時(shí)候的數(shù)據(jù)庫(kù)還是跟圖6的狀態(tài)一樣的。步驟3:還原事務(wù)日志備份文件TestBackupDB-log.bak,如圖7進(jìn)入事務(wù)日志的還原操作界面;看圖8的選項(xiàng)中有指定事務(wù)的時(shí)間進(jìn)行還原(還原過(guò)程中的恢復(fù)狀態(tài)都是默認(rèn)為RESTOREWITHRECOVERY,所以這里沒(méi)有提及這個(gè)選項(xiàng))。還原后的TestBackup2數(shù)據(jù)庫(kù),還原之后的數(shù)據(jù)庫(kù)TestBackup2如圖9所示。(圖7:進(jìn)入事務(wù)日志)(圖8: