12數(shù)據(jù)的備份剖析課件_第1頁
12數(shù)據(jù)的備份剖析課件_第2頁
12數(shù)據(jù)的備份剖析課件_第3頁
12數(shù)據(jù)的備份剖析課件_第4頁
12數(shù)據(jù)的備份剖析課件_第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第12章數(shù)據(jù)庫的備份和恢復(fù)

2022/11/301第12章數(shù)據(jù)庫的備份和恢復(fù)2022/11/291第12章數(shù)據(jù)庫的備份和恢復(fù)學(xué)習(xí)要點:備份的概念備份的類型數(shù)據(jù)庫備份的方法恢復(fù)數(shù)據(jù)庫的方法數(shù)據(jù)的導(dǎo)入和導(dǎo)出2022/11/302第12章數(shù)據(jù)庫的備份和恢復(fù)學(xué)習(xí)要點:2022/11/29第12章數(shù)據(jù)庫的備份和恢復(fù)

備份概述1

備份操作

2

恢復(fù)操作

3

恢復(fù)數(shù)據(jù)庫的其他方法4

數(shù)據(jù)的導(dǎo)入和導(dǎo)出52022/11/303第12章數(shù)據(jù)庫的備份和恢復(fù)備份概述1備份操12.1備份概述12.1.1為什么以及何時備份備份是指數(shù)據(jù)庫管理員定期或不定期地將數(shù)據(jù)庫部分或全部內(nèi)容復(fù)制到磁帶或磁盤上保存起來的過程。當數(shù)據(jù)庫遭到破壞時,可以利用備份進行數(shù)據(jù)庫的恢復(fù)。備份的目的就是當數(shù)據(jù)庫發(fā)生意外時,盡可能的減少數(shù)據(jù)的丟失。

何時進行備份,取決于所能承受數(shù)據(jù)損失的大小和數(shù)據(jù)變化的程度。執(zhí)行備份操作必須擁有數(shù)據(jù)庫備份的權(quán)限——系統(tǒng)管理員、數(shù)據(jù)庫所有者、數(shù)據(jù)庫備份執(zhí)行者。2022/11/30412.1備份概述12.1.1為什么以及何時備份2022/12.1.2備份類型

SQLServer2005支持的備份類型有六種:完整數(shù)據(jù)庫備份差異數(shù)據(jù)庫備份部分備份部分差異備份事務(wù)日志備份文件和文件組備份2022/11/30512.1.2備份類型SQLServer2005支持的1.完整數(shù)據(jù)庫備份備份數(shù)據(jù)庫中當前所有的數(shù)據(jù),包括事務(wù)日志。與差異備份和事務(wù)日志備份相比,完整數(shù)據(jù)庫備份使用的存儲空間多,完成備份操作需要的時間長,所以完整數(shù)據(jù)庫備份的創(chuàng)建頻率通常比差異備份或事務(wù)日志備份低。完整數(shù)據(jù)庫備份適用備份容量較小或數(shù)據(jù)庫中數(shù)據(jù)的修改較少的數(shù)據(jù)庫。完整數(shù)據(jù)庫備份時差異備份和事務(wù)日志備份的基準。2.差異數(shù)據(jù)庫備份備份自上次完整數(shù)據(jù)庫備份以來更改的數(shù)據(jù)。差異數(shù)據(jù)庫備份比完整數(shù)據(jù)庫備份小而且備份速度快,因此可以經(jīng)常地備份;經(jīng)常備份將減少丟失數(shù)據(jù)的危險。差異數(shù)據(jù)庫備份適合于修改頻繁的數(shù)據(jù)庫。2022/11/3061.完整數(shù)據(jù)庫備份2022/11/2963.部分備份部分備份與完整數(shù)據(jù)庫備份類似,但是部分備份不包含所有文件組。部分備份只備份主文件組、所有讀寫文件組以及任何選擇指定的只讀文件或文件組中的所有完整數(shù)據(jù)。只讀數(shù)據(jù)庫的部分備份僅包含主文件組。部分備份通常應(yīng)用于在最后一次完整數(shù)據(jù)庫備份后,擁有一個或多個只讀文件組的情況,對包含一些只讀文件組的數(shù)據(jù)庫的備份工作提供了靈活性。

