版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
SQLServer數(shù)據(jù)庫應(yīng)用技術(shù)第11章數(shù)據(jù)庫備份與還原第11章數(shù)據(jù)庫備份與還原*
備份數(shù)據(jù)庫是DBA最重要的任務(wù)之一。DBA可以使用備份文件恢復(fù)還原數(shù)據(jù)庫,從而最大程度地減少災(zāi)難損失。良好的備份和還原策略是保證數(shù)據(jù)庫安全運(yùn)行的保證,是每個(gè)DBA都必須認(rèn)真對(duì)待的任務(wù)。主要內(nèi)容:備份和還原的基本概念、SQLServer2005數(shù)據(jù)庫的備份和還原技術(shù)與方法、備份和還原全文目錄、表數(shù)據(jù)的導(dǎo)入與導(dǎo)出等。目錄11.1備份與還原概述11.2數(shù)據(jù)庫備份11.3數(shù)據(jù)庫還原11.4備份與還原全文目錄11.5表與視圖的導(dǎo)入與導(dǎo)出練習(xí)題11上機(jī)實(shí)習(xí)1011.1備份與還原概述返回本節(jié)首頁11.1.1備份和還原的策略11.1.2恢復(fù)模式
11.1備份與還原概述返回本節(jié)首頁“備份”是數(shù)據(jù)的副本,用于在系統(tǒng)發(fā)生故障后還原和恢復(fù)數(shù)據(jù)。備份使您能夠在發(fā)生故障后還原數(shù)據(jù),包括:媒體故障、用戶錯(cuò)誤(例如,誤刪除了某個(gè)表或表中部分?jǐn)?shù)據(jù))、硬件故障(例如,磁盤驅(qū)動(dòng)器損壞或服務(wù)器報(bào)廢)、自然災(zāi)難等。數(shù)據(jù)庫備份對(duì)于例行的工作也很有用。例如,將數(shù)據(jù)庫從一臺(tái)服務(wù)器復(fù)制到另一臺(tái)服務(wù)器、設(shè)置數(shù)據(jù)庫鏡像、政府機(jī)構(gòu)文件歸檔和災(zāi)難恢復(fù)。通過備份一臺(tái)計(jì)算機(jī)上的數(shù)據(jù)庫,再將該數(shù)據(jù)庫還原到另一臺(tái)計(jì)算機(jī)上,可以快速容易地生成數(shù)據(jù)庫的副本。11.1備份與還原概述返回本節(jié)首頁圖11-1數(shù)據(jù)庫從完整備份中還原數(shù)據(jù)此示例說明備份和還原的最簡(jiǎn)單形式:只將數(shù)據(jù)庫恢復(fù)到其最近一次的備份。備份點(diǎn)和故障點(diǎn)之間的所有更新將全部丟失。但是通過添加日志備份,通??蓪?shù)據(jù)庫還原到故障點(diǎn),而不會(huì)丟失數(shù)據(jù)(如果使用的SQLServer版本支持時(shí)點(diǎn)恢復(fù))。
11.1備份與還原概述返回本節(jié)首頁SQLServer有數(shù)據(jù)庫完整備份、差異備份、事務(wù)日志文件備份、文件及文件組備份等幾種形式,備份創(chuàng)建在備份設(shè)備上,如磁盤或磁帶媒體。SQLServer使用物理設(shè)備名稱或邏輯設(shè)備名稱標(biāo)識(shí)備份設(shè)備。物理備份設(shè)備是操作系統(tǒng)用來標(biāo)識(shí)備份設(shè)備的名稱,如C:\Backups\Accounting\Full.bak;邏輯備份設(shè)備是用來標(biāo)識(shí)物理備份設(shè)備的別名或公用名稱。邏輯設(shè)備名稱永久地存儲(chǔ)在SQLServer內(nèi)的系統(tǒng)表中。使用邏輯備份設(shè)備的優(yōu)點(diǎn)是引用它比引用物理設(shè)備名稱簡(jiǎn)單。
執(zhí)行備份操作對(duì)運(yùn)行中的事務(wù)影響很小,因此可以在正常操作過程中執(zhí)行備份操作。返回本節(jié)首頁設(shè)計(jì)良好的備份和還原策略可盡量提高數(shù)據(jù)的可用性及盡量減少數(shù)據(jù)丟失,并考慮到特定的業(yè)務(wù)要求。備份和還原策略包含備份部分和還原部分。備份策略定義備份的類型和頻率、它們所需硬件的特性和速度、測(cè)試備份的方法以及存儲(chǔ)備份媒體的位置和方法(包含安全注意事項(xiàng))。還原策略為定義負(fù)責(zé)執(zhí)行還原的人員以及滿足數(shù)據(jù)庫可用性和盡量減少數(shù)據(jù)丟失目標(biāo)的方法。記錄備份和還原過程并在運(yùn)行手冊(cè)中保留文檔的副本。11.1.1備份和還原的策略返回本節(jié)首頁設(shè)計(jì)有效的備份和還原策略需要仔細(xì)計(jì)劃、實(shí)現(xiàn)和測(cè)試。需要考慮各種因素,包含:1)本組織對(duì)數(shù)據(jù)庫的生產(chǎn)目標(biāo),尤其是對(duì)可用性和防止數(shù)據(jù)丟失的要求;2)每個(gè)數(shù)據(jù)庫的特性,其大小、其使用模式、其內(nèi)容特性及其數(shù)據(jù)要求等;3)對(duì)資源的約束,例如硬件、人員、存儲(chǔ)備份媒體的空間以及存儲(chǔ)媒體的物理安全性等。11.1.1備份和還原的策略返回本節(jié)首頁備份和還原操作是在“恢復(fù)模式”下進(jìn)行的?;謴?fù)模式是一個(gè)數(shù)據(jù)庫屬性,它用于控制數(shù)據(jù)庫備份和還原操作基本行為。例如,恢復(fù)模式控制了將事務(wù)記錄在日志中的方式、事務(wù)日志是否需要備份以及可用的還原操作。新的數(shù)據(jù)庫可繼承model數(shù)據(jù)庫的恢復(fù)模式。11.1.2恢復(fù)模式返回本節(jié)首頁
1、恢復(fù)模式的優(yōu)點(diǎn)1)簡(jiǎn)化了恢復(fù)計(jì)劃;2)簡(jiǎn)化了備份和恢復(fù)過程;3)明確了系統(tǒng)操作要求之間的權(quán)衡;4)明確了可用性和恢復(fù)要求之間的權(quán)衡。
11.1.2恢復(fù)模式返回本節(jié)首頁2、恢復(fù)模式以下是可以選擇的三種恢復(fù)模式:簡(jiǎn)單模式、完整模式大容量日志模式。11.1.2恢復(fù)模式返回本節(jié)首頁(1)簡(jiǎn)單恢復(fù)模式:此模式簡(jiǎn)略地記錄大多數(shù)事務(wù),所記錄的信息只是為了確保在系統(tǒng)崩潰或還原數(shù)據(jù)備份之后數(shù)據(jù)庫的一致性。由于舊的事務(wù)已提交,已不再需要其日志,因而日志將被截?cái)?。截?cái)嗳罩緦h除備份和還原事務(wù)日志。沒有日志備份,數(shù)據(jù)庫只可恢復(fù)到最近的數(shù)據(jù)備份時(shí)間。該模式不支持還原單個(gè)數(shù)據(jù)頁。簡(jiǎn)單恢復(fù)模式并不適合生產(chǎn)系統(tǒng),因?yàn)閷?duì)生產(chǎn)系統(tǒng)而言,丟失最新的更改是無法接受的,建議使用完整恢復(fù)模式。11.1.2恢復(fù)模式返回本節(jié)首頁(2)完整恢復(fù)模式此模式完整地記錄了所有的事務(wù),并保留所有的事務(wù)日志記錄,直到將它們備份。在SQLServerEnterpriseEdition中,完整恢復(fù)模式能使數(shù)據(jù)庫恢復(fù)到故障時(shí)間點(diǎn)(假定在故障發(fā)生之后備份了日志尾部)。11.1.2恢復(fù)模式返回本節(jié)首頁(3)大容量日志恢復(fù)模式此模式簡(jiǎn)略地記錄大多數(shù)大容量操作(例如,索引創(chuàng)建和大容量加載),完整地記錄其它事務(wù)。大容量日志恢復(fù)提高大容量操作的性能,常用作完整恢復(fù)模式的補(bǔ)充。大容量日志恢復(fù)模式支持所有的恢復(fù)形式,但是有一些限制。11.1.2恢復(fù)模式返回本節(jié)首頁
3、恢復(fù)模式的選擇每種恢復(fù)模式(簡(jiǎn)單恢復(fù)模式、完整恢復(fù)模式和大容量日志恢復(fù)模式)對(duì)可用性、性能、磁盤和磁帶空間以及防止數(shù)據(jù)丟失方面都有特別要求。根據(jù)所執(zhí)行的操作,可能存在多個(gè)適合的模式。選擇恢復(fù)模式時(shí)須在下列業(yè)務(wù)要求之間進(jìn)行權(quán)衡:1)大規(guī)模操作(例如創(chuàng)建索引或大容量加載)的性能;2)數(shù)據(jù)丟失情況(例如已提交的事務(wù)丟失);3)事務(wù)日志的空間占用情況;4)備份和恢復(fù)的簡(jiǎn)化。11.1.2恢復(fù)模式返回本節(jié)首頁表11-1三種恢復(fù)模式的優(yōu)點(diǎn)和影響模式優(yōu)點(diǎn)數(shù)據(jù)丟失情況能否恢復(fù)到時(shí)間點(diǎn)?簡(jiǎn)單允許執(zhí)行高性能大容量復(fù)制操作?;厥杖罩究臻g以使空間要求較小。必須重做自最新數(shù)據(jù)庫或差異備份后所做的更改??梢曰謴?fù)到任何備份的結(jié)尾。隨后必須重做更改。完整數(shù)據(jù)文件丟失或損壞不會(huì)導(dǎo)致丟失工作??梢曰謴?fù)到任意時(shí)間點(diǎn)(例如應(yīng)用程序或用戶錯(cuò)誤之前)。正常情況下沒有。如果日志損壞,則必須重做自最新日志備份后所做的更改??梢曰謴?fù)到任何時(shí)間點(diǎn)。大容量日志允許執(zhí)行高性能大容量復(fù)制操作。大容量操作使用的最小日志空間。如果日志損壞或自最新日志備份后執(zhí)行了大容量操作,則必須重做自上次備份后所做的更改。否則不丟失任何工作。可以恢復(fù)到任何備份的結(jié)尾。隨后必須重做更改。11.1.2恢復(fù)模式返回本節(jié)首頁
4、指定數(shù)據(jù)庫的恢復(fù)模式(1)在ManagementStudio中查看或更改數(shù)據(jù)庫的恢復(fù)模式,11.1.2恢復(fù)模式返回本節(jié)首頁
4、指定數(shù)據(jù)庫的恢復(fù)模式(2)利用ALTERDATABASE設(shè)置數(shù)據(jù)庫的恢復(fù)模式例11-1本例設(shè)置AdventureWorks示例數(shù)據(jù)庫的恢復(fù)模式。
USEmaster;ALTERDATABASEAdventureWorksSETRECOVERYFULL--完整模式11.1.2恢復(fù)模式11.2數(shù)據(jù)庫備份返回本節(jié)首頁11.2.1使用ManagementStudio創(chuàng)建完整備份11.2.2使用ManagementStudio創(chuàng)建完整差異備份11.2.3使用ManagementStudio創(chuàng)建事務(wù)日志備份11.2.4使用ManagementStudio創(chuàng)建文件和文件組備份11.2.5BACKUP命令
11.2數(shù)據(jù)庫備份返回本節(jié)首頁數(shù)據(jù)庫備份易于使用并且適用于所有數(shù)據(jù)庫,與恢復(fù)模式無關(guān)。數(shù)據(jù)庫備份包括完整備份和完整差異備份。完整備份包含數(shù)據(jù)庫中的所有數(shù)據(jù),并且可以用作完整差異備份所基于的“基準(zhǔn)備份”。完整差異備份僅記錄自前一完整備份后發(fā)生更改的數(shù)據(jù)擴(kuò)展盤區(qū)數(shù)。與完整備份相比,完整差異備份較小且速度較快,便于進(jìn)行較頻繁的備份,同時(shí)降低丟失數(shù)據(jù)的風(fēng)險(xiǎn)。11.2數(shù)據(jù)庫備份返回本節(jié)首頁創(chuàng)建正確的備份對(duì)成功執(zhí)行備份并還原策略非常重要。在備份過程中,SQLServer將數(shù)據(jù)從數(shù)據(jù)庫文件直接復(fù)制到備份設(shè)備中。您的數(shù)據(jù)不會(huì)改變,并且備份過程中運(yùn)行的事務(wù)也決不會(huì)延遲。可以在完成生產(chǎn)工作負(fù)荷的同時(shí)執(zhí)行SQLServer備份,這只會(huì)對(duì)工作負(fù)荷造成很小的影響。備份吞吐量由基礎(chǔ)I/O設(shè)備的速度決定。若要實(shí)現(xiàn)最高傳輸速率,備份應(yīng)按順序讀取。如果I/O系統(tǒng)能夠支持生產(chǎn)工作負(fù)荷和備份的I/O組合,備份將執(zhí)行得非??欤到y(tǒng)的效率卻非常低。返回本節(jié)首頁使用ManagementStudio創(chuàng)建完整備份過程如下(略):創(chuàng)建完整差異備份需要具有上一個(gè)完整備份。如果選定的數(shù)據(jù)庫從未進(jìn)行備份,則必須先執(zhí)行一次完整備份才能創(chuàng)建差異備份。創(chuàng)建完整差異備份的操作過程與創(chuàng)建完整備份的操作過程相同11.2.1使用ManagementStudio
創(chuàng)建完整備份11.2.1使用ManagementStudio
創(chuàng)建完整備份返回本節(jié)首頁完整恢復(fù)模式和大容量日志恢復(fù)模式:都應(yīng)備份事務(wù)日志。創(chuàng)建事務(wù)日志備份的操作過程與創(chuàng)建完整備份的操作過程也基本相同,主要的不同是:在“備份類型”列表框中,選擇“事務(wù)日志”而非“完整”。另外,在“事務(wù)日志”區(qū)域中還需選定:1)對(duì)于例行的日志備份,請(qǐng)保留默認(rèn)選項(xiàng)“通過刪除不活動(dòng)的條目截?cái)嗍聞?wù)日志”;2)若要備份日志尾部(即活動(dòng)的日志),請(qǐng)選中“備份日志尾部,并使數(shù)據(jù)庫處于還原狀態(tài)”。選擇此選項(xiàng)等效于在T-SQLBACKUPLOG語句中指定NORECOVERY選項(xiàng)。11.2.3使用ManagementStudio
創(chuàng)建事務(wù)日志備份返回本節(jié)首頁文件和文件組完整備份僅適用于包含多個(gè)文件組的數(shù)據(jù)庫。在簡(jiǎn)單恢復(fù)模式下,僅適用于包含只讀文件組的數(shù)據(jù)庫。完整文件備份備份一個(gè)或多個(gè)完整的文件,相當(dāng)于完整備份。優(yōu)點(diǎn)是:文件或文件組備份能夠更快地從隔離的媒體故障中恢復(fù)??梢匝杆龠€原損壞的文件。可以同時(shí)創(chuàng)建文件和事務(wù)日志備份。文件備份增加了計(jì)劃和媒體處理的靈活性,增加了文件或文件組備份的靈活性,對(duì)于包含具有不同更新特征的數(shù)據(jù)的大型數(shù)據(jù)庫也很有用。11.2.4使用ManagementStudio創(chuàng)建文件和文件組備份返回本節(jié)首頁文件備份也有缺點(diǎn)主要是管理較復(fù)雜。如果某個(gè)損壞的文件未備份,那么媒體故障可能會(huì)導(dǎo)致無法恢復(fù)整個(gè)數(shù)據(jù)庫。必須維護(hù)完整的文件備份,包括完整恢復(fù)模式的文件備份和日志備份。維護(hù)和跟蹤這些完整備份是一種耗時(shí)的任務(wù),所需空間可能會(huì)超過完整數(shù)據(jù)庫備份的所需空間。若要以增加管理復(fù)雜性為代價(jià)來減少恢復(fù)時(shí)間,請(qǐng)考慮使用文件差異備份。創(chuàng)建文件和文件組完整備份的操作過程與創(chuàng)建完整備份的操作過程也基本相同,主要的不同是:1)在“備份類型”列表框中,選擇完全或差異。2)對(duì)于“備份組件”選項(xiàng),請(qǐng)單擊文件和文件組。11.2.4使用ManagementStudio創(chuàng)建文件和文件組備份返回本節(jié)首頁BACKUPDATABASE{database_name|@database_name_var}TO<backup_device>[,...n][[MIRRORTO<backup_device>[,...n]][...next-mirror]][WITH……(省略)][;]--備份整個(gè)數(shù)據(jù)庫BACKUPDATABASE{database_name|@database_name_var}<file_or_filegroup>[,...n]TO<backup_device>[,...n]--備份文件或文件組BACKUPLOG{database_name|@database_name_var}{TO<backup_device>[,...n][[MIRRORTO<backup_device>[,...n]][...next-mirror]]--備份日志BACKUPLOG{database_name|@database_name_var}{WITH{NO_LOG|TRUNCATE_ONLY}]}--截去日志11.2.5BACKUP命令返回本節(jié)首頁執(zhí)行BACKUPDATABASE語句來創(chuàng)建完整備份,同時(shí)需要指定:1)要備份的數(shù)據(jù)庫的名稱;2)寫入完整備份的備份設(shè)備;3)還可以指定:①INIT子句,通過它可以改寫備份媒體,并在備份媒體上將該備份作為第一個(gè)文件寫入。②SKIP和INIT子句,用于重寫備份媒體,即使備份媒體中的備份未過期,或其名稱與備份媒體中的名稱不匹配也重寫。③FORMAT子句,第一次使用媒體時(shí)對(duì)備份媒體進(jìn)行初始化,并覆蓋任何現(xiàn)有的媒體標(biāo)頭,有則不需要INIT字句。11.2.5BACKUP命令返回本節(jié)首頁例11-2備份到磁盤設(shè)備,本例將把整個(gè)AdventureWorks數(shù)據(jù)庫備份到磁盤上,并使用FORMAT創(chuàng)建一個(gè)新的媒體集'C:\AdventureWorks.Bak':USEAdventureWorks;BACKUPDATABASEAdventureWorksTODISK='C:\MSSQL\BACKUP\AdventureWorks.Bak'WITHFORMAT,NAME='FullBackupofAdventureWorks'GO11.2.5BACKUP命令返回本節(jié)首頁USEmaster--可選地,也可以為這備份文件創(chuàng)建一個(gè)邏輯設(shè)備名AdventureWorks_Backup:EXECsp_addumpdevice'disk','AdventureWorks_Backup','C:\MSSQL\BACKUP\AdventureWorks.Bak‘--說明:定義轉(zhuǎn)儲(chǔ)設(shè)備的語法格式如下:sp_addumpdevice[@devtype=]'device_type',[@logicalname=]'logical_name',[@physicalname=]'physical_name',{[@cntrltype=]controller_type|[@devstatus=]'device_status'}]11.2.5BACKUP命令返回本節(jié)首頁例11-3備份到磁帶設(shè)備,本例將把整個(gè)MyAdvWorks數(shù)據(jù)庫備份到磁帶。USEMyAdvWorks;BACKUPDATABASEMyAdvWorksTOTAPE='\\.\Tape0'WITHFORMAT,NAME='FullBackupofMyAdvWorks‘USEmaster--可選地,也可以為這備份磁帶創(chuàng)建一個(gè)邏輯設(shè)備名AdventureWorks_Backup:EXECsp_addumpdevice'tape','MyAdvWorks_Bak','\\.\tape0‘11.2.5BACKUP命令返回本節(jié)首頁例11-4備份整個(gè)AdventureWorks數(shù)據(jù)庫,本例將創(chuàng)建用于存放AdventureWorks數(shù)據(jù)庫完整備份的邏輯備份設(shè)備AdvWorksData。USEmaster--為備份AdventureWorks創(chuàng)建邏輯設(shè)備名EXECsp_addumpdevice'disk','AdvWorksData','C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\BACKUP\AdvWorksData.bak‘BACKUPDATABASEAdventureWorksTOAdvWorksData--完整備份AdventureWorks數(shù)據(jù)庫11.2.5BACKUP命令11.3數(shù)據(jù)庫還原返回本節(jié)首頁11.3.1還原完整備份11.3.2使用ManagementStudio還原事務(wù)日志備份11.3.3RESTORE命令11.3數(shù)據(jù)庫還原返回本節(jié)首頁數(shù)據(jù)庫還原方案是從一個(gè)或多個(gè)備份中還原數(shù)據(jù)并在還原最后一個(gè)備份后恢復(fù)數(shù)據(jù)庫的過程。使用還原方案可以還原下列某個(gè)級(jí)別的數(shù)據(jù):數(shù)據(jù)庫、數(shù)據(jù)文件和數(shù)據(jù)頁。每個(gè)級(jí)別的影響如下:
1)數(shù)據(jù)庫級(jí)別:還原和恢復(fù)整個(gè)數(shù)據(jù)庫,并且數(shù)據(jù)庫在還原和恢復(fù)操作期間處于離線狀態(tài)。
2)數(shù)據(jù)文件級(jí)別:還原和恢復(fù)一個(gè)數(shù)據(jù)文件或一組文件。在文件還原過程中,包含相應(yīng)文件的文件組在還原過程中自動(dòng)變?yōu)殡x線狀態(tài)。訪問離線文件組的任何嘗試都會(huì)導(dǎo)致錯(cuò)誤。
3)數(shù)據(jù)頁級(jí)別:可以對(duì)任何數(shù)據(jù)庫進(jìn)行頁面還原,而不管文件組數(shù)為多少。11.3數(shù)據(jù)庫還原返回本節(jié)首頁數(shù)據(jù)庫還原方案一般分為:簡(jiǎn)單恢復(fù)模式下的還原方案與完整恢復(fù)模式下的還原方案(適用于完整恢復(fù)模式和大容量日志恢復(fù)模式)兩種。返回本節(jié)首頁1、還原完整備份的一般方法還原完整備份是指用備份完成時(shí)數(shù)據(jù)庫中包含的所有文件重新創(chuàng)建數(shù)據(jù)庫。通常,將數(shù)據(jù)庫恢復(fù)到故障點(diǎn)分為下列基本步驟:備份活動(dòng)事務(wù)日志(稱為日志尾部)。此操作將創(chuàng)建尾日志備份。如果活動(dòng)事務(wù)日志不可用,則該日志部分的所有事務(wù)都將丟失;還原最新的完整備份但不恢復(fù)數(shù)據(jù)庫(WITHNORECOVERY);如果存在差異備份,則還原最新的差異備份,而不恢復(fù)數(shù)據(jù)庫(WITHNORECOVERY);11.3.1還原完整備份返回本節(jié)首頁4)從還原備份后創(chuàng)建的第一個(gè)事務(wù)日志備份開始,使用NORECOVERY依次還原日志;5)恢復(fù)數(shù)據(jù)庫(RESTOREDATABASE<database_name>WITHRECOVERY)。此步驟也可以與還原上一次日志備份結(jié)合使用;6)數(shù)據(jù)庫完整還原通??梢曰謴?fù)到日志備份中的某一時(shí)間點(diǎn)或標(biāo)記的事務(wù)。但是,在大容量日志恢復(fù)模式下,如果日志備份包含大容量更改,則不能進(jìn)行時(shí)點(diǎn)恢復(fù)。11.3.1還原完整備份返回本節(jié)首頁還原整個(gè)數(shù)據(jù)庫(完整恢復(fù)模式)時(shí),應(yīng)當(dāng)使用單一還原順序。還原順序由一個(gè)或多個(gè)還原操作組成,這些還原操作通過一個(gè)或多個(gè)還原階段來移動(dòng)數(shù)據(jù)。數(shù)據(jù)庫將還原并前滾。數(shù)據(jù)庫差異用于減少前滾時(shí)間。此還原順序用于避免丟失工作;上次還原的備份為尾日志備份。11.3.1還原完整備份返回本節(jié)首頁RESTOREDATABASE<database>FROM<fullbackup>WITHNORECOVERY
RESTOREDATABASE<database>FROM<full_differential_backup>WITHNORECOVERY
RESTORELOG<database>FROM<log_backup>WITHNORECOVERY
RESTORELOG<database>FROM<tail_logbackup>WITHRECOVERY11.3.1還原完整備份返回本節(jié)首頁例11-10本例說明:如何創(chuàng)建AdventureWorks
數(shù)據(jù)庫的完整備份、純?nèi)罩緜浞莺臀踩罩緜浞萑绾伟错樞蜻€原這些備份。還原尾日志備份后,在單獨(dú)的步驟中恢復(fù)數(shù)據(jù)庫。在此示例中,AdventureWorks
數(shù)據(jù)庫臨時(shí)設(shè)置為使用完整恢復(fù)模式。11.3.1還原完整備份返回本節(jié)首頁USEmaster;ALTERDATABASEAdventureWorksSETRECOVERYFULL;GO--以下為完整數(shù)據(jù)庫備份創(chuàng)建邏輯備份設(shè)備EXECsp_addumpdevice'disk','MyAdvWorks_FullRM','C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\BACKUP\MyAdvWorks_FullRM.bak';GO--以下創(chuàng)建完整備份BACKUPDATABASEAdventureWorksTOMyAdvWorks_FullRMWITHFORMAT;GO--以下創(chuàng)建純?nèi)罩緜浞莸絺浞菸募﨎ACKUPLOGAdventureWorksTOMyAdvWorks_FullRM;GO--以下創(chuàng)建尾日志備份BACKUPLOGAdventureWorksTOMyAdvWorks_FullRMWITHNORECOVERY;GO11.3.1還原完整備份返回本節(jié)首頁--從備份集1中還原完整備份RESTOREDATABASEAdventureWorksFROMMyAdvWorks_FullRMWITHNORECOVERY;--從備份集2中還原純?nèi)罩緜浞軷ESTORELOGAdventureWorksFROMMyAdvWorks_FullRMWITHFILE=2,NORECOVERY;--從備份集3中還原尾日志備份RESTORELOGAdventureWorksFROMMyAdvWorks_FullRMWITHFILE=3,NORECOVERY;GORESTOREDATABASEAdventureWorksWITHRECOVERY;--恢復(fù)整個(gè)數(shù)據(jù)庫GO11.3.1還原完整備份返回本節(jié)首頁2、使用ManagementStudio還原完整備份在完整恢復(fù)模式或大容量日志恢復(fù)模式下,必須先備份活動(dòng)事務(wù)日志(稱為日志尾部),然后才能在ManagementStudio中還原數(shù)據(jù)庫。尾日志備份是使數(shù)據(jù)庫處于還原狀態(tài)的一種日志備份。通常會(huì)在失敗之后進(jìn)行尾日志備份來備份日志尾部,以防丟失工作。11.3.1還原完整備份返回本節(jié)首頁一般的還原過程需要在“還原數(shù)據(jù)庫”對(duì)話框中同時(shí)選擇日志備份以及數(shù)據(jù)和差異備份。備份必須按照其創(chuàng)建順序進(jìn)行還原。在還原給定的事務(wù)日志之前,必須已經(jīng)還原下列備份,但不用回滾未提交的事務(wù):事務(wù)日志備份之前的完整備份和差異備份(如果存在);在完整備份和現(xiàn)在要還原的事務(wù)日志之間所做的全部事務(wù)日志備份(如果存在)。11.3.2使用ManagementStudio
還原事務(wù)日志備份返回本節(jié)首頁利用RESTORE命令還原使用BACKUP命令所做的備份。使用此命令您可以實(shí)現(xiàn)以下操作:1)基于完整備份還原整個(gè)數(shù)據(jù)庫(完整還原);2)還原數(shù)據(jù)庫的一部分(部分還原);3)將特定文件、文件組或頁面還原到數(shù)據(jù)庫(文件還原或頁面還原);4)將事務(wù)日志還原到數(shù)據(jù)庫(事務(wù)日志還原);5)將數(shù)據(jù)庫恢復(fù)到數(shù)據(jù)庫快照捕獲的時(shí)間點(diǎn)。
11.3.3RESTORE命令返回本節(jié)首頁表11-2還原方案和RESTORE語句之間的關(guān)系還原類別語句操作數(shù)據(jù)庫完整還原RESTOREDATABASE<數(shù)據(jù)庫名稱>...WITHNORECOVERY...復(fù)制備份中的所有數(shù)據(jù),如果備份包含日志,還會(huì)前滾數(shù)據(jù)庫。文件還原RESTOREDATABASE<數(shù)據(jù)庫名稱><文件或文件組>[n]...WITHNORECOVERY...僅從備份復(fù)制指定的文件或文件組,如果備份包含日志,則前滾數(shù)據(jù)庫。頁面還原RESTOREDATABASE<數(shù)據(jù)庫名稱>PAGE='文件:頁[,...p]'...WITHNORECOVERY...僅從備份中復(fù)制指定的頁,如果某個(gè)頁的備份包含日志,還會(huì)前滾數(shù)據(jù)庫。段落還原RESTOREDATABASE<數(shù)據(jù)庫>[<文件組>[n]]...WITHPARTIAL,NORECOVERY...復(fù)制主文件組以及指定的文件組或組,如果備份包含日志,則前滾數(shù)據(jù)庫。注意如果未指定任何文件組,則還原備份集的所有內(nèi)容。用于恢復(fù)數(shù)據(jù)庫的日志還原RESTORELOG<數(shù)據(jù)庫名稱>...WITHRECOVERY...還原日志備份并使用該日志前滾數(shù)據(jù)庫。11.3.3RESTORE命令返回本節(jié)首頁RESTOREDATABASE{database_name|@database_name_var}[FROM<backup_device>[,...n]][WITH[{CHECKSUM|NO_CHECKSUM}][WITH……(省略)][;]RESTOREDATABASE{database_name|@database_name_var}<files_or_filegroups>[FROM<backup_device>[,...n]]--恢復(fù)部分?jǐn)?shù)據(jù)庫RESTOREDATABASE{database_name|@database_name_var}<file_or_filegroup_or_pages>[,...f][FROM<backup_device>[,...n]]--恢復(fù)文件、文件組或頁RESTORELOG{database_name|@database_name_var}[<file_or_filegroup_or_pages>[,...f]][FROM<backup_device>[,...n]]--恢復(fù)事務(wù)日志11.3.3RESTORE命令返回本節(jié)首頁例11-11還原完整數(shù)據(jù)庫,MyAdvWorks數(shù)據(jù)庫僅供舉例說明。RESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1例11-12還原完整數(shù)據(jù)庫備份和差異備份,本例還原完整數(shù)據(jù)庫備份后還原差異備份。另外,以下示例還說明如何還原媒體上的另一個(gè)備份集。差異備份追加到包含完整數(shù)據(jù)庫備份的備份設(shè)備上。RESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1WITHNORECOVERYRESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1WITHFILE=211.3.3RESTORE命令返回本節(jié)首頁例11-13使用RESTART語法還原數(shù)據(jù)庫,本例使用RESTART選項(xiàng)重新啟動(dòng)因服務(wù)器電源故障而中斷的RESTORE操作。RESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1--電源故障而中斷的RESTORERESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1WITHRESTART--重新啟動(dòng)11.3.3RESTORE命令返回本節(jié)首頁例11-14還原數(shù)據(jù)庫并移動(dòng)文件,本例還原完整數(shù)據(jù)庫和事務(wù)日志,并將已還原的數(shù)據(jù)庫移動(dòng)到C:\ProgramFiles\MicrosoftSQLServer\MSSQL\Data目錄下。RESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1WITHNORECOVERY,MOVE'MyAdvWorks'TO'c:\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\NewAdvWorks.mdf',MOVE'MyAdvWorksLog1'TO'c:\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\NewAdvWorks.ldf'RESTORELOGMyAdvWorksFROMMyAdvWorksLog1WITHRECOVERY11.3.3RESTORE命令返回本節(jié)首頁例11-15使用BACKUP和RESTORE語句創(chuàng)建AdventureWorks數(shù)據(jù)庫的副本。MOVE語句使數(shù)據(jù)和日志文件還原到指定的位置。RESTOREFILELISTONLY語句用于確定待還原數(shù)據(jù)庫內(nèi)的文件數(shù)及名稱。該數(shù)據(jù)庫的新副本稱為TestDB。BACKUPDATABASEAdventureWorksTODISK='C:\AdventureWorks.bak'RESTOREFILELISTONLYFROMDISK='C:\AdventureWorks.bak'RESTOREDATABASETestDBFROMDISK='C:\AdventureWorks.bak'WITHMOVE'AdventureWorks_Data'TO'C:\testdb.mdf',MOVE'AdventureWorks_Log'TO'C:\testdb.ldf‘11.3.3RESTORE命令返回本節(jié)首頁例11-16使用STOPAT語法還原到時(shí)間點(diǎn)和使用多個(gè)設(shè)備進(jìn)行還原,本例將數(shù)據(jù)庫還原到它在2006年4月25日中午12點(diǎn)時(shí)的狀態(tài),并顯示涉及多個(gè)日志和多個(gè)備份設(shè)備的還原操作。RESTOREDATABASEMyAdvWorksFROMMyAdvWorks_1,MyAdvWorks_2WITHNORECOVERY,STOPAT='Apr25,200612:00AM'RESTORELOGMyAdvWorksFROMMyAdvWorksLog1WITHNORECOVERY,STOPAT='Apr25,200612:00AM'RESTORELOGMyAdvWorksFROMMyAdvWorksLog2WITHRECOVERY,STOPAT='Apr25,200612:00AM'11.3.3RESTORE命令11.4備份與還原全文目錄返回本節(jié)首頁1、使用BACKUP語句備份全文目錄每個(gè)全文目錄均被當(dāng)作一個(gè)文件處理,并將包括在已備份的數(shù)據(jù)庫文件集中。在備份過程中,不會(huì)刪除或添加全文目錄。通常情況下,SQLServer會(huì)在BACKUP操作中執(zhí)行下列任務(wù):暫時(shí)掛起,MicrosoftFull-TextEngineforSQLServer(MSFTESQL)服務(wù),并將對(duì)全文目錄所做的所有掛起的更改刷新到磁盤。此外,SQLServer還會(huì)停止對(duì)目錄的所有寫活動(dòng),并在備份之初將所有尚未處理的更改排隊(duì)到通知日志中,以便在備份完成后將這些更改提交給全文目錄。磁盤上的目錄狀態(tài)保持不變。此時(shí)仍然可以查詢?cè)撃夸?。備份所有表、全文目錄?shù)據(jù)、更改跟蹤日志以及元數(shù)據(jù)。備份自開始備份以來事務(wù)日志中出現(xiàn)的所有數(shù)據(jù)?;謴?fù)MSFTESQL服務(wù)并填充全文索引。備份完全文目錄之后,SQLServer將啟動(dòng)MSFTESQL服務(wù),提交通知日志中排隊(duì)的更新,然后恢復(fù)正常操作。11.4備份與還原全文目錄返回本節(jié)首頁2、差異備份若要備份自上次完整備份以來對(duì)數(shù)據(jù)庫數(shù)據(jù)和全文目錄所做的更改,請(qǐng)?jiān)贐ACKUP命令中指定WITHDIFFERENTIAL。例11-21以下語句備份自上次完整備份以來對(duì)數(shù)據(jù)庫數(shù)據(jù)(包括全文目錄)所做的更改。BACKUPDATABASEdatabase_nameTObackup_deviceWITHDIFFERENTIALFAT32文件系統(tǒng)不支持對(duì)全文目錄進(jìn)行差異備份。11.4備份與還原全文目錄返回本節(jié)首頁3、全文目錄的文件備份若要只備份全文目錄(而不備份數(shù)據(jù)庫數(shù)據(jù)),請(qǐng)?jiān)贐ACKUP命令中指定FILE子句。例11-22以下語句只備份全文目錄fulltext_cat。BACKUPDATABASEdatabase_nameFILE='sysft_fulltext_cat'TObackup_device例11-23以下語句只備份文件組fulltext_catFG。BACKUPDATABASEdatabase_nameFILEGROUP='fulltext_catFG'TObackup_device11.4備份與還原全文目錄返回本節(jié)首頁4、全文目錄的差異文件備份,若要只備份對(duì)全文目錄所做的更改,請(qǐng)?jiān)贐ACKUP命令中指定FILE子句和WITHDIFFERENTIAL。例11-24以下語句備份自上次完整備份以來對(duì)全文目錄fulltext_cat所做的更改。BACKUPDATABASEdatabase_nameFILE='sysft_fulltext_cat'TObackup_deviceWITHDIFFERENTIAL例11-25以下語句備份自上次完整備份以來對(duì)存儲(chǔ)在文件組fulltext_catFG中的所有全文目錄所做的更改。BACKUPDATABASEdatabase_nameFILEGROUP='fulltext_catFG'TObackup_deviceWITHDIFFERENTIAL11.4備份與還原全文目錄返回本節(jié)首頁5、若要還原全文目錄RESTOREDATABASEdatabase_nameFROMbackup_device發(fā)出此命令后,將從備份數(shù)據(jù)(包括全文目錄數(shù)據(jù))所在的磁盤位置還原數(shù)據(jù)。11.4備份與還原全文目錄返回本節(jié)首頁6、還原到替代位置若要為全文目錄的根路徑指定替代位置,請(qǐng)?jiān)赗ESTORE命令中指定WITHMOVE。例11-26以下語句會(huì)將全文目錄fulltext_cat還原到F:\FtCat目錄中。RESTOREDATABASEAdventureWorksFROMbackup_deviceWITHMOVE'sysft_fulltext_cat'TO'F:\FtCat’11.4備份與還原全文目錄返回本節(jié)首頁7、還原全文目錄的差異備份若要還原全文目錄和數(shù)據(jù)庫數(shù)據(jù)的差異備份,請(qǐng)執(zhí)行兩步還原操作:先進(jìn)行完整還原,再進(jìn)行差異還原。第二步還原只更新在完整備份與差異備份之間改變過的數(shù)據(jù)庫區(qū)。RESTOREDATABASEAdventureWorksFROMbackup_deviceWITHNORECOVERYRESTOREDATABASEAdventureWorksFROMbackup_device2FILE='sysft_fulltext_cat‘在此方案中,數(shù)據(jù)庫在兩步還原操作之間將保持離線且MicrosoftSearch將停止運(yùn)行。只有當(dāng)?shù)诙竭€原完成后,它們才會(huì)恢復(fù)在線。還可以還原文件和文件組的差異備份。11.4備份與還原全文目錄返回本節(jié)首頁8、還原全文目錄的文件備份若要還原全文目錄的文件備份和文件組備份,請(qǐng)?jiān)赗ESTORE命令中指定FILE或FILEGROUP子句。RESTOREDATABASEAdventureWorksFILE='sysft_fulltext_cat'FROMbackup_device--或--RESTOREDATABASEAdventureWorksFILEGROUP='fulltext_catFG'FROMbackup_device注意:在還原事務(wù)日志備份時(shí),全文索引可能會(huì)處于不一致狀態(tài)。若要使全文索引恢復(fù)為一致狀態(tài),需要執(zhí)行一次完全爬網(wǎng)。11.5表與視圖的導(dǎo)入與導(dǎo)出返回本節(jié)首頁11.5.1表與視圖的導(dǎo)入與導(dǎo)出操作11.5.2SQLServer的復(fù)制功能11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
返回本節(jié)首頁啟動(dòng)導(dǎo)入或?qū)С龉δ埽涸贛anagementStudio的對(duì)象資源管理器中,選擇某數(shù)據(jù)庫,鼠標(biāo)右鍵彈出的快捷菜單中“任務(wù)”->選擇“導(dǎo)入數(shù)據(jù)”或“導(dǎo)出數(shù)據(jù)”菜單即可。導(dǎo)入與導(dǎo)出數(shù)據(jù)的過程是類似的,不同處為數(shù)據(jù)源與數(shù)據(jù)目的的指定不同,數(shù)據(jù)復(fù)制的方向不同,導(dǎo)入往往是指從其它數(shù)據(jù)源復(fù)制到本數(shù)據(jù)庫(作為數(shù)據(jù)目的),導(dǎo)出往往是指從本數(shù)據(jù)庫(作為數(shù)據(jù)源)復(fù)制到其它數(shù)據(jù)源。導(dǎo)入與導(dǎo)出是相對(duì)的,也就是說導(dǎo)入能完成導(dǎo)出功能,導(dǎo)出也能完成導(dǎo)入功能,關(guān)鍵在于指定什么樣的數(shù)據(jù)源與數(shù)據(jù)目的。在數(shù)據(jù)源與數(shù)據(jù)目的均指定非SQLServer數(shù)據(jù)庫時(shí),導(dǎo)入或?qū)С鲞€能實(shí)現(xiàn)非SQLServer數(shù)據(jù)源間的數(shù)據(jù)復(fù)制,如ACCESS數(shù)據(jù)庫間,ACCESS數(shù)據(jù)庫與Excel數(shù)據(jù)表間等的數(shù)據(jù)復(fù)制。11.5.1表與視圖的導(dǎo)入與導(dǎo)出操作返回本節(jié)首頁
SQLServer提供了強(qiáng)大的數(shù)據(jù)復(fù)制功能,通過復(fù)制數(shù)據(jù)庫向?qū)Э梢栽诓煌?wù)器之間輕松移動(dòng)或復(fù)制數(shù)據(jù)庫及其對(duì)象(在服務(wù)器不停機(jī)的情況下)??梢詮?fù)制關(guān)聯(lián)的元數(shù)據(jù),如,master數(shù)據(jù)庫中的登錄名和對(duì)象,復(fù)制的數(shù)據(jù)庫需要這些登錄名和對(duì)象。不能通過復(fù)制數(shù)據(jù)庫向?qū)韽?fù)制或移動(dòng)model數(shù)據(jù)庫、msdb
數(shù)據(jù)庫和master數(shù)據(jù)庫。11.5.2SQLServer的復(fù)制功能返回本節(jié)首頁復(fù)制數(shù)據(jù)庫說明幾點(diǎn):1)model、msdb和master:不能通過復(fù)制數(shù)據(jù)庫向?qū)?fù)制或移動(dòng)model數(shù)據(jù)庫、msdb數(shù)據(jù)庫和master數(shù)據(jù)庫;2)全文目錄:SQL管理對(duì)象方法可移動(dòng)全文目錄。移動(dòng)后,必須重新啟動(dòng)索引填充。如果使用的是分離和附加方法,則必須手動(dòng)移動(dòng)全文目錄;3)源服務(wù)器上的數(shù)據(jù)庫:當(dāng)在不同的服務(wù)器或磁盤驅(qū)動(dòng)器之間移動(dòng)數(shù)據(jù)庫時(shí),復(fù)制數(shù)據(jù)庫向?qū)褦?shù)據(jù)庫復(fù)制到目標(biāo)服務(wù)器,并驗(yàn)證其是否在線。4)使用復(fù)制數(shù)據(jù)庫向?qū)?jí)至SQLServer2005。11.5.2SQLServer的復(fù)制功能返回本節(jié)首頁1、利用Bcp工具這種工具雖然在SQLServer7的版本中不推薦使用,但許多數(shù)據(jù)庫管理員仍很喜歡用它,尤其是用過SQLServer早期版本的人。Bcp有局限性,首先它的界面不是圖形化的,其次它只是在SQLServer的表(視圖)與文本文件之間進(jìn)行復(fù)制,但它的優(yōu)點(diǎn)是性能好,開銷小,占用內(nèi)存少,速度快。11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
返回本節(jié)首頁2、利用備份和恢復(fù)先對(duì)源數(shù)據(jù)庫進(jìn)行完整備份,備份到一個(gè)設(shè)備(device)上,然后把備份文件復(fù)制到目的服務(wù)器上(恢復(fù)的速度快),進(jìn)行數(shù)據(jù)庫的恢復(fù)操作,在恢復(fù)的數(shù)據(jù)庫名中填上源數(shù)據(jù)庫的名字(名字必須相同),選擇強(qiáng)制型恢復(fù)(可以覆蓋以前數(shù)據(jù)庫的選項(xiàng)),在選擇從設(shè)備中進(jìn)行恢復(fù),瀏覽時(shí)選中備份的文件就行了。這種方法可以完全恢復(fù)數(shù)據(jù)庫,包括外鍵,主鍵,索引。11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
返回本節(jié)首頁3、直接拷貝數(shù)據(jù)文件直接COPY數(shù)據(jù)庫數(shù)據(jù)與日志文件,在目的數(shù)據(jù)庫系統(tǒng)中利用sp_attach_db將數(shù)據(jù)庫附加到服務(wù)器在目的服務(wù)器查詢窗口中用語句進(jìn)行恢復(fù):EXECsp_attach_db@dbname='test',@filename1='c:\test_data.mdf',@filename2='c:\test_log.ldf'這樣就把test數(shù)據(jù)庫附加到SQLServer中,可以照常使用。如果不想用原來的日志文件,可以用如下的命令:EXECsp_attach_single_file_db@dbname='test',--單文件附加數(shù)據(jù)庫@physname='c:\test_data.mdf'11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
返回本節(jié)首頁4、編程序式數(shù)據(jù)移動(dòng)、備份與恢復(fù)可以在應(yīng)用程序(PB、VB)中執(zhí)行自己編寫的程序,也可以在QueryAnalyzer中執(zhí)行,這種方法比較靈活,其實(shí)是在某平臺(tái)上連接到數(shù)據(jù)庫,利用SQL語句實(shí)現(xiàn)數(shù)據(jù)操作,這種方法對(duì)數(shù)據(jù)庫的影響小,但是如果用到遠(yuǎn)程鏈接服務(wù)器,要求網(wǎng)絡(luò)之間的傳輸性能好,一般主要使用兩種語句:
1>onew_tablenamewhere...2>insert(into)old_tablenameselect...from...where...區(qū)別是前者把數(shù)據(jù)插入一個(gè)新表(先建立表,再插入數(shù)據(jù)),后者是把數(shù)據(jù)插入已經(jīng)存在的一個(gè)表中。11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
返回本節(jié)首頁5、從某個(gè)OLEDB提供程序中選擇數(shù)據(jù),并將數(shù)據(jù)從外部數(shù)據(jù)源復(fù)制到SQLServer實(shí)例,詳細(xì)略。
6、使用分布式查詢從另一個(gè)數(shù)據(jù)源中選擇數(shù)據(jù)并指定要插入的數(shù)據(jù),詳細(xì)略。
7、使用BULKinsert語句將數(shù)據(jù)從數(shù)據(jù)文件導(dǎo)入到SQLServer實(shí)例。例11-27從c:\sc.txt導(dǎo)入數(shù)據(jù)到SC表
bulkinsertjxgl.dbo.scfrom'c:\sc.txt'with(FIELDTERMINAtoR=',',ROWTERMINAtoR='|\n')11.5.3SQLServer的其它數(shù)據(jù)移動(dòng)方法
練習(xí)題11
返回本節(jié)首頁一、填空題1、SQLServer數(shù)據(jù)庫備份的設(shè)備類型包括:________、________和________。2、SQLServer數(shù)據(jù)庫恢復(fù)模式有三種類型,它們分別是______、______和______。3、完整恢復(fù)模式下的備份可以分為三類,它們分別是_______、_______和_______。二、選擇題1、下列關(guān)于數(shù)據(jù)庫備份的敘述錯(cuò)誤的是:_____。A、如果數(shù)據(jù)庫很穩(wěn)定就不需要經(jīng)常做備份,反之要經(jīng)常做備份以防數(shù)據(jù)庫損壞B、數(shù)據(jù)庫備份是一項(xiàng)很復(fù)雜的任務(wù),應(yīng)該由專業(yè)的管理人員來完成C、數(shù)據(jù)庫備份也受到數(shù)據(jù)庫恢復(fù)模式的制約D、數(shù)據(jù)庫備份策略的選擇應(yīng)該綜合考慮各方面因素,并不是備份做得越多越全就越好2、關(guān)于SQLServer2005的恢復(fù)模式敘述正確的是:______。A、簡(jiǎn)單恢復(fù)模式支持所有的文件恢復(fù)B、大容量日志模式不支持時(shí)間點(diǎn)恢復(fù)C、完全恢復(fù)模式是最好的安全模式D、一個(gè)數(shù)據(jù)庫系統(tǒng)中最好是用一種恢復(fù)模式,以避免管理的復(fù)雜性三、簡(jiǎn)答題1、數(shù)據(jù)庫備份和還原的概念和作用是什么?2、什么是備份?備份分為哪幾種類型?3、確定備份計(jì)劃應(yīng)該考慮哪些因素?4、進(jìn)行數(shù)據(jù)庫恢復(fù)應(yīng)該注意哪幾點(diǎn)?5、數(shù)據(jù)庫故障有哪幾類?6、什么是物理備份設(shè)備和邏輯備份設(shè)備?它們的區(qū)別是什么?7、數(shù)據(jù)庫導(dǎo)入和導(dǎo)出的概念和作用是什么?它是否具有備份和還原作用?請(qǐng)說明。上機(jī)實(shí)習(xí)10
返回本節(jié)首頁實(shí)驗(yàn)?zāi)康?)了解SQLServer2005數(shù)據(jù)庫備份和還原的基本概念;2)實(shí)踐數(shù)據(jù)庫的備份和還原技術(shù)與方法、備份和還原全文目錄、表數(shù)據(jù)的導(dǎo)入與導(dǎo)出等的基本操作。實(shí)驗(yàn)內(nèi)容1、備份設(shè)備管理(1)創(chuàng)建備份設(shè)備1)在ManagementStudio中創(chuàng)建備份設(shè)備KCGL的步驟如下:①在對(duì)象資源管理器中依次展開某數(shù)據(jù)庫服務(wù)器->服務(wù)器對(duì)象->備份設(shè)備->某備份設(shè)備,在“備份設(shè)備”或“某備份設(shè)備”上按鼠標(biāo)右件,從彈出的快捷菜單中選擇“新建備份設(shè)備”菜單項(xiàng);②系統(tǒng)會(huì)打開“備份設(shè)備”新建對(duì)話框;③在設(shè)備名稱文本框中輸入新設(shè)備名如:“KCGL”,對(duì)應(yīng)在“文件”文本框中會(huì)自動(dòng)出現(xiàn)“KCGL.BAK”的文件名稱;④單擊“確定”按鈕,在“備份設(shè)備”文件夾下即能看到新建的“KCGL”設(shè)備名。2)使用系統(tǒng)存儲(chǔ)過程sp_addumpdevice例11-28通過命令方式創(chuàng)建“KCGL_1”備份設(shè)備,命令為:USEmaster;EXECsp_addumpdevice'disk','KCGL_1','c:\KCGL_1.bak'上機(jī)實(shí)習(xí)10
返回本節(jié)首頁(2)查看備份設(shè)備的信息1)在ManagementStudio中查看備份設(shè)備的方法類似于創(chuàng)建備份設(shè)備,只要在備份設(shè)備列表中,雙擊某要查看的備份設(shè)備或從某備份設(shè)備快捷菜單中選擇“屬性”命令即可。在打開的備份設(shè)備對(duì)話框中,按左上“媒體內(nèi)容”選項(xiàng)卡,在對(duì)話框右邊可列出該設(shè)備上保存的所有備份信息,包括每個(gè)備份的類型、日期、位置、大小等信息;2)在查詢窗口中使用如下語句也可以查看備份設(shè)備的詳細(xì)信息:RESTOREHeaderonlyFrom備份設(shè)備邏輯名例11-29查看備份設(shè)備KCGL_1的信息命令為:RESTOREHeaderonlyFromKCGL_1(3)刪除備份設(shè)備1)在ManagementStudio中刪除備份設(shè)備的方法:從數(shù)據(jù)庫引擎->服務(wù)器對(duì)象->備份設(shè)備,定位到待刪除備份設(shè)備后,通過按快捷菜單中選擇“刪除”命令,再在刪除對(duì)象對(duì)話框中單擊“確定”按鈕即可完成。注意要徹底刪除備份設(shè)備,需手工從磁盤上刪除備份設(shè)備對(duì)應(yīng)的操作系統(tǒng)備份文件。2)利用T-SQL命令進(jìn)行刪除。sp_dropdevice,從SQLServer除去數(shù)據(jù)庫設(shè)備或備份設(shè)備,語法:sp_dropdevice[@logicalname=]'device'[,[@delfile=]'delfile']其中,如果指定了defile參數(shù),則在刪除備份設(shè)備的同時(shí)刪除它使用的操作系統(tǒng)文件。例如:除去“KCGL_1”備份設(shè)備,并同時(shí)刪除操作系統(tǒng)文件的命令為:sp_dropdevice'KCGL_1','delfile'上機(jī)實(shí)習(xí)10
返回本節(jié)首頁2、備份數(shù)據(jù)庫本實(shí)驗(yàn)主要介紹數(shù)據(jù)庫完整備份,備份的執(zhí)行主要有以下2種方法:(1)在ManagementStudio中對(duì)KCGL數(shù)據(jù)庫進(jìn)行完整備份(還請(qǐng)參閱11.2.1)。完成備份設(shè)備的創(chuàng)建后便可以進(jìn)行數(shù)據(jù)庫的備份。若沒有創(chuàng)建任何備份設(shè)備,則打開備份數(shù)據(jù)庫程序時(shí)會(huì)提醒用戶必須先創(chuàng)建備份設(shè)備。備份過程如下:①在某備份設(shè)備的快捷菜單中選擇“備份數(shù)據(jù)庫”命令;②打開“SQLServer備份”對(duì)話框,選擇所要備份的數(shù)據(jù)庫KCGL;③選擇完全數(shù)據(jù)庫備份的方式;④單擊“目的”區(qū)中的“添加”按鈕,進(jìn)入“選擇備份目標(biāo)”對(duì)話框;⑤更改“磁盤上的目標(biāo)”的方式,選擇所創(chuàng)建的備份設(shè)備KCGL_1;⑥單擊“確定”按鈕,回到“備份數(shù)據(jù)庫”對(duì)話框;⑦在“備份數(shù)據(jù)庫”對(duì)話框點(diǎn)擊左上的“選項(xiàng)”選項(xiàng)卡,圖略,在此可選擇“備份到現(xiàn)有媒體集”或“備份到現(xiàn)新媒體集并清除所有現(xiàn)有備份集”等;⑧備份信息設(shè)置完成后,按“確定”按鈕正式開始備份。說明:在ManagementStudio中,展開數(shù)據(jù)庫服務(wù)器,展開“數(shù)據(jù)庫”文件夾,右擊要備份的數(shù)據(jù)庫名,例如KCGL,將鼠標(biāo)指針指向彈出的快捷菜單中的“任務(wù)(T)”選項(xiàng),單擊“備份(B)”,也能打開“備份數(shù)據(jù)庫”對(duì)話框。上機(jī)實(shí)習(xí)10
返回本節(jié)首頁(2)使用T-SQL命令執(zhí)行備份在T-SQL命令中,使用不同形式的backup命令能實(shí)現(xiàn)不同形式的備份:例11-30完成以下備份操作①創(chuàng)建用于存放kcgl數(shù)據(jù)庫完整備份的邏輯備份設(shè)備,然后備份整個(gè)kcgl數(shù)據(jù)庫。命令:usemaster;execsp_addumpdevice'disk','kcgl_1','c:\ProgramFiles\MicrosoftSQLServer\MSSQL\backup\kcgl_1.dat';backupdatabasekcgltokcgl_1②創(chuàng)建了一個(gè)數(shù)據(jù)庫和日志的完整備份。將數(shù)據(jù)庫備份到稱為kcgl_1的邏輯備份設(shè)備上,然后將日志備份到稱為kcglLog1的邏輯備份設(shè)備上。usemaster;execsp_addumpdevice'disk','kcgl_1','c:\ProgramFiles\MicrosoftSQLServer\MSSQL\backup\kcgl_1.dat';execsp_addumpdevice'disk','kcglLog1','c:\ProgramFiles\MicrosoftSQLServer\MSSQL\backup\kcglLog1.dat';backupdatabas
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 執(zhí)業(yè)醫(yī)師定期考核個(gè)人述職報(bào)告7篇
- 應(yīng)聘應(yīng)屆生的自我介紹范文
- 建筑工程入門基礎(chǔ)知識(shí)普及
- 家電導(dǎo)購培訓(xùn)
- 大學(xué)法制安全教育主題班會(huì)
- 2018山西道法試卷+答案+解析
- 2024年中國(guó)自動(dòng)化設(shè)備行業(yè)市場(chǎng)發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告-智研咨詢重磅發(fā)布
- 多模GNSS精密單點(diǎn)定位選星方法研究
- 線粒體乳酸攝取氧化復(fù)合物促進(jìn)失巢乳腺癌干細(xì)胞特性和轉(zhuǎn)移潛能
- 二零二五年度個(gè)人擔(dān)保合同電子化簽訂與存證服務(wù)
- 江蘇中國(guó)中煤能源集團(tuán)有限公司江蘇分公司2025屆高校畢業(yè)生第二次招聘6人筆試歷年參考題庫附帶答案詳解
- 【語文】第23課《“蛟龍”探?!氛n件 2024-2025學(xué)年統(tǒng)編版語文七年級(jí)下冊(cè)
- 北師版七年級(jí)數(shù)學(xué)下冊(cè)第二章測(cè)試題及答案
- 2025警察公安派出所年終總結(jié)工作匯報(bào)
- 機(jī)動(dòng)車檢測(cè)站新?lián)Q版20241124質(zhì)量管理手冊(cè)
- 2024年決戰(zhàn)行測(cè)5000題言語理解與表達(dá)(培優(yōu)b卷)
- 中國(guó)游戲發(fā)展史課件
- 2025年慢性阻塞性肺疾病全球創(chuàng)議GOLD指南修訂解讀課件
- 《PLC應(yīng)用技術(shù)(西門子S7-1200)第二版》全套教學(xué)課件
- 第01講 直線的方程(九大題型)(練習(xí))
- 《基礎(chǔ)會(huì)計(jì)》教學(xué)課件-整套教程電子講義
評(píng)論
0/150
提交評(píng)論