SQL Server數(shù)據(jù)庫應用開發(fā)技術 第12章_第1頁
SQL Server數(shù)據(jù)庫應用開發(fā)技術 第12章_第2頁
SQL Server數(shù)據(jù)庫應用開發(fā)技術 第12章_第3頁
SQL Server數(shù)據(jù)庫應用開發(fā)技術 第12章_第4頁
SQL Server數(shù)據(jù)庫應用開發(fā)技術 第12章_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

知識技能目標:1理解備份、恢復、備份設備的概念2會根據(jù)不同的情況制定合適的備份和恢復策略3掌握創(chuàng)建備份設備、實現(xiàn)備份和恢復數(shù)據(jù)庫的方法,第12章游標及事務,第12章游標及事務,引導案例:教務管理數(shù)據(jù)庫建立起來后,在使用的過程中有可能因各種意外而遭到破壞,比如病毒破壞、計算機設備硬件故障等,都將導致數(shù)據(jù)的丟失和破壞。為了在發(fā)生意外后能夠盡快修復數(shù)據(jù),并把損失降到最低,需要對教務管理數(shù)據(jù)庫進行定期的備份,這樣在發(fā)生意外時,就可以利用之前的備份來恢復數(shù)據(jù)庫。這一章介紹備份和恢復數(shù)據(jù)庫的技術。,12.1備份概述12.2備份數(shù)據(jù)庫12.3恢復概述12.4恢復數(shù)據(jù)庫小結,第12章游標及事務,12.1備份概述,數(shù)據(jù)庫備份是數(shù)據(jù)庫系統(tǒng)運行過程中需定期進行的操作,是保護數(shù)據(jù)庫中數(shù)據(jù)的重要手段。一旦數(shù)據(jù)庫因意外而遭損壞,就須用這些備份來恢復數(shù)據(jù)庫,從而最大程度地減少損失。此外,數(shù)據(jù)庫備份對于例行的工作(例如,將數(shù)據(jù)庫從一臺服務器復制到另一臺服務器、設置數(shù)據(jù)庫鏡像)也很有用。,返回目錄,12.1備份概述,備份是指復制數(shù)據(jù)庫形成的數(shù)據(jù)庫的副本,創(chuàng)建在備份設備上(如磁盤或磁帶),當數(shù)據(jù)庫發(fā)生意外遭到破壞,用戶能夠利用這些已有的備份恢復數(shù)據(jù)。實施合適的備份策略可保護數(shù)據(jù)庫,避免由于各種故障造成的損壞而丟失數(shù)據(jù)。,返回目錄,12.1.1備份的概念,12.1備份概述,(1)完整備份該操作將備份整個數(shù)據(jù)庫的所有內(nèi)容,包括所有的數(shù)據(jù)和足夠的事務日志,是數(shù)據(jù)庫的完整副本。在還原數(shù)據(jù)時,也只需要還原一個備份文件。(2)差異備份差異備份是完整備份的補充,只備份上次完整備份以來更改的數(shù)據(jù)。因此差異備份的數(shù)據(jù)量比完整數(shù)據(jù)備份小,速度也更快。在還原數(shù)據(jù)時,要先還原完整備份后再還原最后一個差異備份。,返回目錄,12.1.2備份類型,12.1備份概述,(3)事務日志備份事務日志備份只備份事務日志里的內(nèi)容,它包括了自上一次事務日志備份后數(shù)據(jù)庫的事務的日志記錄。在還原數(shù)據(jù)時,要先還原完整備份,然后依次還原每個事務日志備份。使用事務日志備份,可以將數(shù)據(jù)庫恢復到故障點或特定的時間點。(4)文件和文件組備份使用文件和文件組備份方式可以只備份數(shù)據(jù)庫中的某些文件或文件組,可以將大型數(shù)據(jù)庫的備份分多次進行,避免數(shù)據(jù)庫備份的時間過長。當數(shù)據(jù)庫里的某個或某些文件損壞時,只還原損壞的文件或文件組備份即可。,返回目錄,12.1.2備份類型,12.2備份數(shù)據(jù)庫,制定備份計劃時需要考慮的方面:(1)備份的內(nèi)容(2)備份的人員(3)備份數(shù)據(jù)庫的時間(4)備份數(shù)據(jù)庫的時間間隔(5)如何備份數(shù)據(jù)庫,返回目錄,12.2.1制定備份計劃,12.2備份數(shù)據(jù)庫,在下面情況發(fā)生時,應進行數(shù)據(jù)庫備份:創(chuàng)建、修改、刪除數(shù)據(jù)庫之前。創(chuàng)建用戶自定義對象之后。因為master數(shù)據(jù)庫被修改,所以必須備份master數(shù)據(jù)庫。增加或刪除服務器的系統(tǒng)存儲過程。修改了master、msdb、model數(shù)據(jù)庫。清除事務日志或執(zhí)行了不寫入事務日志的操作。,返回目錄,12.2.1制定備份計劃,12.2備份數(shù)據(jù)庫,1備份設備備份或還原操作中使用的磁帶機或磁盤驅動器稱為備份設備。在同一個設備中可以存放多個數(shù)據(jù)庫的備份數(shù)據(jù),或者是一個數(shù)據(jù)庫的多個備份數(shù)據(jù)。(1)磁盤設備(2)磁帶設備,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,1備份設備(3)物理和邏輯設備物理備份設備是操作系統(tǒng)用來標識備份設備的名稱,例如:d:backupsstudentfull.bak邏輯備份設備是用戶為物理備份設備定義的別名,用來標識物理備份設備。例如,上述物理設備的邏輯設備名稱可以是:student_backup備份或還原數(shù)據(jù)庫時,物理備份設備名稱和邏輯備份設備名稱可以互換使用。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,2創(chuàng)建磁盤備份設備(1)利用SQLServerManagementStudio創(chuàng)建備份設備1)打開SQLServerManagementStudio。2)在對象資源管理器中,單擊服務器名稱以展開服務器樹。3)展開“服務器對象”,然后右鍵單擊“備份設備”,在快捷菜單中單擊“新建備份設備”。4)在隨后打開“備份設備”對話框中,輸入設備的名稱(邏輯設備名),單擊“文件”并指定該文件的完整路徑(物理設備名)。5)單擊“確定”按鈕完成設備的創(chuàng)建。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,2創(chuàng)建磁盤備份設備(2)用T-SQL語句創(chuàng)建備份設備語法格式:sp_addumpdevice設備類型,邏輯名稱,物理名稱說明:設備類型:指定備份設備的類型,可以是disk(硬盤文件作為備份設備)或tape(MicrosoftWindows支持的任何磁帶設備)。邏輯名稱:指定備份設備的邏輯名稱。物理名稱:指定備份設備的物理名稱,包含完整路徑?!纠?2.1】添加一個名為dump1的磁盤備份設備,其物理位置為d:backupdump1.bak。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,3查看備份設備用SQLServerManagementStudio查看備份設備里的內(nèi)容的步驟如下:1)打開MicrosoftSQLServerDatabaseEngine。2)在對象資源管理器中,單擊服務器名稱展開服務器樹。3)依次展開“服務器對象”、“備份設備”。4)在要查看內(nèi)容的備份設備名上單擊右鍵,選擇“屬性”,或雙擊要查看的備份設備名。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,3查看備份設備5)彈出“備份設備設備名稱”對話框,對話框中有兩個選項:“常規(guī)”、“媒體內(nèi)容”。選擇“常規(guī)”對話框中可以查看設備的物理位置,選擇“媒體內(nèi)容”選項,彈出對話框,在該對話框里可以查看該備份設備里包含的數(shù)據(jù)庫備份數(shù)據(jù),如備份時的備份名稱、備份類型、備份的數(shù)據(jù)庫、備份時間、過期時間等等。6)查看完畢后,單擊“確定”退出該對話框。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,4刪除備份設備在SQLServerManagementStudio里刪除備份設備的方法如下:1)打開SQLServerManagementStudio。2)在對象資源管理器中,單擊服務器名稱展開服務器樹。3)展開“服務器對象”、“備份設備”4)在要查看內(nèi)容的備份設備名上單擊右鍵,選擇“刪除”。5)彈出“刪除對象”對框話,在該對話框里單擊“確定”開始執(zhí)行刪除操作。,返回目錄,12.2.2創(chuàng)建和管理備份設備,12.2備份數(shù)據(jù)庫,備份設備創(chuàng)建好之后,就可以利用它們備份數(shù)據(jù)庫了。1用SQLServerManagementStudio備份數(shù)據(jù)庫1)打開SQLServerManagementStudio。2)在對象資源管理器中,單擊服務器名稱展開服務器樹。3)展開“數(shù)據(jù)庫”,選擇要備份的數(shù)據(jù)庫。4)右鍵單擊數(shù)據(jù)庫,從彈出的快捷菜單中指向“任務”,再選擇“備份”。5)在隨后出現(xiàn)的“備份數(shù)據(jù)庫”對話框中的“數(shù)據(jù)庫”下拉列表框中,選擇要備份的數(shù)據(jù)庫的名稱。,返回目錄,12.2.3執(zhí)行備份,12.2備份數(shù)據(jù)庫,1用SQLServerManagementStudio備份數(shù)據(jù)庫6)可以對任意恢復模式(FULL、BULK_LOGGED或SIMPLE)執(zhí)行數(shù)據(jù)庫備份。7)選擇備份的組件,是對整個數(shù)據(jù)庫備份還是對指定的文件和文件組進行備份。如果只對指定的文件和文件組進行備份,選擇“文件和文件組”,將會打開“選擇文件和文件組”對話框,選擇要備份的文件組或者文件,選擇“確定”按鈕,關閉“選擇文件和文件組”對話框。,返回目錄,12.2.3執(zhí)行備份,12.2備份數(shù)據(jù)庫,1用SQLServerManagementStudio備份數(shù)據(jù)庫8)備份集的名稱和說明是對備份的說明性文字。9)指定備份的保留時間,以防止在指定的日期前覆蓋備份。備份集過期后會可以被新的備份覆蓋。10)在“備份類型”列表框中,選擇備份的類型,為“完整”、“差異”或“事務日志”。11)在“備份數(shù)據(jù)庫”對話框中選擇左邊“選項頁”中的“選項”,打開選項界面,指定相關屬性。12)選擇“確定”按鈕,開始備份過程。,返回目錄,12.2.3執(zhí)行備份,12.2備份數(shù)據(jù)庫,2用T-SQL語句備份數(shù)據(jù)庫使用BACKUPDATABASE命令可以對數(shù)據(jù)庫進行完整備份、備份一個或多個文件或文件組或差異備份。使用BACKUPLOG命令可以備份事務日志。語法格式:BACKUPDATABASE數(shù)據(jù)庫TO備份設備|disk=磁盤文件名WITH選項BACKUPLOG數(shù)據(jù)庫TO備份設備|disk=磁盤文件名WITH選項說明:選項可以設置備份操作的各種屬性。,返回目錄,12.2.3執(zhí)行備份,12.2備份數(shù)據(jù)庫,【例12.2】創(chuàng)建備份設備JwglData,并將“教務管理數(shù)據(jù)庫”完整備份到該設備?!纠?2.3】將“教務管理數(shù)據(jù)庫”完整備份到磁盤文件。【例12.4】將“教務管理數(shù)據(jù)庫”差異備份到名為“JwglData”的備份設備上。【例12.5】將test數(shù)據(jù)庫的完整備份、事務日志備份到名為“dump2”的備份設備上?!纠?2.6】將test數(shù)據(jù)庫的名為“testData2”的文件備份到名為“dump2”的備份設備上?!纠?2.7】備份事務日志尾部。,返回目錄,12.2.3執(zhí)行備份,12.2備份數(shù)據(jù)庫,3通過備份設備來備份數(shù)據(jù)庫1)打開SQLServerManagementStudio。2)在對象資源管理器中展開服務器實例。3)展開“服務器對象”、“備份設備”。4)在要創(chuàng)建數(shù)據(jù)庫備份的備份設備上右擊,選擇“備份數(shù)據(jù)庫”。5)彈出“備份數(shù)據(jù)庫”對話框,在該對話框的“目標”區(qū)域里已經(jīng)自動添加了該備份設備,設置其它備份屬性。6)選擇“確定”開始備份。,返回目錄,12.2.3執(zhí)行備份,12.3恢復概述,數(shù)據(jù)庫備份后,一旦系統(tǒng)發(fā)生崩潰或者執(zhí)行了錯誤的數(shù)據(jù)庫操作,就可以從備份文件中還原數(shù)據(jù)庫。即根據(jù)數(shù)據(jù)庫備份文件自動創(chuàng)建數(shù)據(jù)庫結構,并且還原數(shù)據(jù)庫中的數(shù)據(jù),使數(shù)據(jù)庫恢復到備份時的狀態(tài)。在還原數(shù)據(jù)庫的過程中,系統(tǒng)自動執(zhí)行安全性檢查,保證數(shù)據(jù)庫的一致性。,返回目錄,12.3恢復概述,恢復是從一個或多個備份中還原數(shù)據(jù),并在還原最后一個備份后,使數(shù)據(jù)庫處于一致且可用的狀態(tài)并使其在線的一組完整的操作。,12.3.1恢復的概念和方法,返回目錄,12.3恢復概述,數(shù)據(jù)庫還原的方式與備份的方式一致,它們包括:完整備份的還原:無論是何種備份的還原,都要先做完整備份的還原。完整備份的還原只需要還原完整備份文件即可。差異備份的還原:差異備份的還原需要兩步,首先還原完整備份,然后還原最后一個差異備份。事務日志備份的還原:事務日志備份的還原分為兩步,首先還原完整備份和最后一個差異備份,然后依次恢復這個差異備份之后到數(shù)據(jù)庫損壞之間的每一個事務日志備份。文件和文件組備份的還原:當數(shù)據(jù)庫中只有某個文件或文件組損壞時適合使用這種還原模式。,12.3.1恢復的概念和方法,返回目錄,12.3恢復概述,1故障類型媒體故障(如磁盤損壞);用戶錯誤(如誤刪除了某個表);硬件故障(如磁盤驅動器損壞或服務器報廢);自然災難(如地震)。,12.3.2故障類型和恢復模式,返回目錄,12.3恢復概述,2恢復模式(1)簡單恢復模式在該模式下數(shù)據(jù)庫只能做完整備份和差異備份,沒有事務日志備份。數(shù)據(jù)庫只可恢復到最近的數(shù)據(jù)備份時間。(2)完整恢復模式完整恢復模式完整地記錄了所有的事務,并保留所有的事務日志記錄,直到將它們備份。完整恢復模式可在最大范圍內(nèi)防止出現(xiàn)故障時丟失數(shù)據(jù),它包括數(shù)據(jù)庫備份和事務日志備份,使數(shù)據(jù)庫免受媒體故障影響。,12.3.2故障類型和恢復模式,返回目錄,12.3恢復概述,2恢復模式(3)大容量日志恢復模式大容量日志恢復模式是對完整恢復模式的補充。在該恢復模式下,只對大容量操作(如導入數(shù)據(jù)、SELECTINTO等操作)進行最小記錄,只記錄必要的操作,不記錄所有日志。提供最佳性能并占用最小日志空間,一旦出現(xiàn)問題,數(shù)據(jù)將有可能無法恢復。,12.3.2故障類型和恢復模式,返回目錄,12.3恢復概述,3.查看或更改數(shù)據(jù)庫的恢復模式通過SQLServerManagementStudio查看或者更改數(shù)據(jù)庫的恢復模式,步驟如下:1)打開SQLServerManagementStudio。2)在對象資源管理器中,單擊服務器名稱展開服務器樹。3)展開“數(shù)據(jù)庫”,然后選擇相應的數(shù)據(jù)庫。,12.3.2故障類型和恢復模式,返回目錄,12.3恢復概述,3.查看或更改數(shù)據(jù)庫的恢復模式4)在該數(shù)據(jù)庫單擊右鍵,選擇“屬性”,打開“數(shù)據(jù)庫屬性”對話框。5)在“選擇頁”窗格中,單擊“選項”,此時“數(shù)據(jù)庫屬性”對話框。6)當前恢復模式顯示在“恢復模式”列表框中,可以從列表中選擇不同的模式來更改恢復模式??梢愿鶕?jù)需要選擇“完整”、“大容量日志”或“簡單”。7)選擇“確定”按鈕完成設置。,12.3.2故障類型和恢復模式,返回目錄,12.4恢復數(shù)據(jù)庫,RESTOREDATABASE語句可以恢復各種數(shù)據(jù)庫備份,用RESTORELOG語句用來還原事務日志備份。語法格式:RESTOREDATABASE數(shù)據(jù)庫FROM備份設備|DISK=物理磁盤文件名RESTORELOG數(shù)據(jù)庫FROM備份設備|DISK=物理磁盤文件名【例12.8】還原完整數(shù)據(jù)庫備份,用JwglData備份設備中的第一個完全備份集還原數(shù)據(jù)庫。,12.4.1用T-SQL語句恢復數(shù)據(jù)庫,返回目錄,12.4恢復數(shù)據(jù)庫,【例12.9】還原數(shù)據(jù)庫備份。用JwglData備份設備中的第二個備份集還原數(shù)據(jù)庫?!纠?2.10】還原事務日志備份1。用名為“dump2”的備份設備的第一個備份集來還原test數(shù)據(jù)庫的完整備份,再用第二個備份集來還原事務日志備份,除了最后一個還原操作,其他所有還原操作都必須要加上NORECOVERY或STANDBY參數(shù)?!纠?2.11】還原事務日志備份2。,12.4.1用T-SQL語句恢復數(shù)據(jù)庫,返回目錄,12.4恢復數(shù)據(jù)庫,1)打開SQLServerManagementStudio。2)在對象資源管理器中,單擊服務器名稱展開服務器樹。3)展開“數(shù)據(jù)庫”,選擇要還原的數(shù)據(jù)庫。4)在該數(shù)據(jù)庫上單擊右鍵,依次選擇“任務”、“還原”、“數(shù)據(jù)庫”。5)在隨后出現(xiàn)的“備份數(shù)據(jù)庫”對話框中,設置還原選項。6)在左側對話框里選擇“選項”標簽,在打開的對話框中,可以進一步設置還原選項。7)單擊“確定”按鈕開始還原。,12.4.2用SQLServerManagementStudio恢復數(shù)據(jù)庫,返回目錄,12.4恢復數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫對于保證系統(tǒng)的正常運行必不可少,備份系統(tǒng)數(shù)據(jù)庫,就可以在發(fā)生系統(tǒng)故障(例如硬盤故障)時還原和恢復SQLServer系統(tǒng)。,12.4.3恢復系統(tǒng)數(shù)據(jù)庫,返回目錄,12.4恢復數(shù)據(jù)庫,12.4.3恢復系統(tǒng)數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫的備份需求,返回目錄,12.4恢復數(shù)據(jù)庫,master數(shù)據(jù)庫記錄SQLServer系統(tǒng)的所有系統(tǒng)級信息。因此,如果master數(shù)據(jù)庫不可用,則SQLServer無法啟動。執(zhí)行某些操作后,如:創(chuàng)建、修改或刪除數(shù)據(jù)庫;更改服務器或數(shù)據(jù)庫的配置值;修改或添加登錄賬戶等,要盡快備份master數(shù)據(jù)庫。要啟動SQLServer實例,只有在master數(shù)據(jù)庫可供訪問并至少部分可用時才可行,否則無法啟動實例。當master數(shù)據(jù)庫不可用,通過下列兩種方式之一將該

溫馨提示

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

評論

0/150

提交評論