4.部分差異備份部分差異備份僅備份自上一次部分備份以來文件組中發(fā)生更改的數(shù)據(jù)。部分差異備份比部分備份小而且備份速度快。部分差異備份只與部分備份一起使用。2022/11/3073.部分備份2022/11/2975.事務(wù)日志備份備份自上次備份以來數(shù)據(jù)變化的過程,即事務(wù)日志文件的信息。其中的上次備份可以是完整數(shù)據(jù)庫備份、差異數(shù)據(jù)庫備份或事務(wù)日志備份。每個事務(wù)日志備份都包括創(chuàng)建備份時處于活動狀態(tài)的部分事務(wù)日志,以及先前事務(wù)日志備份中未備份的所有日志記錄??梢允褂檬聞?wù)日志備份將數(shù)據(jù)庫恢復(fù)到特定的即時點(如輸入多余數(shù)據(jù)前的那一點)或恢復(fù)到故障點。6.文件和文件組備份適合于特大型數(shù)據(jù)庫,因為一個很大的數(shù)據(jù)庫要進行完全數(shù)據(jù)庫備份需要很長的時間,那么可以將數(shù)據(jù)庫的文件和文件組分別進行備份。使用文件和文件組備份可以只還原損壞的文件,而不用還原數(shù)據(jù)庫的其余部分,從而加快了恢復(fù)速度。文件和文件組的備份又可以分為完整文件和文件組備份以及差異文件和文件組備份。2022/11/3085.事務(wù)日志備份2022/11/29812.1.3數(shù)據(jù)恢復(fù)及恢復(fù)模型

備份后如果數(shù)據(jù)庫發(fā)生了意外,一般應(yīng)遵循如下的步驟進行恢復(fù):1)如果當前日志沒有損壞,首先備份事務(wù)日志。2)恢復(fù)最近的完整數(shù)據(jù)庫備份。3)恢復(fù)最近的差異備份(如果進行過差異備份)。4)依次恢復(fù)自差異備份以后的所有事務(wù)日志備份(按備份的先后順序恢復(fù))。2022/11/30912.1.3數(shù)據(jù)恢復(fù)及恢復(fù)模型備份后如果數(shù)據(jù)庫發(fā)生了意外SQLServer2005提供了三種恢復(fù)模型,以確定如何備份數(shù)據(jù)以及能承受何種程度的數(shù)據(jù)丟失。簡單恢復(fù)完全恢復(fù)大容量日志記錄恢復(fù)2022/11/3010SQLServer2005提供了三種恢復(fù)模型,以確定如1.簡單恢復(fù)模式簡單恢復(fù)模式可最大程度地減少事務(wù)日志的管理開銷,事務(wù)日志自動截斷,在此模式下不能進行事務(wù)日志備份。因此,使用簡單恢復(fù)模式只能將數(shù)據(jù)庫恢復(fù)到最后一次備份時的狀態(tài),無法將數(shù)據(jù)庫還原到故障點或特定的即時點。在簡單恢復(fù)模式下只能進行完整備份和差異備份。

2022/11/30111.簡單恢復(fù)模式2022/11/29112.完全恢復(fù)模式完全恢復(fù)模式完整記錄所有事務(wù),因此能提供將數(shù)據(jù)庫恢復(fù)到故障點或特定即時點的能力。在完全恢復(fù)模式下可以進行各種備份。3.大容量日志恢復(fù)模式大容量日志恢復(fù)模式簡單的記錄大容量操作的日志(如索引創(chuàng)建和大容量加載),完整地記錄其他日志。大容量日志恢復(fù)模式提高了大容量操作的能力,常作為完全恢復(fù)模式的補充。2022/11/30122.完全恢復(fù)模式2022/11/291212.1.4備份設(shè)備創(chuàng)建備份時,必須選擇存放備份數(shù)據(jù)的備份設(shè)備,即存放備份的存儲介質(zhì)。備份設(shè)備可以是磁盤或磁帶。當建立一個備份設(shè)備時要分配一個邏輯名稱和一個物理名稱。物理名稱是操作系統(tǒng)用來標識備份設(shè)備的名稱;邏輯名稱是用戶定義的,用來標識物理備份設(shè)備的別名。1.使用SQLServerManagementStudio創(chuàng)建備份設(shè)備2022/11/301312.1.4備份設(shè)備創(chuàng)建備份時,必須選擇存放備份數(shù)據(jù)的備份2.使用系統(tǒng)存儲過程sp_addumpdevice創(chuàng)建備份設(shè)備

sp_addumpdevice'device_type','logical_name',

'physical_name'其中:device_type:是指備份設(shè)備類型,磁盤:disk;磁帶:tape。logical_name:備份設(shè)備的邏輯名稱。physical_name:備份設(shè)備的邏輯名稱,包含完整路徑。2022/11/30142.使用系統(tǒng)存儲過程sp_addumpdevice創(chuàng)建備份設(shè)備份設(shè)備添加實例例12.1本示例添加一個名為sales_backup的磁盤備份設(shè)備,其物理名稱為D:\sales_backup.bak。

EXECsp_addumpdevice'disk','sales_backup','d:\sales_backup.bak'可以使用系統(tǒng)存儲過程sp_dropdevice刪除備份設(shè)備。例12.2下面的示例刪除12.1創(chuàng)建的備份設(shè)備。

EXECsp_dropdevice'sales_backup'

2022/11/3015備份設(shè)備添加實例例12.1本示例添加一個名為sales_12.2備份操作12.2.1使用SQLServerManagementStudio備份數(shù)據(jù)庫2022/11/301612.2備份操作12.2.1使用SQLServerM12.2.2使用Transact-SQL語句備份數(shù)據(jù)庫

