版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章存儲(chǔ)過程和觸發(fā)器復(fù)習(xí)
7.1存儲(chǔ)過程、觸發(fā)器基本概念7.2存儲(chǔ)過程7.3觸發(fā)器2023/1/31第七章存儲(chǔ)過程和觸發(fā)器復(fù)習(xí) 7.1存儲(chǔ)過程、觸發(fā)器基本概念12023/1/32第八章備份恢復(fù)與導(dǎo)入導(dǎo)出2022/12/122第八章備份恢復(fù)與導(dǎo)入導(dǎo)出2第八章內(nèi)容 8.1備份和恢復(fù)概述8.2備份操作和備份命令8.3恢復(fù)操作和恢復(fù)命令8.4導(dǎo)入/導(dǎo)出8.5數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)2023/1/33第八章內(nèi)容 8.1備份和恢復(fù)概述2022/12/12338.1備份和恢復(fù)概述備份和恢復(fù)是數(shù)據(jù)庫管理系統(tǒng)提供的兩種應(yīng)對出現(xiàn)故障的功能。備份和還原操作與從數(shù)據(jù)庫中保存數(shù)據(jù)以備將來使用有關(guān),類似于由操作系統(tǒng)執(zhí)行的備份和還原操作?;謴?fù)是當(dāng)數(shù)據(jù)庫出現(xiàn)故障時(shí),將備份的數(shù)據(jù)庫加載到系統(tǒng),從而使數(shù)據(jù)庫恢復(fù)到備份時(shí)的正確狀態(tài)。2023/1/348.1備份和恢復(fù)概述備份和恢復(fù)是數(shù)據(jù)庫管理系統(tǒng)提供的兩種應(yīng)48.1.1備份和恢復(fù)需求分析計(jì)算機(jī)系統(tǒng)故障的類型:硬件故障CUP、內(nèi)存、總線故障磁盤故障災(zāi)難性的系統(tǒng)故障、服務(wù)器永久故障軟件故障操作系統(tǒng)故障數(shù)據(jù)庫管理系統(tǒng)故障應(yīng)用程序故障人為錯(cuò)誤數(shù)據(jù)庫服務(wù)器失敗、數(shù)據(jù)丟失、表丟失、數(shù)據(jù)崩潰2023/1/358.1.1備份和恢復(fù)需求分析計(jì)算機(jī)系統(tǒng)故障的類型:20258.1.1備份和恢復(fù)需求分析2023/1/36數(shù)據(jù)庫中的數(shù)據(jù)丟失或被破壞原因:(1)計(jì)算機(jī)硬件故障(2)軟件故障(3)病毒(4)誤操作(5)自然災(zāi)害(6)盜竊8.1.1備份和恢復(fù)需求分析2022/12/126數(shù)據(jù)庫68.1.2數(shù)據(jù)庫備份的基本概念
2023/1/37SQLServer提供多種備份方法,根據(jù)具體的情況選用合適方法數(shù)據(jù)庫的破壞是不可測的,備份的許多工作都要進(jìn)行考慮,因此備份需要確定策略的策略備份策略要以最小的代價(jià)恢復(fù)數(shù)據(jù)。8.1.2數(shù)據(jù)庫備份的基本概念2022/12/12778.1.2數(shù)據(jù)庫備份的基本概念2023/1/38備份內(nèi)容備份內(nèi)容:系統(tǒng)數(shù)據(jù)庫、用戶數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫:master、msdb、model系統(tǒng)數(shù)據(jù)庫非常重要,必須完全備份用戶數(shù)據(jù)庫:存儲(chǔ)用戶數(shù)據(jù)的存儲(chǔ)空間集分為非關(guān)鍵數(shù)據(jù)和關(guān)鍵數(shù)據(jù)關(guān)鍵數(shù)據(jù)需進(jìn)行完整備份非關(guān)鍵數(shù)據(jù)可以不進(jìn)行備份關(guān)鍵數(shù)據(jù)和非關(guān)鍵數(shù)據(jù)和特定數(shù)據(jù)庫有關(guān)銀行數(shù)據(jù)庫、學(xué)生數(shù)據(jù)庫8.1.2數(shù)據(jù)庫備份的基本概念2022/12/128備88.1.2數(shù)據(jù)庫備份的基本概念2023/1/392.備份者SQLServer中,可做備份操作的角色成員:(1)固定的服務(wù)器角色sysadmin(系統(tǒng)管理員)(2)固定的數(shù)據(jù)庫角色db_owner(數(shù)據(jù)庫所有者)(3)固定的數(shù)據(jù)庫角色db_backupoperator。(允許進(jìn)行數(shù)據(jù)備份的用戶)8.1.2數(shù)據(jù)庫備份的基本概念2022/12/129298.1.2數(shù)據(jù)庫備份的基本概念3.備份介質(zhì)備份介質(zhì):將數(shù)據(jù)庫備份到的目標(biāo)載體。(1)硬盤---最常用的備份介質(zhì)。硬盤用于備份本地文件、網(wǎng)絡(luò)文件。(2)磁帶---大容量的備份介質(zhì),磁帶僅可用于備份本地文件。2023/1/3108.1.2數(shù)據(jù)庫備份的基本概念3.備份介質(zhì)2022/108.1.2數(shù)據(jù)庫備份的基本概念2023/1/3114.備份時(shí)間備份系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫的時(shí)機(jī)不同系統(tǒng)數(shù)據(jù)庫:當(dāng)系統(tǒng)數(shù)據(jù)庫master、msdb、model發(fā)生改變時(shí),需要進(jìn)行備份。(tempdb不需要備份??)8.1.2數(shù)據(jù)庫備份的基本概念2022/12/1211118.1.2數(shù)據(jù)庫備份的基本概念備份master后系統(tǒng)出現(xiàn)故障,可以恢復(fù)系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫。沒有備份master數(shù)據(jù)庫系統(tǒng)出現(xiàn)故障:只能重建master數(shù)據(jù)庫。使用工具Rebuildm.exe,重建master系統(tǒng)數(shù)據(jù)庫:C:\ProgramFiles\MicrosoftSQLServer\80\Tools\Binn\Rebuildm.exe
修改msdb、model數(shù)據(jù)庫時(shí),也需要進(jìn)行備份。2023/1/3128.1.2數(shù)據(jù)庫備份的基本概念備份master后系統(tǒng)出128.1.2數(shù)據(jù)庫備份的基本概念用戶數(shù)據(jù)庫:當(dāng)用戶數(shù)據(jù)庫發(fā)生改變時(shí),需要進(jìn)行備份用戶數(shù)據(jù)庫發(fā)生改變的情況:創(chuàng)建數(shù)據(jù)庫、加載數(shù)據(jù)庫時(shí),應(yīng)備份數(shù)據(jù)庫。為數(shù)據(jù)庫創(chuàng)建索引時(shí),應(yīng)備份數(shù)據(jù)庫執(zhí)行了不記日志的T-SQL命令時(shí),應(yīng)備份數(shù)據(jù)庫。(不記日志的命令p226)2023/1/3138.1.2數(shù)據(jù)庫備份的基本概念用戶數(shù)據(jù)庫:當(dāng)用戶數(shù)據(jù)庫138.1.2數(shù)據(jù)庫備份的基本概念5.備份頻率備份頻率---相隔多長時(shí)間進(jìn)行備份。備份頻率問題系統(tǒng)恢復(fù)的工作量系統(tǒng)執(zhí)行的事務(wù)量根據(jù)系統(tǒng)具體的環(huán)境,備份方法的不同,采取不同的策略。2023/1/3148.1.2數(shù)據(jù)庫備份的基本概念5.備份頻率2022/148.1.2數(shù)據(jù)庫備份的基本概念6.限制操作SQLServer在執(zhí)行數(shù)據(jù)庫備份的過程中,允許用戶對數(shù)據(jù)庫繼續(xù)操作。備份時(shí)不允許執(zhí)行的操作:create/alterdatabase創(chuàng)建索引不記日志的命令在執(zhí)行上述操作時(shí),備份不能進(jìn)行2023/1/3158.1.2數(shù)據(jù)庫備份的基本概念6.限制操作2022158.1.2數(shù)據(jù)庫備份的基本概念2023/1/3167.備份方法數(shù)據(jù)庫備份方法完全備份差異備份SQLServer基本備份方法數(shù)據(jù)庫備份數(shù)據(jù)庫和事務(wù)日志備份SQLServer數(shù)據(jù)庫備份方法完全備份差異備份文件、文件組備份事務(wù)日志備份8.1.2數(shù)據(jù)庫備份的基本概念2022/12/1216168.1.2數(shù)據(jù)庫備份的基本概念(1)完全數(shù)據(jù)庫備份備份整個(gè)數(shù)據(jù)庫,包含日志文件。備份操作簡單,恢復(fù)時(shí)只需一個(gè)步驟就可完成??梢曰謴?fù)到最近一次數(shù)據(jù)庫備份時(shí)的狀態(tài)。數(shù)據(jù)庫不大,數(shù)據(jù)庫中數(shù)據(jù)變化很少,可考慮進(jìn)行全局?jǐn)?shù)據(jù)庫備份。數(shù)據(jù)庫備份開始后,不能終止,必須完成。2023/1/3178.1.2數(shù)據(jù)庫備份的基本概念(1)完全數(shù)據(jù)庫備份2178.1.2數(shù)據(jù)庫備份的基本概念(2)差異備份備份自上次數(shù)據(jù)庫備份后發(fā)生更改的部分?jǐn)?shù)據(jù)庫。差異備份工作量小,速度快,對運(yùn)行的系統(tǒng)影響小?;謴?fù)時(shí),若是完全數(shù)據(jù)庫備份,使用完全數(shù)據(jù)庫備份和差異數(shù)據(jù)庫備份恢復(fù)?;謴?fù)時(shí),若是差異數(shù)據(jù)庫和事務(wù)日志備份,使用完全數(shù)據(jù)庫備份和差異備份后的事務(wù)日志備份來恢復(fù)數(shù)據(jù)庫。2023/1/3188.1.2數(shù)據(jù)庫備份的基本概念(2)差異備份2022188.1.2數(shù)據(jù)庫備份的基本概念(3)文件、文件組備份備份特定的數(shù)據(jù)庫文件或文件組,定期備份事務(wù)日志,恢復(fù)速度較快。對于分割在多個(gè)文件中的大型數(shù)據(jù)庫可以采取該方法。文件或文件組備份和還原操作必須與事務(wù)日志備份一起使用2023/1/3198.1.2數(shù)據(jù)庫備份的基本概念(3)文件、文件組備份198.1.2數(shù)據(jù)庫備份的基本概念(4)事務(wù)日志備份在兩次完全數(shù)據(jù)庫備份期間進(jìn)行事務(wù)日志備份備份的事務(wù)日志記錄了兩次數(shù)據(jù)庫庫備份之間所有的數(shù)據(jù)庫活動(dòng)記錄?;謴?fù)時(shí),能恢復(fù)所有備份的事務(wù),丟失未提交或提交未執(zhí)行的事務(wù)?;謴?fù)時(shí),首先恢復(fù)最近的完全數(shù)據(jù)庫備份,然后恢復(fù)在該完全數(shù)據(jù)庫備份之后的所有事物日志備份。2023/1/3208.1.2數(shù)據(jù)庫備份的基本概念(4)事務(wù)日志備份202208.1.2數(shù)據(jù)庫備份的基本概念8.性能考慮備份數(shù)據(jù)庫,對SQLServer性能的影響:備份一個(gè)數(shù)據(jù)庫所需的時(shí)間主要取決于物理設(shè)備的速度,如磁盤設(shè)備的速度通常比磁帶設(shè)備快通常備份到多個(gè)物理設(shè)備比備份到一個(gè)物理設(shè)備要快系統(tǒng)的并發(fā)活動(dòng)對數(shù)據(jù)庫的備份有影響,在備份時(shí),減少并發(fā)活動(dòng)2023/1/3218.1.2數(shù)據(jù)庫備份的基本概念8.性能考慮2022/218.1.3數(shù)據(jù)庫恢復(fù)概念2023/1/322數(shù)據(jù)庫恢復(fù)兩個(gè)步驟:1.準(zhǔn)備工作:系統(tǒng)安全性檢查、備份介質(zhì)驗(yàn)證。a、系統(tǒng)安全性檢查:恢復(fù)操作不能進(jìn)行的情況:(1)指定的要恢復(fù)的數(shù)據(jù)庫已存在,備份文件中記錄的數(shù)據(jù)庫與其不同(2)服務(wù)器上數(shù)據(jù)庫文件集與備份中的數(shù)據(jù)庫文件集不一致(3)未提供恢復(fù)數(shù)據(jù)庫所需的所有文件或文件組。8.1.3數(shù)據(jù)庫恢復(fù)概念2022/12/1222數(shù)據(jù)228.1.3數(shù)據(jù)庫恢復(fù)概念b、備份介質(zhì)驗(yàn)證:備份文件或備份集名及描述信息使用的備份介質(zhì)類型(磁帶或磁盤等)使用的備份方法執(zhí)行備份的日期和時(shí)間備份集的大小數(shù)據(jù)庫文件及日志文件的邏輯和物理文件名備份文件的大小2023/1/3238.1.3數(shù)據(jù)庫恢復(fù)概念b、備份介質(zhì)驗(yàn)證:2022/1238.1.3數(shù)據(jù)庫恢復(fù)概念2.執(zhí)行恢復(fù)數(shù)據(jù)庫的操作使用SQLServer的相關(guān)工具、語句執(zhí)行恢復(fù)操作2023/1/3248.1.3數(shù)據(jù)庫恢復(fù)概念2.執(zhí)行恢復(fù)數(shù)據(jù)庫的操作20248.2備份操作和備份命令進(jìn)行數(shù)據(jù)庫備份創(chuàng)建存儲(chǔ)備份的備份設(shè)備使用企業(yè)管理器;備份向?qū)?;T-SQL命令備份設(shè)備命名備份設(shè)備(邏輯名訪問)臨時(shí)備份設(shè)備(物理名訪問)2023/1/3258.2備份操作和備份命令進(jìn)行數(shù)據(jù)庫備份2022/12/122258.2.1創(chuàng)建備份設(shè)備2023/1/3261、創(chuàng)建命名備份設(shè)備創(chuàng)建命名備份設(shè)備方法:系統(tǒng)存儲(chǔ)過程、企業(yè)管理器使用磁盤設(shè)備備份,備份設(shè)備是磁盤文件使用磁帶設(shè)備備份,備份設(shè)備是磁帶1)系統(tǒng)存儲(chǔ)過程創(chuàng)建命名備份設(shè)備執(zhí)行系統(tǒng)存儲(chǔ)過程sp_addumpdevice可以在磁盤或磁帶上創(chuàng)建命名備份設(shè)備。8.2.1創(chuàng)建備份設(shè)備2022/12/12261、創(chuàng)建268.2.1創(chuàng)建備份設(shè)備2023/1/327系統(tǒng)存儲(chǔ)過程創(chuàng)建命名備份設(shè)備語法格式:sp_addumpdevice[@devtype=]'device_type',[@logicalname=]'logical_name',[@physicalname=]'physical_name‘說明:‘device_type’:介質(zhì)類型,{disk|tape}‘logical_name’:備份設(shè)備邏輯名‘physical_name’:備份設(shè)備物理名8.2.1創(chuàng)建備份設(shè)備2022/12/1227系統(tǒng)存儲(chǔ)過278.2.1創(chuàng)建備份設(shè)備例8.1在本地磁盤上創(chuàng)建一個(gè)命名備份設(shè)備usemasterexecsp_addumpdevice'disk','mybackupfile','E:\SQLServerProject\backup\mybackupfile.bak'2023/1/3288.2.1創(chuàng)建備份設(shè)備例8.1在本地磁盤上創(chuàng)建一個(gè)288.2.1創(chuàng)建備份設(shè)備2023/1/3292)使用企業(yè)管理器創(chuàng)建命名備份設(shè)備第1步用管理員帳號(hào)登錄SQLServer;第2步運(yùn)行SQLServer企業(yè)管理器;第3步在控制臺(tái)目錄樹中,展開服務(wù)器組和服務(wù)器,展開“管理”文件夾,在“備份”上單擊鼠標(biāo)右鍵,選擇“新建備份設(shè)備”。8.2.1創(chuàng)建備份設(shè)備2022/12/12292)使用企298.2.1創(chuàng)建備份設(shè)備2023/1/330第4步上一步操作完成后,出現(xiàn)如圖所示的對話框,在該對話框中有兩個(gè)文本框,分別輸入備份設(shè)備的邏輯名和完整的物理路徑名。輸入完畢后,單擊“確定”按鈕,則新的備份設(shè)備就創(chuàng)建完成了,如圖8.3所示。8.2.1創(chuàng)建備份設(shè)備2022/12/1230第4步上308.2.1創(chuàng)建備份設(shè)備2023/1/331刪除備份設(shè)備:企業(yè)管理器、系統(tǒng)存儲(chǔ)過程企業(yè)管理器:1、展開服務(wù)器組,然后展開服務(wù)器。2、展開“管理”文件夾,然后單擊“備份”。3、在詳細(xì)信息窗格中,右擊要?jiǎng)h除的命名備份設(shè)備。4、單擊“刪除”命令并確認(rèn)刪除。系統(tǒng)存儲(chǔ)過程:usemasterexecsp_dropdevice’mybackupfile’,delfile8.2.1創(chuàng)建備份設(shè)備2022/12/1231刪除備份設(shè)318.2.1創(chuàng)建備份設(shè)備2023/1/3322.創(chuàng)建臨時(shí)備份設(shè)備
臨時(shí)備份設(shè)備做臨時(shí)性存儲(chǔ),使用物理名引用。創(chuàng)建臨時(shí)文件存儲(chǔ)備份結(jié)果。語法格式:BACKUPDATABASE{database_name|@database_name_var}
TO<backup_file>[,…n]<backup_file>::={{backup_file_name|@backup_file_name_evar}|{DISK|TAPE}={temp_file_name|@temp_file_name_evar}8.2.1創(chuàng)建備份設(shè)備2022/12/12322.創(chuàng)建328.2.1創(chuàng)建備份設(shè)備【例8.3】在磁盤上創(chuàng)建一個(gè)臨時(shí)備份設(shè)備,它用來備份數(shù)據(jù)庫XSCJ。
USEmasterBACKUPDATABASEXSCJTO‘f:\backup\tmpxscj.bak’2023/1/3338.2.1創(chuàng)建備份設(shè)備【例8.3】在磁盤上創(chuàng)建一個(gè)臨時(shí)備338.2.1創(chuàng)建備份設(shè)備2023/1/3343.使用多個(gè)備份設(shè)備
SQLServer可以同時(shí)向多個(gè)備份設(shè)備寫入數(shù)據(jù),即進(jìn)行并行的備份。并行備份將需備份的數(shù)據(jù)分別備份在多個(gè)設(shè)備上,這多個(gè)備份設(shè)備構(gòu)成了備份集。多個(gè)設(shè)備備份時(shí)要求:所有設(shè)備必須具有相同的介質(zhì)類型設(shè)備的容量和速度可以不同可以結(jié)合使用臨時(shí)設(shè)備和命名設(shè)備恢復(fù)時(shí),設(shè)備數(shù)目可以與備份時(shí)不同8.2.1創(chuàng)建備份設(shè)備2022/12/12343.使用348.2.1創(chuàng)建備份設(shè)備2023/1/3358.2.1創(chuàng)建備份設(shè)備2022/12/1235358.2.2備份命令2023/1/336BACKUPDATABASE{database_name|@database_name_var}/*被備份的數(shù)據(jù)庫名*/TO<backup_device>[,...n
] /*指出備份目標(biāo)設(shè)備*/[WITH[BLOCKSIZE={blocksize|@blocksize_variable
}]/*塊大小*/[[,]DESCRIPTION={'text'
|@text_variable
}]/*備份集的自由格式文本*/[[,]EXPIREDATE={date
|@date_var
} /*備份集到期和允許被重寫的日期*/|RETAINDAYS={days|@days_var
}] [[,]PASSWORD={password
|@password_variable
}][[,]FORMAT|NOFORMAT][[,]{INIT|NOINIT}] /*指定是覆蓋還是追加*/[[,]MEDIADESCRIPTION={'text'
|@text_variable
}][[,]MEDIANAME={media_name
|@media_name_variable}]
[[,]MEDIAPASSWORD={mediapassword
|@mediapassword_variable
}][[,]NAME={backup_set_name|@backup_set_name_var
}][[,]{NOREWIND|REWIND}][[,]{NOSKIP|SKIP}] [[,]{NOUNLOAD|UNLOAD}][[,]RESTART] [[,]STATS[=percentage
]]
]1.備份整個(gè)數(shù)據(jù)庫語法格式:8.2.2備份命令2022/12/1236BACKUP368.2.2備份命令2023/1/337使用企業(yè)管理器查看備份設(shè)備的內(nèi)容。步驟如下:第1步在企業(yè)管理器的控制臺(tái)目錄樹上,展開“管理”文件夾,單擊“備份”,在右邊窗口中選定備份設(shè)備,在其上單擊鼠標(biāo)右鍵如圖所示。8.2.2備份命令2022/12/1237使用企業(yè)管理器378.2.2備份命令2023/1/338第2步上一步操作結(jié)束后,將出現(xiàn)如圖所示的備份設(shè)備屬性對話框,單擊“查看內(nèi)容”按鈕。第3步上一步操作結(jié)束后,將出現(xiàn)如圖所示的查看備份媒體內(nèi)容對話框,其中顯示了所要查看的備份設(shè)備的內(nèi)容。8.2.2備份命令2022/12/1238第2步上一步388.2.2備份命令2023/1/339【例8.4】使用邏輯名test1創(chuàng)建一個(gè)命名的備份設(shè)備,并將數(shù)據(jù)庫XSCJ完全備份到該設(shè)備。USEmasterEXECsp_addumpdevice'disk','test1','E:\SQLServerProject\backup\test1.bak'BACKUPDATABASEXSCJTOtest18.2.2備份命令2022/12/1239【例8.4】使398.2.2備份命令2023/1/340【例8.5】將數(shù)據(jù)庫XSCJ備份到多個(gè)備份設(shè)備。USEmasterEXECsp_addumpdevice'disk','test2',''E:\SQLServerProject\backup\test2.bak
'EXECsp_addumpdevice'disk','test3',''E:\SQLServerProject\backup\test3.bak
'BACKUPDATABASEXSCJTOtest2,test3WITHNAME='xscjbk'8.2.2備份命令2022/12/1240【例8.5】將408.2.2備份命令2023/1/3412.差異備份數(shù)據(jù)庫語法格式:BACKUPDATABASE{database_name|@database_name_var}TO<backup_device>[,…n][WITH
[[,]DIFFERENTIAL]/*其余選項(xiàng)與相數(shù)據(jù)庫的完全備份相同*/]8.2.2備份命令2022/12/12412.差異備份418.2.2備份命令2023/1/342執(zhí)行了完全數(shù)據(jù)庫備份,才能執(zhí)行差異備份【例8.6】創(chuàng)建臨時(shí)備份設(shè)備并在所創(chuàng)建的臨時(shí)備份設(shè)備上進(jìn)行差異備份。BACKUPDATABASEXSCJTODISK='E:\SQLServerProject\backup\backupxscjbk.bak'WITHDIFFERENTIAL8.2.2備份命令2022/12/1242執(zhí)行了完全數(shù)據(jù)428.2.2備份命令2023/1/3433.備份數(shù)據(jù)庫文件或文件組語法格式:BACKUPDATABASE{database_name|@database_name_var
}
<file_or_filegroup>[,...n
] /*指定文件或文件組名*/TO<backup_device>[,...n
]
[WITH
[BLOCKSIZE={blocksize|@blocksize_variable
}][[,]DESCRIPTION={'text'
|@text_variable
}][[,]EXPIREDATE={date
|@date_var
}|RETAINDAYS={days|@days_var
}][[,]PASSWORD={password
|@password_variable
}][[,]FORMAT|NOFORMAT][[,]{INIT|NOINIT}][[,]MEDIADESCRIPTION={'text'
|@text_variable
}][[,]MEDIANAME={media_name
|@media_name_variable}][[,]MEDIAPASSWORD={mediapassword
|@mediapassword_variable
}][[,]NAME={backup_set_name|@backup_set_name_var
}][[,]{NOREWIND|REWIND}][[,]{NOSKIP|SKIP}][[,]{NOUNLOAD|UNLOAD}][[,]RESTART][[,]STATS[=percentage
]]]8.2.2備份命令2022/12/12433.備份數(shù)據(jù)438.2.2備份命令必須使用backuplog提供事務(wù)日志的單獨(dú)備份,才能使用文件和文件組備份來恢復(fù)數(shù)據(jù)庫【例8.7】設(shè)TT數(shù)據(jù)庫有兩個(gè)數(shù)據(jù)文件:t1和t2,事務(wù)日志文件存儲(chǔ)在文件tlog中,對文件t1進(jìn)行備份,假設(shè)備份設(shè)備T2BACKUP和TBACKUPLOG已存在。
backupdatabasett file=‘t1’to‘t2backup’ backuplogttto‘tbackuplog’2023/1/3448.2.2備份命令必須使用backuplog提供事務(wù)448.2.2備份命令2023/1/3454.事務(wù)日志備份
語法格式:BACKUPLOG{database_name|@database_name_var
}/*指出被備份的數(shù)據(jù)庫名*/TO<backup_device>[,...n
]/*指出備份目標(biāo)*/[WITH[BLOCKSIZE={blocksize|@blocksize_variable
}] /*塊大小*/ [[,]DESCRIPTION={'text'
|@text_variable
}]/*備份集的自由格式文本*/[[,]EXPIREDATE={date
|@date_var
} /*備份集到期和允許被重寫的日期*/|RETAINDAYS={days|@days_var
}][[,]PASSWORD={password
|@password_variable
}][[,[[,]{NOUNLOAD|UNLOAD}][[,]RESTART] [[,]STATS[=percentage
]]
]8.2.2備份命令2022/12/12454.事務(wù)日志458.2.2備份命令2023/1/346事務(wù)日志備份需在一次完全數(shù)據(jù)庫備份后進(jìn)行【例8.8】創(chuàng)建一個(gè)命名的備份設(shè)備XSCJLOGBK,并備份XSCJ數(shù)據(jù)庫的事務(wù)日志。USEmasterEXECsp_addumpdevice'disk','XSCJLOGBK',‘f:\backup\testlog.bak'BACKUPLOGXSCJTOXSCJLOGBK8.2.2備份命令2022/12/1246事務(wù)日志備份需468.2.2備份命令2023/1/3475.清除事務(wù)日志事務(wù)日志空間滿時(shí),需要將事務(wù)日志備份,并清除事務(wù)日志清除事務(wù)日志語法格式:BACKUPLOG{database_name|@database_name_var
}{
[WITH
{NO_LOG
|TRUNCATE_ONLY}]}8.2.2備份命令2022/12/12475.清除事務(wù)478.2.3使用企業(yè)管理器進(jìn)行備份
2023/1/348在SQLServer企業(yè)管理器中進(jìn)行備份的步驟是:第1步在SQLServer企業(yè)管理器窗口中打開服務(wù)器組和服務(wù)器,展開“管理”文件夾,右擊“備份”選項(xiàng),在彈出的菜單上選擇“備份數(shù)據(jù)庫…”選項(xiàng),如圖所示。8.2.3使用企業(yè)管理器進(jìn)行備份2022/12/124488.2.3使用企業(yè)管理器進(jìn)行備份2023/1/349第2步在所出現(xiàn)的如圖8.12所示“SQLServer備份”對話框中選擇被備份的數(shù)據(jù)庫名、輸入備份的目標(biāo)(即命名的備份介質(zhì)的名稱或臨時(shí)備份介質(zhì)的位置)、備份的描述、備份的類型、以及選擇備份為覆蓋的還是追加。8.2.3使用企業(yè)管理器進(jìn)行備份2022/12/1249498.2.3使用企業(yè)管理器進(jìn)行備份2023/1/350第3步若使用臨時(shí)備份介質(zhì),則在如圖8.13所示的“選擇備份目的”對話框中選擇“文件名”,并在文本框中輸入文件的全路徑名,或點(diǎn)擊按鈕選擇路徑。若使用命名備份介質(zhì),選擇“備份設(shè)備”,若要新建一個(gè)命名備份介質(zhì),選擇“新備份設(shè)備”,出現(xiàn)新設(shè)備對話框。8.2.3使用企業(yè)管理器進(jìn)行備份2022/12/1250508.2.3使用企業(yè)管理器進(jìn)行備份2023/1/351
第4步選擇或輸入了上一步指出的各參數(shù)后,在“SQLServer備份”對話框中單擊“確定”按鈕,系統(tǒng)將執(zhí)行備份操作,并出現(xiàn)一個(gè)進(jìn)度指示對話框,備份操作完成后,將出現(xiàn)如圖8.15所示的提示框,點(diǎn)擊“確定”。8.2.3使用企業(yè)管理器進(jìn)行備份2022/12/1251518.2.4使用備份向?qū)нM(jìn)行備份
2023/1/352使用備份向?qū)нM(jìn)行備份的步驟是:第1步在SQLServer企業(yè)管理器的“工具”菜單中選擇:向?qū)Ч芾韨浞菹驅(qū)?,將出現(xiàn)如圖8.16所示的備份向?qū)У臍g迎界面,該界面給出了備份向?qū)У墓δ堋?.2.4使用備份向?qū)нM(jìn)行備份2022/12/1252使528.2.4使用備份向?qū)нM(jìn)行備份2023/1/353第2步單擊“下一步”,將出現(xiàn)如圖8.17所示的選擇需備份數(shù)據(jù)庫的界面。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1253第2538.2.4使用備份向?qū)нM(jìn)行備份2023/1/354第3步選擇要備份的數(shù)據(jù)庫名,單擊“下一步”,將出現(xiàn)如圖8.18所示的輸入備份名和描述的界面。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1254第3548.2.4使用備份向?qū)нM(jìn)行備份2023/1/355第4步輸入備份名稱和描述后,單擊“下一步”,將出現(xiàn)如圖8.19所示的選擇備份類型的界面。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1255第4558.2.4使用備份向?qū)нM(jìn)行備份2023/1/356第5步選擇備份類型后,單擊“下一步”,將出現(xiàn)如圖所示的選擇備份設(shè)備以及備份屬性(覆蓋或追加)的界面。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1256第5568.2.4使用備份向?qū)нM(jìn)行備份2023/1/357第6步選擇備份設(shè)備和屬性后,單擊“下一步”,將出現(xiàn)如圖所示的備份驗(yàn)證和調(diào)度的界面。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1257第6578.2.4使用備份向?qū)нM(jìn)行備份2023/1/358第7步單擊“下一步”,將出現(xiàn)如圖所示的確認(rèn)各備份參數(shù)的界面,單擊“完成”。8.2.4使用備份向?qū)нM(jìn)行備份2022/12/1258第588.3恢復(fù)操作和恢復(fù)命令恢復(fù)操作是在系統(tǒng)出現(xiàn)故障時(shí),對系統(tǒng)進(jìn)行的修復(fù)恢復(fù)操作需要實(shí)現(xiàn)對系統(tǒng)進(jìn)行備份操作2023/1/3598.3恢復(fù)操作和恢復(fù)命令恢復(fù)操作是在系統(tǒng)出現(xiàn)故障時(shí),對系統(tǒng)進(jìn)598.3.1檢查點(diǎn)(checkpoint)
2023/1/360
臟頁:被修改過,尚未寫入磁盤的緩沖區(qū)頁。刷新頁:將臟緩沖頁寫入磁盤SQLServer系統(tǒng)定期將所有臟日志和數(shù)據(jù)頁刷新到磁盤,這就稱為檢查點(diǎn)。檢查點(diǎn)從當(dāng)前數(shù)據(jù)庫的高速緩沖存儲(chǔ)器中刷新臟數(shù)據(jù)和日志頁,減少在恢復(fù)時(shí)需要前滾的修改量。
8.3.1檢查點(diǎn)(checkpoint)608.3.2數(shù)據(jù)庫的恢復(fù)命令
2023/1/361數(shù)據(jù)庫恢復(fù)時(shí),自動(dòng)執(zhí)行下列操作:(1)進(jìn)行安全檢查當(dāng)出現(xiàn)以下集中情況時(shí),系統(tǒng)將不能恢復(fù)數(shù)據(jù)庫:使用與被恢復(fù)的數(shù)據(jù)庫名稱不同的數(shù)據(jù)庫名去恢復(fù)數(shù)據(jù)庫;服務(wù)器上的數(shù)據(jù)庫文件組與備份的數(shù)據(jù)庫文件組不同;需恢復(fù)的數(shù)據(jù)庫名或文件名與備份的數(shù)據(jù)庫名或文件名不同;(2)重建數(shù)據(jù)庫完全數(shù)據(jù)庫備份中恢復(fù)數(shù)據(jù)庫時(shí),SQLServer將重建數(shù)據(jù)庫文件,并把所重建的數(shù)據(jù)庫文件置于備份數(shù)據(jù)庫時(shí)這些文件所在的位置,所有的數(shù)據(jù)庫對象都將自動(dòng)重建,用戶無需重建數(shù)據(jù)庫的結(jié)構(gòu)。8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1261數(shù)據(jù)庫618.3.2數(shù)據(jù)庫的恢復(fù)命令1.恢復(fù)數(shù)據(jù)庫的準(zhǔn)備有兩種方法可以得到有關(guān)數(shù)據(jù)庫備份介質(zhì)的信息:命令方式、企業(yè)管理器方式2023/1/3628.3.2數(shù)據(jù)庫的恢復(fù)命令1.恢復(fù)數(shù)據(jù)庫的準(zhǔn)備2022/628.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/363(1)使用SQLServer企業(yè)管理器界面查看所有備份介質(zhì)的屬性第1步啟動(dòng)SQLServer企業(yè)管理器,展開所管理的服務(wù)器,展開“管理”文件夾,在指定的備份介質(zhì)上點(diǎn)擊鼠標(biāo)右鍵,選擇“屬性”選項(xiàng),如圖所示。8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1263(1)638.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/364第2步在所出現(xiàn)的“備份設(shè)備屬性”對話框中點(diǎn)擊“查看內(nèi)容…”按鈕,將顯示所選備份介質(zhì)的有關(guān)信息,如圖所示。第3步在所出現(xiàn)的“查看備份媒體內(nèi)容”對話框中將顯示備份介質(zhì)所在的服務(wù)器名、備份數(shù)據(jù)庫名、備份類型、備份日期、到期日及大小等信息,如圖所示。8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1264第2步648.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/365(2)使用RESTOREHEADONLY、RESTORE
FILELISTONLY、RESTORELABELONLY等語句可以得到有關(guān)備份介質(zhì)更詳細(xì)的信息。語法格式:RESTOREHEADERONLYFROM<backup_device> /*指定還原時(shí)要使用的邏輯或物理備份設(shè)備。*/[WITH{NOUNLOAD|UNLOAD}/*指定是否在還原后從磁帶機(jī)中自動(dòng)卸載磁帶[[,]FILE=file_number][[,]PASSWORD={password|@password_variable}][[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable}]]***restoreheaderonly:在特定的備份設(shè)備上檢索所有備份集的所有備份首部信息***restorefilelistonly:獲得備份集內(nèi)包含的數(shù)據(jù)庫和日志文件列表組成的結(jié)果集信息***restorelabelonly:或得備份設(shè)備所標(biāo)識(shí)的備份媒體的信息組成的結(jié)果集信息***restoreverifyonly:檢查備份集是否完整,所有卷是否可讀8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1265(2)658.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/3662.使用RESTORE語句進(jìn)行數(shù)據(jù)庫恢復(fù)使用RESTORE語句可以恢復(fù)用BACKUP命令所做的備份恢復(fù)整個(gè)數(shù)據(jù)庫、恢復(fù)數(shù)據(jù)庫的部分內(nèi)容、恢復(fù)特定的文件或文件組、恢復(fù)事務(wù)日志。8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/12662.668.3.2數(shù)據(jù)庫的恢復(fù)命令1)恢復(fù)整個(gè)數(shù)據(jù)庫當(dāng)存儲(chǔ)數(shù)據(jù)庫的物理介質(zhì)被破壞,或整個(gè)數(shù)據(jù)庫被誤刪除,被破壞,需要恢復(fù)整個(gè)數(shù)據(jù)庫。恢復(fù)整個(gè)數(shù)據(jù)庫時(shí),SQLServer系統(tǒng)將重新創(chuàng)建數(shù)據(jù)庫及與數(shù)據(jù)庫相關(guān)的所有文件,并將文件存放在原來的位置。2023/1/3678.3.2數(shù)據(jù)庫的恢復(fù)命令1)恢復(fù)整個(gè)數(shù)據(jù)庫2022/1678.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/368語法格式:RESTOREDATABASE{database_name|@database_name_var
}/*database_name或@database_name_var指定被還原的目標(biāo)數(shù)據(jù)庫。*/[FROM<backup_device>[,...n
]]/*指定備份設(shè)備。參見RESTOREHEADONLY語句中backup_device。*/[WITH
[RESTRICTED_USER]/*限制只有db_owner、dbcreator或sysadmin角色的成員才能訪問新恢復(fù)的數(shù)據(jù)庫。*/[[,]FILE={file_number|@file_number}][[,]PASSWORD={password|@password_variable}][[,]MEDIANAME={media_name|@media_name_variable}][[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable}][[,]MOVE'logical_file_name'TO'operating_system_file_name']
[,...n][[,]KEEP_REPLICATION][[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name
}][[,]{NOREWIND|REWIND}][[,]{NOUNLOAD|UNLOAD}][[,]REPLACE]
[[,]RESTART][[,]STATS[=percentage
]] ]8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1268語法格688.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/369從一個(gè)已存在的命名備份介質(zhì)test1中恢復(fù)整個(gè)數(shù)據(jù)庫XSCJ:restoredatabasexscjfromtest18.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/1269從一個(gè)698.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/3702)恢復(fù)數(shù)據(jù)庫的部分內(nèi)容
語法格式:
RESTOREDATABASE{database_name|@database_name_var}
<file_or_filegroup>[,...n]/*指定包括在需恢復(fù)的邏輯文件或文件組的名稱*/
[FROM<backup_device>[,...n]]
[WITH
{PARTIAL} /*指定部分還原操作。*/
[[,]FILE={file_number|@file_number
}]
[[,]PASSWORD={password
|@password_variable}]
[[,]MEDIANAME={media_name
|@media_name_variable
}]
[[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable}]
[[,]MOVE'logical_file_name'TO'operating_system_file_name']
[,...n]
[[,]NORECOVERY]
[[,]{NOREWIND|REWIND}]
[[,]{NOUNLOAD|UNLOAD}]
[[,]REPLACE]
[[,]RESTRICTED_USER]
[[,]RESTART]
[[,]STATS[=percentage
]]
]8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/12702)708.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/3713)恢復(fù)特定的文件或文件組
語法格式:
RESTOREDATABASE{database_name|@database_name_var
}
<file_or_filegroup>[,...n
]
[FROM<backup_device>[,...n
]]
[WITH
[RESTRICTED_USER]
[[,]FILE={file_number|@file_number}]
[[,]PASSWORD={password|@password_variable
}]
[[,]MEDIANAME={media_name|@media_name_variable
}]
[[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable
}]
[[,]MOVE'logical_file_name'TO'operating_system_file_name']
[,...n]
[[,]NORECOVERY]
[[,]{NOREWIND|REWIND}]
[[,]{NOUNLOAD|UNLOAD}]
[[,]REPLACE]
[[,]RESTART]
[[,]STATS[=percentage
]]
]8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/12713)718.3.2數(shù)據(jù)庫的恢復(fù)命令2023/1/3724)恢復(fù)事務(wù)日志語法格式:RESTORELOG{database_name|@database_name_var}[FROM<backup_device>[,...n
]][WITH[RESTRICTED_USER][[,]FILE={file_number|@file_number}][[,]PASSWORD={password|@password_variable
}][[,]MOVE'logical_file_name'TO'operating_system_file_name'][,...n][[,]MEDIANAME={media_name|@media_name_variable}][[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable
}][[,]KEEP_REPLICATION][[,]{NORECOVERY|RECOVERY|STANDBY=undo_file_name
}][[,]{NOREWIND|REWIND}][[,]{NOUNLOAD|UNLOAD}][[,]RESTART][[,]STATS[=percentage
]][[,]STOPAT={date_time|@date_time_var}|[,]STOPATMARK=
'mark_name'[AFTERdatetime
]|[,]STOPBEFOREMARK=
'mark_name'[AFTERdatetime
]]]8.3.2數(shù)據(jù)庫的恢復(fù)命令2022/12/12724)728.3.3使用企業(yè)管理器恢復(fù)數(shù)據(jù)庫2023/1/373
啟動(dòng)SQLServer企業(yè)管理器,選擇菜單項(xiàng)“工具還原數(shù)據(jù)庫…”,如圖所示。8.3.3使用企業(yè)管理器恢復(fù)數(shù)據(jù)庫2022/12/127738.3.3使用企業(yè)管理器恢復(fù)數(shù)據(jù)庫2023/1/374
操作結(jié)束后,出現(xiàn)如圖所示的窗口,該窗口有兩個(gè)選項(xiàng)卡:“常規(guī)”和“選項(xiàng)”。在“常規(guī)”選項(xiàng)卡中,選擇要恢復(fù)的數(shù)據(jù)庫及恢復(fù)的類型,單擊“確定”按鈕。
8.3.3使用企業(yè)管理器恢復(fù)數(shù)據(jù)庫2022/12/1274748.4導(dǎo)入、導(dǎo)出導(dǎo)入/導(dǎo)出是數(shù)據(jù)庫與外部進(jìn)行數(shù)據(jù)交換的操作。2023/1/3758.4導(dǎo)入、導(dǎo)出導(dǎo)入/導(dǎo)出是數(shù)據(jù)庫與外部進(jìn)行數(shù)據(jù)交換的操作。758.4.1導(dǎo)入導(dǎo)出概念2023/1/376導(dǎo)入操作:從外部數(shù)據(jù)源將數(shù)據(jù)插入到SQLServer表的過程。導(dǎo)出操作:將SQLServer數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換為指定格式的過程。SQLServer可以導(dǎo)入的數(shù)據(jù)源:ODBC數(shù)據(jù)源、OLEDB數(shù)據(jù)源、ASCII文本文件、excel電子表格。8.4.1導(dǎo)入導(dǎo)出概念2022/12/1276導(dǎo)入操作:768.4.1導(dǎo)入導(dǎo)出概念SQLServer2000中支持?jǐn)?shù)據(jù)導(dǎo)入導(dǎo)出的組件:(1)數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)數(shù)據(jù)轉(zhuǎn)換服務(wù)在異類OLEDB和ODBC數(shù)據(jù)源之間導(dǎo)入和導(dǎo)出數(shù)據(jù)。
(2)復(fù)制復(fù)制用于創(chuàng)建單獨(dú)數(shù)據(jù)庫中的數(shù)據(jù)復(fù)本,并通過將一個(gè)復(fù)本中的修改復(fù)制到其它所有復(fù)本使所有復(fù)本同步(3)批量復(fù)制程序(大容量復(fù)制)SQLServer的大容量復(fù)制功能允許高效地傳輸大量數(shù)據(jù)。(4)T-SQL語句T-SQL語句包括SELECTINTO、INSERTSELECT、BULKINSRT、BACKUP和RESTORE語句2023/1/3778.4.1導(dǎo)入導(dǎo)出概念SQLServer2000中支持778.4.2使用bcp實(shí)用程序?qū)雽?dǎo)出數(shù)據(jù)
2023/1/378bcp(blokcopy),是SQLServer提供的一個(gè)塊復(fù)制程序。
bcp將數(shù)據(jù)庫表中的數(shù)據(jù)復(fù)制到某個(gè)數(shù)據(jù)文件或把某個(gè)數(shù)據(jù)文件的數(shù)據(jù)復(fù)制到數(shù)據(jù)庫表中。通常使用ASCII文本文件與數(shù)據(jù)庫表進(jìn)行交換。8.4.2使用bcp實(shí)用程序?qū)雽?dǎo)出數(shù)據(jù)2022/12788.5數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS,DataTransferService)提供了在SQLServer與OLEDB;ODBC(開放式數(shù)據(jù)互聯(lián));文本文件之間導(dǎo)入/導(dǎo)出和轉(zhuǎn)換數(shù)據(jù)的功能。2023/1/3798.5數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS,Data798.5.1DTS概述使用DTS時(shí),用戶創(chuàng)建和執(zhí)行DTS包。DTS包定義一個(gè)或多個(gè)數(shù)據(jù)轉(zhuǎn)換步驟,每一步執(zhí)行特定的操作。DTS包括一套用于創(chuàng)建;調(diào)度;執(zhí)行DTS包的工具。DTS包工具:DTS導(dǎo)入/導(dǎo)出向?qū)Вǎ?;DTS包設(shè)計(jì)器;DTS傳輸管理器;DTS包執(zhí)行實(shí)用工具2023/1/3808.5.1DTS概述使用DTS時(shí),用戶創(chuàng)建和執(zhí)行DT80第八章小結(jié)1、掌握數(shù)據(jù)庫備份和恢復(fù)的概念、類型、方 法、操作命令2、了解導(dǎo)入、導(dǎo)出3、了解數(shù)據(jù)轉(zhuǎn)換服務(wù)2023/1/381第八章小結(jié)1、掌握數(shù)據(jù)庫備份和恢復(fù)的概念、類型、方81第八章習(xí)題2023/1/3821.為什么在SQLServer2000中需設(shè)置備份與恢復(fù)功能?2.設(shè)計(jì)備份策略的指導(dǎo)思想是什么?主要考慮哪些因素?3.數(shù)據(jù)庫恢復(fù)要執(zhí)行哪些操作?4.T-SQL中用于數(shù)據(jù)庫備份和恢復(fù)的命令選項(xiàng)的含義分別是什么?5.數(shù)據(jù)導(dǎo)入導(dǎo)出的含義是什么?6.DTS的作用是什么?第八章習(xí)題2022/12/12821.為什么在SQ82
第七章存儲(chǔ)過程和觸發(fā)器復(fù)習(xí)
7.1存儲(chǔ)過程、觸發(fā)器基本概念7.2存儲(chǔ)過程7.3觸發(fā)器2023/1/383第七章存儲(chǔ)過程和觸發(fā)器復(fù)習(xí) 7.1存儲(chǔ)過程、觸發(fā)器基本概念832023/1/384第八章備份恢復(fù)與導(dǎo)入導(dǎo)出2022/12/122第八章備份恢復(fù)與導(dǎo)入導(dǎo)出84第八章內(nèi)容 8.1備份和恢復(fù)概述8.2備份操作和備份命令8.3恢復(fù)操作和恢復(fù)命令8.4導(dǎo)入/導(dǎo)出8.5數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)2023/1/385第八章內(nèi)容 8.1備份和恢復(fù)概述2022/12/123858.1備份和恢復(fù)概述備份和恢復(fù)是數(shù)據(jù)庫管理系統(tǒng)提供的兩種應(yīng)對出現(xiàn)故障的功能。備份和還原操作與從數(shù)據(jù)庫中保存數(shù)據(jù)以備將來使用有關(guān),類似于由操作系統(tǒng)執(zhí)行的備份和還原操作?;謴?fù)是當(dāng)數(shù)據(jù)庫出現(xiàn)故障時(shí),將備份的數(shù)據(jù)庫加載到系統(tǒng),從而使數(shù)據(jù)庫恢復(fù)到備份時(shí)的正確狀態(tài)。2023/1/3868.1備份和恢復(fù)概述備份和恢復(fù)是數(shù)據(jù)庫管理系統(tǒng)提供的兩種應(yīng)868.1.1備份和恢復(fù)需求分析計(jì)算機(jī)系統(tǒng)故障的類型:硬件故障CUP、內(nèi)存、總線故障磁盤故障災(zāi)難性的系統(tǒng)故障、服務(wù)器永久故障軟件故障操作系統(tǒng)故障數(shù)據(jù)庫管理系統(tǒng)故障應(yīng)用程序故障人為錯(cuò)誤數(shù)據(jù)庫服務(wù)器失敗、數(shù)據(jù)丟失、表丟失、數(shù)據(jù)崩潰2023/1/3878.1.1備份和恢復(fù)需求分析計(jì)算機(jī)系統(tǒng)故障的類型:202878.1.1備份和恢復(fù)需求分析2023/1/388數(shù)據(jù)庫中的數(shù)據(jù)丟失或被破壞原因:(1)計(jì)算機(jī)硬件故障(2)軟件故障(3)病毒(4)誤操作(5)自然災(zāi)害(6)盜竊8.1.1備份和恢復(fù)需求分析2022/12/126數(shù)據(jù)庫888.1.2數(shù)據(jù)庫備份的基本概念
2023/1/389SQLServer提供多種備份方法,根據(jù)具體的情況選用合適方法數(shù)據(jù)庫的破壞是不可測的,備份的許多工作都要進(jìn)行考慮,因此備份需要確定策略的策略備份策略要以最小的代價(jià)恢復(fù)數(shù)據(jù)。8.1.2數(shù)據(jù)庫備份的基本概念2022/12/127898.1.2數(shù)據(jù)庫備份的基本概念2023/1/390備份內(nèi)容備份內(nèi)容:系統(tǒng)數(shù)據(jù)庫、用戶數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫:master、msdb、model系統(tǒng)數(shù)據(jù)庫非常重要,必須完全備份用戶數(shù)據(jù)庫:存儲(chǔ)用戶數(shù)據(jù)的存儲(chǔ)空間集分為非關(guān)鍵數(shù)據(jù)和關(guān)鍵數(shù)據(jù)關(guān)鍵數(shù)據(jù)需進(jìn)行完整備份非關(guān)鍵數(shù)據(jù)可以不進(jìn)行備份關(guān)鍵數(shù)據(jù)和非關(guān)鍵數(shù)據(jù)和特定數(shù)據(jù)庫有關(guān)銀行數(shù)據(jù)庫、學(xué)生數(shù)據(jù)庫8.1.2數(shù)據(jù)庫備份的基本概念2022/12/128備908.1.2數(shù)據(jù)庫備份的基本概念2023/1/3912.備份者SQLServer中,可做備份操作的角色成員:(1)固定的服務(wù)器角色sysadmin(系統(tǒng)管理員)(2)固定的數(shù)據(jù)庫角色db_owner(數(shù)據(jù)庫所有者)(3)固定的數(shù)據(jù)庫角色db_backupoperator。(允許進(jìn)行數(shù)據(jù)備份的用戶)8.1.2數(shù)據(jù)庫備份的基本概念2022/12/1292918.1.2數(shù)據(jù)庫備份的基本概念3.備份介質(zhì)備份介質(zhì):將數(shù)據(jù)庫備份到的目標(biāo)載體。(1)硬盤---最常用的備份介質(zhì)。硬盤用于備份本地文件、網(wǎng)絡(luò)文件。(2)磁帶---大容量的備份介質(zhì),磁帶僅可用于備份本地文件。2023/1/3928.1.2數(shù)據(jù)庫備份的基本概念3.備份介質(zhì)2022/928.1.2數(shù)據(jù)庫備份的基本概念2023/1/3934.備份時(shí)間備份系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫的時(shí)機(jī)不同系統(tǒng)數(shù)據(jù)庫:當(dāng)系統(tǒng)數(shù)據(jù)庫master、msdb、model發(fā)生改變時(shí),需要進(jìn)行備份。(tempdb不需要備份??)8.1.2數(shù)據(jù)庫備份的基本概念2022/12/1211938.1.2數(shù)據(jù)庫備份的基本概念備份master后系統(tǒng)出現(xiàn)故障,可以恢復(fù)系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫。沒有備份master數(shù)據(jù)庫系統(tǒng)出現(xiàn)故障:只能重建master數(shù)據(jù)庫。使用工具Rebuildm.exe,重建master系統(tǒng)數(shù)據(jù)庫:C:\ProgramFiles\MicrosoftSQLServer\80\Tools\Binn\Rebuildm.exe
修改msdb、model數(shù)據(jù)庫時(shí),也需要進(jìn)行備份。2023/1/3948.1.2數(shù)據(jù)庫備份的基本概念備份master后系統(tǒng)出948.1.2數(shù)據(jù)庫備份的基本概念用戶數(shù)據(jù)庫:當(dāng)用戶數(shù)據(jù)庫發(fā)生改變時(shí),需要進(jìn)行備份用戶數(shù)據(jù)庫發(fā)生改變的情況:創(chuàng)建數(shù)據(jù)庫、加載數(shù)據(jù)庫時(shí),應(yīng)備份數(shù)據(jù)庫。為數(shù)據(jù)庫創(chuàng)建索引時(shí),應(yīng)備份數(shù)據(jù)庫執(zhí)行了不記日志的T-SQL命令時(shí),應(yīng)備份數(shù)據(jù)庫。(不記日志的命令p226)2023/1/3958.1.2數(shù)據(jù)庫備份的基本概念用戶數(shù)據(jù)庫:當(dāng)用戶數(shù)據(jù)庫958.1.2數(shù)據(jù)庫備份的基本概念5.備份頻率備份頻率---相隔多長時(shí)間進(jìn)行備份。備份頻率問題系統(tǒng)恢復(fù)的工作量系統(tǒng)執(zhí)行的事務(wù)量根據(jù)系統(tǒng)具體的環(huán)境,備份方法的不同,采取不同的策略。2023/1/3968.1.2數(shù)據(jù)庫備份的基本概念5.備份頻率2022/968.1.2數(shù)據(jù)庫備份的基本概念6.限制操作SQLServer在執(zhí)行數(shù)據(jù)庫備份的過程中,允許用戶對數(shù)據(jù)庫繼續(xù)操作。備份時(shí)不允許執(zhí)行的操作:create/alterdatabase創(chuàng)建索引不記日志的命令在執(zhí)行上述操作時(shí),備份不能進(jìn)行2023/1/3978.1.2數(shù)據(jù)庫備份的基本概念6.限制操作2022978.1.2數(shù)據(jù)庫備份的基本概念2023/1/3987.備份方法數(shù)據(jù)庫備份方法完全備份差異備份SQLServer基本備份方法數(shù)據(jù)庫備份數(shù)據(jù)庫和事務(wù)日志備份SQLServer數(shù)據(jù)庫備份方法完全備份差異備份文件、文件組備份事務(wù)日志備份8.1.2數(shù)據(jù)庫備份的基本概念2022/12/1216988.1.2數(shù)據(jù)庫備份的基本概念(1)完全數(shù)據(jù)庫備份備份整個(gè)數(shù)據(jù)庫,包含日志文件。備份操作簡單,恢復(fù)時(shí)只需一個(gè)步驟就可完成??梢曰謴?fù)到最近一次數(shù)據(jù)庫備份時(shí)的狀態(tài)。數(shù)據(jù)庫不大,數(shù)據(jù)庫中數(shù)據(jù)變化很少,可考慮進(jìn)行全局?jǐn)?shù)據(jù)庫備份。數(shù)據(jù)庫備份開始后,不能終止,必須完成。2023/1/3998.1.2數(shù)據(jù)庫備份的基本概念(1)完全數(shù)據(jù)庫備份2998.1.2數(shù)據(jù)庫備份的基本概念(2)差異備份備份自上次數(shù)據(jù)庫備份后發(fā)生更改的部分?jǐn)?shù)據(jù)庫。差異備份工作量小,速度快,對運(yùn)行的系統(tǒng)影響小?;謴?fù)時(shí),若是完全數(shù)據(jù)庫備份,使用完全數(shù)據(jù)庫備份和差異數(shù)據(jù)庫備份恢復(fù)?;謴?fù)時(shí),若是差異數(shù)據(jù)庫和事務(wù)日志備份,使用完全數(shù)據(jù)庫備份和差異備份后的事務(wù)日志備份來恢復(fù)數(shù)據(jù)庫。2023/1/31008.1.2數(shù)據(jù)庫備份的基本概念(2)差異備份20221008.1.2數(shù)據(jù)庫備份的基本概念(3)文件、文件組備份備份特定的數(shù)據(jù)庫文件或文件組,定期備份事務(wù)日志,恢復(fù)速度較快。對于分割在多個(gè)文件中的大型數(shù)據(jù)庫可以采取該方法。文件或文件組備份和還原操作必須與事務(wù)日志備份一起使用2023/1/31018.1.2數(shù)據(jù)庫備份的基本概念(3)文件、文件組備份1018.1.2數(shù)據(jù)庫備份的基本概念(4)事務(wù)日志備份在兩次完全數(shù)據(jù)庫備份期間進(jìn)行事務(wù)日志備份備份的事務(wù)日志記錄了兩次數(shù)據(jù)庫庫備份之間所有的數(shù)據(jù)庫活動(dòng)記錄?;謴?fù)時(shí),能恢復(fù)所有備份的事務(wù),丟失未提交或提交未執(zhí)行的事務(wù)?;謴?fù)時(shí),首先恢復(fù)最近的完全數(shù)據(jù)庫備份,然后恢復(fù)在該完全數(shù)據(jù)庫備份之后的所有事物日志備份。2023/1/31028.1.2數(shù)據(jù)庫備份的基本概念(4)事務(wù)日志備份2021028.1.2數(shù)據(jù)庫備份的基本概念8.性能考慮備份數(shù)據(jù)庫,對SQLServer性能的影響:備份一個(gè)數(shù)據(jù)庫所需的時(shí)間主要取決于物理設(shè)備的速度,如磁盤設(shè)備的速度通常比磁帶設(shè)備快通常備份到多個(gè)物理設(shè)備比備份到一個(gè)物理設(shè)備要快系統(tǒng)的并發(fā)活動(dòng)對數(shù)據(jù)庫的備份有影響,在備份時(shí),減少并發(fā)活動(dòng)2023/1/31038.1.2數(shù)據(jù)庫備份的基本概念8.性能考慮2022/1038.1.3數(shù)據(jù)庫恢復(fù)概念2023/1/3104數(shù)據(jù)庫恢復(fù)兩個(gè)步驟:1.準(zhǔn)備工作:系統(tǒng)安全性檢查、備份介質(zhì)驗(yàn)證。a、系統(tǒng)安全性檢查:恢復(fù)操作不能進(jìn)行的情況:(1)指定的要恢復(fù)的數(shù)據(jù)庫已存在,備份文件中記錄的數(shù)據(jù)庫與其不同(2)服務(wù)器上數(shù)據(jù)庫文件集與備份中的數(shù)據(jù)庫文件集不一致(3)未提供恢復(fù)數(shù)據(jù)庫所需的所有文件或文件組。8.1.3數(shù)據(jù)庫恢復(fù)概念2022/12/1222數(shù)據(jù)1048.1.3數(shù)據(jù)庫恢復(fù)概念b、備份介質(zhì)驗(yàn)證:備份文件或備份集名及描述信息使用的備份介質(zhì)類型(磁帶或磁盤等)使用的備份方法執(zhí)行備份的日期和時(shí)間備份集的大小數(shù)據(jù)庫文件及日志文件的邏輯和物理文件名備份文件的大小2023/1/31058.1.3數(shù)據(jù)庫恢復(fù)概念b、備份介質(zhì)驗(yàn)證:2022/11058.1.3數(shù)據(jù)庫恢復(fù)概念2.執(zhí)行恢復(fù)數(shù)據(jù)庫的操作使用SQLServer的相關(guān)工具、語句執(zhí)行恢復(fù)操作2023/1/31068.1.3數(shù)據(jù)庫恢復(fù)概念2.執(zhí)行恢復(fù)數(shù)據(jù)庫的操作201068.2備份操作和備份命令進(jìn)行數(shù)據(jù)庫備份創(chuàng)建存儲(chǔ)備份的備份設(shè)備使用企業(yè)管理器;備份向?qū)?;T-SQL命令備份設(shè)備命名備份設(shè)備(邏輯名訪問)臨時(shí)備份設(shè)備(物理名訪問)2023/1/31078.2備份操作和備份命令進(jìn)行數(shù)據(jù)庫備份2022/12/1221078.2.1創(chuàng)建備份設(shè)備2023/1/31081、創(chuàng)建命名備份設(shè)備創(chuàng)建命名備份設(shè)備方法:系統(tǒng)存儲(chǔ)過程、企業(yè)管理器使用磁盤設(shè)備備份,備份設(shè)備是磁盤文件使用磁帶設(shè)備備份,備份設(shè)備是磁帶1)系統(tǒng)存儲(chǔ)過程創(chuàng)建命名備份設(shè)備執(zhí)行系統(tǒng)存儲(chǔ)過程sp_addumpdevice可以在磁盤或磁帶上創(chuàng)建命名備份設(shè)備。8.2.1創(chuàng)建備份設(shè)備2022/12/12261、創(chuàng)建1088.2.1創(chuàng)建備份設(shè)備2023/1/3109系統(tǒng)存儲(chǔ)過程創(chuàng)建命名備份設(shè)備語法格式:sp_addumpdevice[@devtype=]'device_type',[@logicalname=]'logical_name',[@physicalname=]'physical_name‘說明:‘device_type’:介質(zhì)類型,{disk|tape}‘logical_name’:備份設(shè)備邏輯名‘physical_name’:備份設(shè)備物理名8.2.1創(chuàng)建備份設(shè)備2022/12/1227系統(tǒng)存儲(chǔ)過1098.2.1創(chuàng)建備份設(shè)備例8.1在本地磁盤上創(chuàng)建一個(gè)命名備份設(shè)備usemasterexecsp_addumpdevice'disk','mybackupfile','E:\SQLServerProject\backup\mybackupfile.bak'2023/1/31108.2.1創(chuàng)建備份設(shè)備例8.1在本地磁盤上創(chuàng)建一個(gè)1108.2.1創(chuàng)建備份設(shè)備2023/1/31112)使用企業(yè)管理器創(chuàng)建命名備份設(shè)備第1步用管理員帳號(hào)登錄SQLServer;第2步運(yùn)行SQLServer企業(yè)管理器;第3步在控制臺(tái)目錄樹中,展開服務(wù)器組和服務(wù)器,展開“管理”文件夾,在“備份”上單擊鼠標(biāo)右鍵,選擇“新建備份設(shè)備”。8.2.1創(chuàng)建備份設(shè)備2022/12/12292)使用企1118.2.1創(chuàng)建備份設(shè)備2023/1/3112第4步上一步操作完成后,出現(xiàn)如圖所示的對話框,在該對話框中有兩個(gè)文本框,分別輸入備份設(shè)備的邏輯名和完整的物理路徑名。輸入完畢后,單擊“確定”按鈕,則新的備份設(shè)備就創(chuàng)建完成了,如圖8.3所示。8.2.1創(chuàng)建備份設(shè)備2022/12/1230第4步上1128.2.1創(chuàng)建備份設(shè)備2023/1/3113刪除備份設(shè)備:企業(yè)管理器、系統(tǒng)存儲(chǔ)過程企業(yè)管理器:1、展開服務(wù)器組,然后展開服務(wù)器。2、展開“管理”文件夾,然后單擊“備份”。3、在詳細(xì)信息窗格中,右擊要?jiǎng)h除的命名備份設(shè)備。4、單擊“刪除”命令并確認(rèn)刪除。系統(tǒng)存儲(chǔ)過程:usemasterexecsp_dropdevice’mybackupfile’,delfile8.2.1創(chuàng)建備份設(shè)備2022/12/1231刪除備份設(shè)1138.2.1創(chuàng)建備份設(shè)備2023/1/31142.創(chuàng)建臨時(shí)備份設(shè)備
臨時(shí)備份設(shè)備做臨時(shí)性存儲(chǔ),使用物理名引用。創(chuàng)建臨時(shí)文件存儲(chǔ)備份結(jié)果。語法格式:BACKUPDATABASE{database_name|@database_name_var}
TO<backup_file>[,…n]<backup_file>::={{backup_file_name|@backup_file_name_evar}|{DISK|TAPE}={temp_file_name|@temp_file_name_evar}8.2.1創(chuàng)建備份設(shè)備2022/12/12322.創(chuàng)建1148.2.1創(chuàng)建備份設(shè)備【例8.3】在磁盤上創(chuàng)建一個(gè)臨時(shí)備份設(shè)備,它用來備份數(shù)據(jù)庫XSCJ。
USEmasterBACKUPDATABASEXSCJTO‘f:\backup\tmpxscj.bak’2023/1/31158.2.1創(chuàng)建備份設(shè)備【例8.3】在磁盤上創(chuàng)建一個(gè)臨時(shí)備1158.2.1創(chuàng)建備份設(shè)備2023/1/31163.使用多個(gè)備份設(shè)備
SQLServer可以同時(shí)向多個(gè)備份設(shè)備寫入數(shù)據(jù),即進(jìn)行并行的備份。并行備份將需備份的數(shù)據(jù)分別備份在多個(gè)設(shè)備上,這多個(gè)備份設(shè)備構(gòu)成了備份集。多個(gè)設(shè)備備份時(shí)要求:所有設(shè)備必須具有相同的介質(zhì)類型設(shè)備的容量和速度可以不同可以結(jié)合使用臨時(shí)設(shè)備和命名設(shè)備恢復(fù)時(shí),設(shè)備數(shù)目可以與備份時(shí)不同8.2.1創(chuàng)建備份設(shè)備2022/12/12343.使用1168.2.1創(chuàng)建備份設(shè)備2023/1/31178.2.1創(chuàng)建備份設(shè)備2022/12/12351178.2.2備份命令2023/1/3118BACKUPDATABASE{database_name|@database_name_var}
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 腳手架工程施工合同范本
- 模具法規(guī)訂購協(xié)議書
- 放心選購品質(zhì)保
- 保證書撰寫注意事項(xiàng)
- 大型設(shè)備運(yùn)輸合同范本
- 直播主播合同要點(diǎn)講解
- 房產(chǎn)回購合同協(xié)議
- 飼養(yǎng)員與養(yǎng)雞場的合作協(xié)議
- 食品倉儲(chǔ)合同協(xié)議模板
- 家電經(jīng)銷商獨(dú)家合同
- 9數(shù)學(xué)廣角-集合(教案)-2024-2025學(xué)年三年級(jí)上冊數(shù)學(xué)人教版
- 2024年新高考全國1卷第16題說題課件
- 《新視野商務(wù)英語視聽說》第四版-上-U10 Company Performance
- 智慧傳承-黎族船型屋智慧樹知到答案2024年海南師范大學(xué)
- 2024年統(tǒng)編版新教材語文小學(xué)一年級(jí)上冊第七單元檢測題及答案
- 醫(yī)療器械合作意向書(2024版)
- 專升本英語智慧樹知到答案2024年江蘇財(cái)會(huì)職業(yè)學(xué)院
- 《冷機(jī)群控系統(tǒng)》課件
- 多媒體技術(shù)智慧樹知到期末考試答案章節(jié)答案2024年武漢工商學(xué)院
- 2024年高級(jí)調(diào)飲師理論考試題庫(含答案)
- 2024年廣東省公需課《百縣千鎮(zhèn)萬村高質(zhì)量發(fā)展工程與城鄉(xiāng)區(qū)域協(xié)調(diào)發(fā)展》考試答案
評論
0/150
提交評論