1.使用BACKUPDATABASE

命令進行完整數(shù)據(jù)庫備份和差異數(shù)據(jù)庫備份

BACKUPDATABASEdatabase_nameTO<backup_device>[WITH[INIT|NOINIT]

[[,]DIFFERENTIAL]]DIFFERENTIAL:該選項表示進行差異數(shù)據(jù)庫備份。

backup_device:指定用于備份操作的備份設(shè)備,可以是邏輯名稱或物理名稱。如果是物理名稱,要輸入完整的路徑和文件名。如:DISK=’d:\BACKUP\mybackup.bak’。INIT:該選項表示重寫備份集的數(shù)據(jù)。NOINIT:該選項表示備份數(shù)據(jù)將追加在原有的內(nèi)容之后,NOINIT是默認設(shè)置。2022/11/301712.2.2使用Transact-SQL語句備份數(shù)據(jù)庫12.2備份操作例12.3本例為sales數(shù)據(jù)庫創(chuàng)建一個完全數(shù)據(jù)庫備份和一個差異數(shù)據(jù)庫備份,將備份保存到sales_backup備份設(shè)備上。

BACKUPDATABASEsalesTOsales_backup

WithinitGO

BACKUPDATABASEsalesTOsales_backup

withdifferentialGO2022/11/301812.2備份操作例12.3本例為sales數(shù)據(jù)庫創(chuàng)建2.使用BACKUPLOG命令進行事務(wù)日志備份

BACKUPLOGdatabase_nameTObackup_device例12.4本例為sales數(shù)據(jù)庫創(chuàng)建一個事務(wù)日志備份。BACKUPLOGsalesTOsales_backup2022/11/30192.使用BACKUPLOG命令進行事務(wù)日志備份2022/112.3恢復(fù)操作恢復(fù)數(shù)據(jù)庫是加載備份并應(yīng)用事務(wù)日志重建數(shù)據(jù)庫的過程。在數(shù)據(jù)庫的恢復(fù)過程中,用戶不能進入數(shù)據(jù)庫,即數(shù)據(jù)庫是不能使用的。恢復(fù)數(shù)據(jù)庫時,SQLServer自動執(zhí)行安全性檢查,防止用戶從不完整、不正確的備份或其他數(shù)據(jù)庫備份恢復(fù)數(shù)據(jù)庫。在恢復(fù)數(shù)據(jù)庫之前,必須保證備份文件是正確的。在SQLServer中,可以使用圖形化界面和Transact-SQL語句進行數(shù)據(jù)庫恢復(fù)。12.3.1使用SQLServerManagementStudio恢復(fù)數(shù)據(jù)庫2022/11/302012.3恢復(fù)操作恢復(fù)數(shù)據(jù)庫是加載備份并應(yīng)用事務(wù)日志重建數(shù)據(jù)12.3.2使用Transact-SQL語句恢復(fù)數(shù)據(jù)庫RESTOREDATABASE

database_name

FROMbackup_device[WITH[FILE=file_number]

[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name}]]

FILE=file_number:標識要還原的備份集。例如,file_number為1表示備份媒體上的第一個備份集,file_number為2表示第二個備份集。NORECOVERY:表示還原操作不回滾任何未提交的事務(wù)。如果需要恢復(fù)另一個事務(wù)日志,則必須指定NORECOVERY或STANDBY選項。如果NORECOVERY、RECOVERY和STANDBY均未指定,則默認為RECOVERY。當還原數(shù)據(jù)庫備份和多個事務(wù)日志時,或在需要多個RESTORE語句時(例如在完整數(shù)據(jù)庫備份后進行差異數(shù)據(jù)庫備份),SQLServer要求在除最后的RESTORE語句外的所有其他語句上使用WITHNORECOVERY選項。RECOVERY:表示還原操作回滾任何未提交的事務(wù),在恢復(fù)后即可使用數(shù)據(jù)庫。只有在最后一步恢復(fù)時使用。2022/11/302112.3.2使用Transact-SQL語句恢復(fù)數(shù)據(jù)庫R12.3恢復(fù)操作例12.5:從sales_backup備份設(shè)備中還原完全數(shù)據(jù)庫備份后還原差異數(shù)據(jù)庫備份。

RESTOREDATABASEsalesFROMsales_backup

WITHNORECOVERYGo

RESTOREDATABASEsales

FROMsales_buckupWITHFILE=2Go2022/11/302212.3恢復(fù)操作例12.5:從sales_backup備份12.4脫機與聯(lián)機數(shù)據(jù)庫如果需要暫時關(guān)閉某個數(shù)據(jù)庫的服務(wù),用戶可以通過選擇脫機的方式來實現(xiàn)。脫機后,在需要時可以對暫時關(guān)閉的數(shù)據(jù)庫通過聯(lián)機操作的方式重新啟動服務(wù)。下面分別介紹如何實現(xiàn)數(shù)據(jù)庫的脫機與聯(lián)機操作。2022/11/302312.4脫機與聯(lián)機數(shù)據(jù)庫如果需要暫時關(guān)閉某個

12.4.1脫機數(shù)據(jù)庫選擇脫機數(shù)據(jù)庫2022/11/302412.4.1脫機數(shù)據(jù)庫選擇脫機數(shù)據(jù)庫2使數(shù)據(jù)庫脫機2022/11/3025使數(shù)據(jù)庫脫機2022/11/2925

12.4.2聯(lián)機數(shù)據(jù)庫選擇聯(lián)機數(shù)據(jù)庫2022/11/302612.4.2聯(lián)機數(shù)據(jù)庫選擇聯(lián)機數(shù)據(jù)庫202使數(shù)據(jù)庫聯(lián)機2022/11/3027使數(shù)據(jù)庫聯(lián)機2022/11/292712.5分離和附加數(shù)據(jù)庫分離和附加數(shù)據(jù)庫的操作可以將數(shù)據(jù)庫從一臺計算機移到另一臺計算機,而不必重新創(chuàng)建數(shù)據(jù)庫。2022/11/302812.5分離和附加數(shù)據(jù)庫分離和附加數(shù)據(jù)庫的操除了系統(tǒng)數(shù)據(jù)庫以外,其他數(shù)據(jù)庫都可以從服務(wù)器的管理中分離出來,脫離服務(wù)器管理的同時保持數(shù)據(jù)文件和日志文件的完整性和一致性。分離后的數(shù)據(jù)庫又可以根據(jù)需要重新附加到數(shù)據(jù)庫服務(wù)器中。2022/11/3029除了系統(tǒng)數(shù)據(jù)庫以外,其他數(shù)據(jù)庫都可以從服務(wù)器

12.5.1分離數(shù)據(jù)庫分離數(shù)據(jù)庫不是刪除數(shù)據(jù)庫,它只是將數(shù)據(jù)庫從服務(wù)器中分離出去。2022/11/303012.5.1分離數(shù)據(jù)庫分離數(shù)據(jù)庫分離數(shù)據(jù)庫2022/11/3031分離數(shù)據(jù)庫2022/11/2931分離數(shù)據(jù)庫2022/11/3032分離數(shù)據(jù)庫2022/11/293212.5.2附加數(shù)據(jù)庫與分離操作相對應(yīng)的就是附加操作,它可以將分離的數(shù)據(jù)庫重新附加到服務(wù)器中,也可以附加其他服務(wù)器組中分離的數(shù)據(jù)庫。但在附加數(shù)據(jù)庫時必須指定主數(shù)據(jù)文件(MDF文件)的名稱和物理位置。2022/11/303312.5.2附加數(shù)據(jù)庫與分離操作相對應(yīng)的就是附加數(shù)據(jù)庫2022/11/3034附加數(shù)據(jù)庫2022/11/2934附加數(shù)據(jù)庫2022/11/3035附加數(shù)據(jù)庫2022/11/293512.6導(dǎo)入和導(dǎo)出數(shù)據(jù)表

SQLServer2005提供了強大的數(shù)據(jù)導(dǎo)入導(dǎo)出功能,它可以在多種常用數(shù)據(jù)格式(數(shù)據(jù)庫、電子表格和文本文件)之間導(dǎo)入和導(dǎo)出數(shù)據(jù),為不同數(shù)據(jù)源間的數(shù)據(jù)轉(zhuǎn)換提供了方便。2022/11/303612.6導(dǎo)入和導(dǎo)出數(shù)據(jù)表SQLServe12.7腳本腳本是存儲在文件中的一系列SQL語句,是可再用的模塊化代碼。用戶通過“SQLServerManagementStudio”工具可以對指定文件中的腳本進行修改、分析和執(zhí)行。2022/11/303712.7腳本腳本是存儲在文件中的一

12.7.1將數(shù)據(jù)庫生成腳本數(shù)據(jù)庫在生成腳本文件后,可以在不同的計算機之間傳送。2022/11/303812.7.1將數(shù)據(jù)庫生成腳本數(shù)據(jù)編寫腳本模式2022/11/3039編寫腳本模式2022/11/2939生成腳本2022/11/3040生成腳本2022/11/2940

12.7.2將數(shù)據(jù)表生成腳本除了將數(shù)據(jù)庫生成腳本文件以外,用戶還可以根據(jù)需要將指定的數(shù)據(jù)表生成腳本文件。2022/11/304112.7.2將數(shù)據(jù)表生成腳本除了編寫腳本模式2022/11/3042編寫腳本模式2022/11/2942生成腳本2022/11/3043生成腳本2022/11/294312.7.3執(zhí)行腳本腳本文件生成以后,用戶可以通過“SQLServerManagementStudio”工具對指定的腳本文件進行修改,然后執(zhí)行該腳本文件。2022/11/304412.7.3執(zhí)行腳本腳本文件生成以后,用戶可腳本文件2022/11/3045腳本文件2022/11/2945小結(jié)SQLServer2005的備份和恢復(fù)的相關(guān)知識;備份類型、備份設(shè)備的創(chuàng)建、通過圖形界面和Transact-SQL語句進行備份和恢復(fù)的具體操作的方法,數(shù)據(jù)的導(dǎo)入和導(dǎo)出等內(nèi)容。腳本的生成、執(zhí)行2022/11/3046小結(jié)SQLServer2005的備份和恢復(fù)的相關(guān)知識;202022/11/30472022/11/29472022/11/30482022/11/29482022/11/30492022/11/2949習(xí)題1.為什么要進行備份?2.SQLServer中備份分為哪幾種類型,它們之間有什么區(qū)別?3.恢復(fù)模式的設(shè)置對備份有什么影響?4.如何創(chuàng)建備份設(shè)備?5.在BACKUP命令中INIT和NOINIT參數(shù)有什么作用?6.在RESTORE命令中RECOVERY和NORECOVERY參數(shù)有什么作用?7.哪些系統(tǒng)數(shù)據(jù)庫必須定期的進行備份?2022/11/3050習(xí)題1.為什么要進行備份?2022/11/29508.下面是某數(shù)據(jù)庫進行備份的時間表,晚上10:00數(shù)據(jù)庫失敗,簡述怎樣恢復(fù)數(shù)據(jù)庫才能盡量減少數(shù)據(jù)的損失。時間事件上午8:00備份數(shù)據(jù)庫中午備份日志文件下午4:00備份日志文件下午6:00備份數(shù)據(jù)庫晚上8:00備份日志文件晚上10:00數(shù)據(jù)庫失敗2022/11/30518.下面是某數(shù)據(jù)庫進行備份的時間表,晚上10:00數(shù)據(jù)庫失敗謝謝使用,再見!2022/11/3052謝謝使用,再見!2022/11/2952第12章數(shù)據(jù)庫的備份和恢復(fù)

2022/11/3053第12章數(shù)據(jù)庫的備份和恢復(fù)2022/11/291第12章數(shù)據(jù)庫的備份和恢復(fù)學(xué)習(xí)要點:備份的概念備份的類型數(shù)據(jù)庫備份的方法恢復(fù)數(shù)據(jù)庫的方法數(shù)據(jù)的導(dǎo)入和導(dǎo)出2022/11/3054第12章數(shù)據(jù)庫的備份和恢復(fù)學(xué)習(xí)要點:2022/11/29第12章數(shù)據(jù)庫的備份和恢復(fù)

備份概述1

備份操作

2

恢復(fù)操作

3

恢復(fù)數(shù)據(jù)庫的其他方法4

數(shù)據(jù)的導(dǎo)入和導(dǎo)出52022/11/3055第12章數(shù)據(jù)庫的備份和恢復(fù)備份概述1備份操12.1備份概述12.1.1為什么以及何時備份備份是指數(shù)據(jù)庫管理員定期或不定期地將數(shù)據(jù)庫部分或全部內(nèi)容復(fù)制到磁帶或磁盤上保存起來的過程。當數(shù)據(jù)庫遭到破壞時,可以利用備份進行數(shù)據(jù)庫的恢復(fù)。備份的目的就是當數(shù)據(jù)庫發(fā)生意外時,盡可能的減少數(shù)據(jù)的丟失。

何時進行備份,取決于所能承受數(shù)據(jù)損失的大小和數(shù)據(jù)變化的程度。執(zhí)行備份操作必須擁有數(shù)據(jù)庫備份的權(quán)限——系統(tǒng)管理員、數(shù)據(jù)庫所有者、數(shù)據(jù)庫備份執(zhí)行者。2022/11/305612.1備份概述12.1.1為什么以及何時備份2022/12.1.2備份類型

SQLServer2005支持的備份類型有六種:完整數(shù)據(jù)庫備份差異數(shù)據(jù)庫備份部分備份部分差異備份事務(wù)日志備份文件和文件組備份2022/11/305712.1.2備份類型SQLServer2005支持的1.完整數(shù)據(jù)庫備份備份數(shù)據(jù)庫中當前所有的數(shù)據(jù),包括事務(wù)日志。與差異備份和事務(wù)日志備份相比,完整數(shù)據(jù)庫備份使用的存儲空間多,完成備份操作需要的時間長,所以完整數(shù)據(jù)庫備份的創(chuàng)建頻率通常比差異備份或事務(wù)日志備份低。完整數(shù)據(jù)庫備份適用備份容量較小或數(shù)據(jù)庫中數(shù)據(jù)的修改較少的數(shù)據(jù)庫。完整數(shù)據(jù)庫備份時差異備份和事務(wù)日志備份的基準。2.差異數(shù)據(jù)庫備份備份自上次完整數(shù)據(jù)庫備份以來更改的數(shù)據(jù)。差異數(shù)據(jù)庫備份比完整數(shù)據(jù)庫備份小而且備份速度快,因此可以經(jīng)常地備份;經(jīng)常備份將減少丟失數(shù)據(jù)的危險。差異數(shù)據(jù)庫備份適合于修改頻繁的數(shù)據(jù)庫。2022/11/30581.完整數(shù)據(jù)庫備份2022/11/2963.部分備份部分備份與完整數(shù)據(jù)庫備份類似,但是部分備份不包含所有文件組。部分備份只備份主文件組、所有讀寫文件組以及任何選擇指定的只讀文件或文件組中的所有完整數(shù)據(jù)。只讀數(shù)據(jù)庫的部分備份僅包含主文件組。部分備份通常應(yīng)用于在最后一次完整數(shù)據(jù)庫備份后,擁有一個或多個只讀文件組的情況,對包含一些只讀文件組的數(shù)據(jù)庫的備份工作提供了靈活性。

4.部分差異備份部分差異備份僅備份自上一次部分備份以來文件組中發(fā)生更改的數(shù)據(jù)。部分差異備份比部分備份小而且備份速度快。部分差異備份只與部分備份一起使用。2022/11/30593.部分備份2022/11/2975.事務(wù)日志備份備份自上次備份以來數(shù)據(jù)變化的過程,即事務(wù)日志文件的信息。其中的上次備份可以是完整數(shù)據(jù)庫備份、差異數(shù)據(jù)庫備份或事務(wù)日志備份。每個事務(wù)日志備份都包括創(chuàng)建備份時處于活動狀態(tài)的部分事務(wù)日志,以及先前事務(wù)日志備份中未備份的所有日志記錄??梢允褂檬聞?wù)日志備份將數(shù)據(jù)庫恢復(fù)到特定的即時點(如輸入多余數(shù)據(jù)前的那一點)或恢復(fù)到故障點。6.文件和文件組備份適合于特大型數(shù)據(jù)庫,因為一個很大的數(shù)據(jù)庫要進行完全數(shù)據(jù)庫備份需要很長的時間,那么可以將數(shù)據(jù)庫的文件和文件組分別進行備份。使用文件和文件組備份可以只還原損壞的文件,而不用還原數(shù)據(jù)庫的其余部分,從而加快了恢復(fù)速度。文件和文件組的備份又可以分為完整文件和文件組備份以及差異文件和文件組備份。2022/11/30605.事務(wù)日志備份2022/11/29812.1.3數(shù)據(jù)恢復(fù)及恢復(fù)模型

備份后如果數(shù)據(jù)庫發(fā)生了意外,一般應(yīng)遵循如下的步驟進行恢復(fù):1)如果當前日志沒有損壞,首先備份事務(wù)日志。2)恢復(fù)最近的完整數(shù)據(jù)庫備份。3)恢復(fù)最近的差異備份(如果進行過差異備份)。4)依次恢復(fù)自差異備份以后的所有事務(wù)日志備份(按備份的先后順序恢復(fù))。2022/11/306112.1.3數(shù)據(jù)恢復(fù)及恢復(fù)模型備份后如果數(shù)據(jù)庫發(fā)生了意外SQLServer2005提供了三種恢復(fù)模型,以確定如何備份數(shù)據(jù)以及能承受何種程度的數(shù)據(jù)丟失。簡單恢復(fù)完全恢復(fù)大容量日志記錄恢復(fù)2022/11/3062SQLServer2005提供了三種恢復(fù)模型,以確定如1.簡單恢復(fù)模式簡單恢復(fù)模式可最大程度地減少事務(wù)日志的管理開銷,事務(wù)日志自動截斷,在此模式下不能進行事務(wù)日志備份。因此,使用簡單恢復(fù)模式只能將數(shù)據(jù)庫恢復(fù)到最后一次備份時的狀態(tài),無法將數(shù)據(jù)庫還原到故障點或特定的即時點。在簡單恢復(fù)模式下只能進行完整備份和差異備份。

2022/11/30631.簡單恢復(fù)模式2022/11/29112.完全恢復(fù)模式完全恢復(fù)模式完整記錄所有事務(wù),因此能提供將數(shù)據(jù)庫恢復(fù)到故障點或特定即時點的能力。在完全恢復(fù)模式下可以進行各種備份。3.大容量日志恢復(fù)模式大容量日志恢復(fù)模式簡單的記錄大容量操作的日志(如索引創(chuàng)建和大容量加載),完整地記錄其他日志。大容量日志恢復(fù)模式提高了大容量操作的能力,常作為完全恢復(fù)模式的補充。2022/11/30642.完全恢復(fù)模式2022/11/291212.1.4備份設(shè)備創(chuàng)建備份時,必須選擇存放備份數(shù)據(jù)的備份設(shè)備,即存放備份的存儲介質(zhì)。備份設(shè)備可以是磁盤或磁帶。當建立一個備份設(shè)備時要分配一個邏輯名稱和一個物理名稱。物理名稱是操作系統(tǒng)用來標識備份設(shè)備的名稱;邏輯名稱是用戶定義的,用來標識物理備份設(shè)備的別名。1.使用SQLServerManagementStudio創(chuàng)建備份設(shè)備2022/11/306512.1.4備份設(shè)備創(chuàng)建備份時,必須選擇存放備份數(shù)據(jù)的備份2.使用系統(tǒng)存儲過程sp_addumpdevice創(chuàng)建備份設(shè)備

sp_addumpdevice'device_type','logical_name',

'physical_name'其中:device_type:是指備份設(shè)備類型,磁盤:disk;磁帶:tape。logical_name:備份設(shè)備的邏輯名稱。physical_name:備份設(shè)備的邏輯名稱,包含完整路徑。2022/11/30662.使用系統(tǒng)存儲過程sp_addumpdevice創(chuàng)建備份設(shè)備份設(shè)備添加實例例12.1本示例添加一個名為sales_backup的磁盤備份設(shè)備,其物理名稱為D:\sales_backup.bak。

EXECsp_addumpdevice'disk','sales_backup','d:\sales_backup.bak'可以使用系統(tǒng)存儲過程sp_dropdevice刪除備份設(shè)備。例12.2下面的示例刪除12.1創(chuàng)建的備份設(shè)備。

EXECsp_dropdevice'sales_backup'

2022/11/3067備份設(shè)備添加實例例12.1本示例添加一個名為sales_12.2備份操作12.2.1使用SQLServerManagementStudio備份數(shù)據(jù)庫2022/11/306812.2備份操作12.2.1使用SQLServerM12.2.2使用Transact-SQL語句備份數(shù)據(jù)庫

1.使用BACKUPDATABASE

命令進行完整數(shù)據(jù)庫備份和差異數(shù)據(jù)庫備份

BACKUPDATABASEdatabase_nameTO<backup_device>[WITH[INIT|NOINIT]

[[,]DIFFERENTIAL]]DIFFERENTIAL:該選項表示進行差異數(shù)據(jù)庫備份。

backup_device:指定用于備份操作的備份設(shè)備,可以是邏輯名稱或物理名稱。如果是物理名稱,要輸入完整的路徑和文件名。如:DISK=’d:\BACKUP\mybackup.bak’。INIT:該選項表示重寫備份集的數(shù)據(jù)。NOINIT:該選項表示備份數(shù)據(jù)將追加在原有的內(nèi)容之后,NOINIT是默認設(shè)置。2022/11/306912.2.2使用Transact-SQL語句備份數(shù)據(jù)庫12.2備份操作例12.3本例為sales數(shù)據(jù)庫創(chuàng)建一個完全數(shù)據(jù)庫備份和一個差異數(shù)據(jù)庫備份,將備份保存到sales_backup備份設(shè)備上。

BACKUPDATABASEsalesTOsales_backup

WithinitGO

BACKUPDATABASEsalesTOsales_backup

withdifferentialGO2022/11/307012.2備份操作例12.3本例為sales數(shù)據(jù)庫創(chuàng)建2.使用BACKUPLOG命令進行事務(wù)日志備份

BACKUPLOGdatabase_nameTObackup_device例12.4本例為sales數(shù)據(jù)庫創(chuàng)建一個事務(wù)日志備份。BACKUPLOGsalesTOsales_backup2022/11/30712.使用BACKUPLOG命令進行事務(wù)日志備份2022/112.3恢復(fù)操作恢復(fù)數(shù)據(jù)庫是加載備份并應(yīng)用事務(wù)日志重建數(shù)據(jù)庫的過程。在數(shù)據(jù)庫的恢復(fù)過程中,用戶不能進入數(shù)據(jù)庫,即數(shù)據(jù)庫是不能使用的?;謴?fù)數(shù)據(jù)庫時,SQLServer自動執(zhí)行安全性檢查,防止用戶從不完整、不正確的備份或其他數(shù)據(jù)庫備份恢復(fù)數(shù)據(jù)庫。在恢復(fù)數(shù)據(jù)庫之前,必須保證備份文件是正確的。在SQLServer中,可以使用圖形化界面和Transact-SQL語句進行數(shù)據(jù)庫恢復(fù)。12.3.1使用SQLServerManagementStudio恢復(fù)數(shù)據(jù)庫2022/11/307212.3恢復(fù)操作恢復(fù)數(shù)據(jù)庫是加載備份并應(yīng)用事務(wù)日志重建數(shù)據(jù)12.3.2使用Transact-SQL語句恢復(fù)數(shù)據(jù)庫RESTOREDATABASE

database_name

FROMbackup_device[WITH[FILE=file_number]

[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name}]]

FILE=file_number:標識要還原的備份集。例如,file_number為1表示備份媒體上的第一個備份集,file_number為2表示第二個備份集。NORECOVERY:表示還原操作不回滾任何未提交的事務(wù)。如果需要恢復(fù)另一個事務(wù)日志,則必須指定NORECOVERY或STANDBY選項。如果NORECOVERY、RECOVERY和STANDBY均未指定,則默認為RECOVERY。當還原數(shù)據(jù)庫備份和多個事務(wù)日志時,或在需要多個RESTORE語句時(例如在完整數(shù)據(jù)庫備份后進行差異數(shù)據(jù)庫備份),SQLServer要求在除最后的RESTORE語句外的所有其他語句上使用WITHNORECOVERY選項。RECOVERY:表示還原操作回滾任何未提交的事務(wù),在恢復(fù)后即可使用數(shù)據(jù)庫。只有在最后一步恢復(fù)時使用。2022/11/307312.3.2使用Transact-SQL語句恢復(fù)數(shù)據(jù)庫R12.3恢復(fù)操作例12.5:從sales_backup備份設(shè)備中還原完全數(shù)據(jù)庫備份后還原差異數(shù)據(jù)庫備份。

RESTOREDATABASEsalesFROMsales_backup

WITHNORECOVERYGo

RESTOREDATABASEsales

FROMsales_buckupWITHFILE=2Go2022/11/307412.3恢復(fù)操作例12.5:從sales_backup備份12.4脫機與聯(lián)機數(shù)據(jù)庫如果需要暫時關(guān)閉某個數(shù)據(jù)庫的服務(wù),用戶可以通過選擇脫機的方式來實現(xiàn)。脫機后,在需要時可以對暫時關(guān)閉的數(shù)據(jù)庫通過聯(lián)機操作的方式重新啟動服務(wù)。下面分別介紹如何實現(xiàn)數(shù)據(jù)庫的脫機與聯(lián)機操作。2022/11/307512.4脫機與聯(lián)機數(shù)據(jù)庫如果需要暫時關(guān)閉某個

12.4.1脫機數(shù)據(jù)庫選擇脫機數(shù)據(jù)庫2022/11/307612.4.1脫機數(shù)據(jù)庫選擇脫機數(shù)據(jù)庫2使數(shù)據(jù)庫脫機2022/11/3077使數(shù)據(jù)庫脫機2022/11/2925

12.4.2聯(lián)機數(shù)據(jù)庫選擇聯(lián)機數(shù)據(jù)庫2022/11/307812.4.2聯(lián)機數(shù)據(jù)庫選擇聯(lián)機數(shù)據(jù)庫202使數(shù)據(jù)庫聯(lián)機2022/11/3079使數(shù)據(jù)庫聯(lián)機2022/11/292712.5分離和附加數(shù)據(jù)庫分離和附加數(shù)據(jù)庫的操作可以將數(shù)據(jù)庫從一臺計算機移到另一臺計算機,而不必重新創(chuàng)建數(shù)據(jù)庫。2022/11/308012.5分離和附加數(shù)據(jù)庫分離和附加數(shù)據(jù)庫的操除了系統(tǒng)數(shù)據(jù)庫以外,其他數(shù)據(jù)庫都可以從服務(wù)器的管理中分離出來,脫離服務(wù)器管理的同時保持數(shù)據(jù)文件和日志文件的完整性和一致性。分離后的數(shù)據(jù)庫又可以根據(jù)需要重新附加到數(shù)據(jù)庫服務(wù)器中。2022/11/3081除了系統(tǒng)數(shù)據(jù)庫以外,其他數(shù)據(jù)庫都可以從服務(wù)器

12.5.1分離數(shù)據(jù)庫分離數(shù)據(jù)庫不是刪除數(shù)據(jù)庫,它只是將數(shù)據(jù)庫從服務(wù)器中分離出去。2022/11/308212.5.1分離數(shù)據(jù)庫分離數(shù)據(jù)庫分離數(shù)據(jù)庫2022/11/3083分離數(shù)據(jù)庫2022/11/2931分離數(shù)據(jù)庫2022/11/3084分離數(shù)據(jù)庫2022/11/293212.5.2附加數(shù)據(jù)庫與分離操作相對應(yīng)的就是附加操作,它可以將分離的數(shù)據(jù)庫重新附加到服務(wù)器中,也可以附加其他服務(wù)器組中分離的數(shù)據(jù)庫。但在附加數(shù)據(jù)庫時必須指定主數(shù)據(jù)文件(MDF文件)的名稱和物理位置。2022/11/308512.5.2附加數(shù)據(jù)庫與分離操作相對應(yīng)的就是附加數(shù)據(jù)庫2022/11/3086附加數(shù)據(jù)庫2022/11/2934附加數(shù)據(jù)庫2022/11/3087附加數(shù)據(jù)庫2022/11/293512.6導(dǎo)入和導(dǎo)出數(shù)據(jù)表

SQLServer2005提供了強大的數(shù)據(jù)導(dǎo)入導(dǎo)出功能,它可以在多種常用數(shù)據(jù)格式(數(shù)據(jù)庫、電子表格和文本文件)之間導(dǎo)入和導(dǎo)出數(shù)據(jù),為不同數(shù)據(jù)源間的數(shù)據(jù)轉(zhuǎn)換提供了方便。2022/11/308812.6導(dǎo)入和導(dǎo)出數(shù)據(jù)表SQLServe1

溫馨提示

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

評論

0/150

提交評論