sql server課件第3章章節(jié)課件_第1頁(yè)
sql server課件第3章章節(jié)課件_第2頁(yè)
sql server課件第3章章節(jié)課件_第3頁(yè)
sql server課件第3章章節(jié)課件_第4頁(yè)
sql server課件第3章章節(jié)課件_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1第3章SQLServer2019數(shù)據(jù)庫(kù)本章主要介紹以下內(nèi)容:3.1系統(tǒng)數(shù)據(jù)庫(kù)3.2數(shù)據(jù)庫(kù)文件及文件組3.3創(chuàng)建數(shù)據(jù)庫(kù)3.4設(shè)置數(shù)據(jù)庫(kù)選項(xiàng)3.5管理數(shù)據(jù)庫(kù)3.6數(shù)據(jù)庫(kù)快照概述數(shù)據(jù)庫(kù)是為了滿足多個(gè)用戶的多種應(yīng)用的需要,按照一定的數(shù)據(jù)模型在計(jì)算機(jī)系統(tǒng)中組織、存儲(chǔ)和使用的互相聯(lián)系的數(shù)據(jù)集合。如在電子商務(wù)網(wǎng)站中,需要存儲(chǔ)和管理的客戶信息、訂單信息、產(chǎn)品信息等數(shù)據(jù),在業(yè)務(wù)處理過(guò)程中是一組相互關(guān)聯(lián)的數(shù)據(jù),可以保存在一個(gè)數(shù)據(jù)庫(kù)中;而與學(xué)校管理相關(guān)的學(xué)生信息、成績(jī)信息、課程信息等數(shù)據(jù),是另一組相互關(guān)聯(lián)的數(shù)據(jù),可以保存在另一個(gè)數(shù)據(jù)庫(kù)中。在SQLServer中,數(shù)據(jù)庫(kù)所包含的內(nèi)容不僅僅只是數(shù)據(jù),還包括與數(shù)據(jù)管理和操作相關(guān)的各種信息,如:數(shù)據(jù)庫(kù)關(guān)系圖、表、視圖、同義詞、可編程性、ServiceBroker、存儲(chǔ)、安全性等對(duì)象,而通常所說(shuō)的數(shù)據(jù)則保存在其中的一個(gè)數(shù)據(jù)庫(kù)對(duì)象:數(shù)據(jù)表中。由此可見,數(shù)據(jù)庫(kù)這一概念在SQLServer中已成為一個(gè)存儲(chǔ)數(shù)據(jù)庫(kù)對(duì)象的容器。3.1SQLServer2019的系統(tǒng)數(shù)據(jù)庫(kù)在SQLServer2019中數(shù)據(jù)庫(kù)分為兩大類:系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù)。系統(tǒng)數(shù)據(jù)庫(kù)用于保存系統(tǒng)運(yùn)行所需的各種數(shù)據(jù),包括用戶數(shù)據(jù)庫(kù)信息和其他系統(tǒng)性信息。用戶數(shù)據(jù)庫(kù)是由用戶創(chuàng)建的,用于保存某些特定信息的數(shù)據(jù)庫(kù)。系統(tǒng)數(shù)據(jù)庫(kù)由SQLServer系統(tǒng)預(yù)設(shè)。在SQLServer2019安裝完成后,就默認(rèn)創(chuàng)建了五個(gè)系統(tǒng)數(shù)據(jù)庫(kù):master、model、msdb、tempdb和Resource。3.1.1mastermaster數(shù)據(jù)庫(kù)是SQLServer系統(tǒng)中最重要的系統(tǒng)數(shù)據(jù)庫(kù),記錄了SQLServer系統(tǒng)運(yùn)行所需的系統(tǒng)信息。這些系統(tǒng)信息包括:所有登錄名和用戶ID及所屬角色所有的系統(tǒng)配置信息(如數(shù)據(jù)排序規(guī)則、安全規(guī)則等)服務(wù)器中其他系統(tǒng)數(shù)據(jù)和用戶數(shù)據(jù)等信息,如:數(shù)據(jù)庫(kù)的名稱、數(shù)據(jù)庫(kù)文件的物理位置等SQLServer的初始化信息各種特殊的系統(tǒng)表,如存儲(chǔ)緩存使用規(guī)則、可用字符集、可用語(yǔ)言列表、系統(tǒng)錯(cuò)誤和警告信息等的數(shù)據(jù)表。3.1.2modelmodel數(shù)據(jù)庫(kù)是模板數(shù)據(jù)庫(kù)。在SQLServer中創(chuàng)建用戶數(shù)據(jù)庫(kù)時(shí),都會(huì)以model數(shù)據(jù)庫(kù)為模板,創(chuàng)建擁有相同對(duì)象和結(jié)構(gòu)的數(shù)據(jù)庫(kù)。該模板數(shù)據(jù)庫(kù)的結(jié)構(gòu)如圖所示。如果修改model數(shù)據(jù)庫(kù),之后創(chuàng)建的所有數(shù)據(jù)庫(kù)都將繼承這些修改。因此,如果希望新創(chuàng)建的數(shù)據(jù)庫(kù)都有具有相同的特性,如希望在所有新創(chuàng)建的數(shù)據(jù)庫(kù)中都建有某個(gè)相同的數(shù)據(jù)表,那么可以預(yù)先把這個(gè)表建在model數(shù)據(jù)庫(kù)中。3.1.3msdbmsdb數(shù)據(jù)庫(kù)是存儲(chǔ)代理服務(wù)信息的數(shù)據(jù)庫(kù)。

SQLServer代理服務(wù)運(yùn)行所需的作業(yè)信息,如作業(yè)運(yùn)行的時(shí)間、頻率、操作步驟、警報(bào)等信息都保存在msdb數(shù)據(jù)庫(kù)中。3.1.4tempdbtempdb是一個(gè)臨時(shí)數(shù)據(jù)庫(kù)。當(dāng)每次SQLServer服務(wù)重新啟動(dòng)時(shí),會(huì)創(chuàng)建一個(gè)空的tempdb數(shù)據(jù)庫(kù);在SQLServer服務(wù)停止或關(guān)閉時(shí),tempdb數(shù)據(jù)庫(kù)會(huì)丟失。tempdb數(shù)據(jù)庫(kù)用于保存SQLServer運(yùn)行過(guò)程中產(chǎn)生的需要臨時(shí)存儲(chǔ)的數(shù)據(jù)。用戶創(chuàng)建的臨時(shí)表,也會(huì)存放在tempdb中。3.1.5ResourceResource是自SQLServer2005版起新增的一個(gè)系統(tǒng)數(shù)據(jù)庫(kù)。在SQLServer2005版以前,所有可執(zhí)行的系統(tǒng)對(duì)象都存儲(chǔ)在master數(shù)據(jù)庫(kù)中。這些可執(zhí)行系統(tǒng)對(duì)象是指不存儲(chǔ)數(shù)據(jù)的系統(tǒng)對(duì)象,包括:存儲(chǔ)過(guò)程、視圖、函數(shù)、觸發(fā)器等。如在SQLServer2000版的master數(shù)據(jù)庫(kù)中,系統(tǒng)對(duì)象就有約1200個(gè)。在SQLServer2005中,這類對(duì)象只有約70個(gè),原因是上述很多對(duì)象已被存放到了Resource數(shù)據(jù)庫(kù)中。3.2數(shù)據(jù)庫(kù)文件及文件組3.2.1SQLServer數(shù)據(jù)存儲(chǔ)原理1、數(shù)據(jù)存取過(guò)程SQLServer為提高數(shù)據(jù)存儲(chǔ)的可靠性,采用了優(yōu)先寫日志的方式。即在SQLServer中存儲(chǔ)數(shù)據(jù)的文件除了數(shù)據(jù)文件外,增加了事務(wù)日志文件。數(shù)據(jù)文件用于保存數(shù)據(jù),日志文件用于保存各種操作事務(wù),如修改、新增數(shù)據(jù)的事務(wù)。3.2數(shù)據(jù)庫(kù)文件及文件組3.2.1SQLServer數(shù)據(jù)存儲(chǔ)原理2、存儲(chǔ)空間分配SQLServer在存儲(chǔ)空間分配中使用了較小的數(shù)據(jù)存儲(chǔ)單元,即頁(yè)和盤區(qū)。頁(yè)是SQLServer數(shù)據(jù)文件存儲(chǔ)的最小單位,頁(yè)的大小為8192字節(jié),即8KB。其中96Byte用于保存頭部信息,用于記錄此頁(yè)的相關(guān)信息,另外在頁(yè)尾存儲(chǔ)用于記錄數(shù)據(jù)行位置的行偏移和其他一些信息。因此,一頁(yè)實(shí)際可保存的數(shù)據(jù)量為8060Byte。根據(jù)頁(yè)保存數(shù)據(jù)類型的不同,頁(yè)可以劃分成為:數(shù)據(jù)頁(yè)、全局分配圖頁(yè)、索引頁(yè)、索引分配圖頁(yè)、頁(yè)面自由空間頁(yè)和文本/圖像頁(yè)。盤區(qū)是連續(xù)8個(gè)頁(yè)的集合,盤區(qū)根據(jù)實(shí)際保存數(shù)據(jù)的不同,可以劃分成為兩類:?jiǎn)我槐P區(qū)(也稱統(tǒng)一盤區(qū))和混合盤區(qū)(也稱混合區(qū))。單一盤區(qū)中所存放的數(shù)據(jù)為一個(gè)數(shù)據(jù)對(duì)象所有,如某盤區(qū)8個(gè)頁(yè),存放的都是“數(shù)據(jù)表1”的數(shù)據(jù);混合盤區(qū)存放的數(shù)據(jù)來(lái)自多個(gè)對(duì)象,如有“數(shù)據(jù)表1”和“數(shù)據(jù)表2”的數(shù)據(jù)等。當(dāng)混合區(qū)中的表或索引的大小增長(zhǎng)到8頁(yè)時(shí),系統(tǒng)會(huì)將表或索引存放到專門的單一盤區(qū)中,以提高訪問(wèn)的效率。10存儲(chǔ)空間分配日志文件:.ldf數(shù)據(jù)文件:

.mdfor.ndf區(qū):8個(gè)連續(xù)的8KB頁(yè)頁(yè):8KB2025/6/10103.2.2SQLServer數(shù)據(jù)庫(kù)文件SQLServer采用兩類文件來(lái)保存數(shù)據(jù):數(shù)據(jù)文件和事務(wù)日志文件。數(shù)據(jù)文件存儲(chǔ)數(shù)據(jù),事務(wù)日志文件記錄各種對(duì)數(shù)據(jù)庫(kù)的操作;數(shù)據(jù)文件還可往下分為兩類:主數(shù)據(jù)文件和輔助數(shù)據(jù)文件。1、主數(shù)據(jù)文件主數(shù)據(jù)文件(PrimaryDataFile,擴(kuò)展名為MDF)是SQLServer數(shù)據(jù)庫(kù)中最重要的文件,每個(gè)SQLServer數(shù)據(jù)庫(kù)有且僅有一個(gè)主數(shù)據(jù)文件。在主數(shù)據(jù)文件中可以保存SQLServer數(shù)據(jù)庫(kù)中的所有數(shù)據(jù),包括用戶對(duì)象和系統(tǒng)對(duì)象(如系統(tǒng)表)。2、輔助數(shù)據(jù)文件輔助數(shù)據(jù)文件(SecondaryDataFile,擴(kuò)展名為NDF),也稱為次數(shù)據(jù)文件,在SQLServer中用于保存用戶數(shù)據(jù),比如用戶數(shù)據(jù)表、用戶視圖等;但是不能保存系統(tǒng)數(shù)據(jù)。與主數(shù)據(jù)文件在SQLServer數(shù)據(jù)庫(kù)中有且只能有一個(gè)不同,輔助數(shù)據(jù)文件在一個(gè)數(shù)據(jù)庫(kù)中可以有多個(gè),一個(gè)數(shù)據(jù)庫(kù)最多可以有32767個(gè)輔助數(shù)據(jù)文件。3.2.2SQLServer數(shù)據(jù)庫(kù)文件3、事務(wù)日志文件事務(wù)日志文件(LogFile,擴(kuò)展名為:LDF),是SQLServer數(shù)據(jù)庫(kù)中用于記錄操作事務(wù)的文件。在SQLServer數(shù)據(jù)庫(kù)中,事務(wù)日志文件也是不可缺少的數(shù)據(jù)庫(kù)文件。但與主數(shù)據(jù)文件在每個(gè)數(shù)據(jù)庫(kù)中只能有一個(gè)不同,事務(wù)日志文件可以有多個(gè),最多可達(dá)32767個(gè)。為提高系統(tǒng)的可靠性和安全性,可以將事務(wù)日志文件與主數(shù)據(jù)文件分別存放在不同分區(qū),如果有多個(gè)硬盤,建議存放在不同硬盤中。3.2.3文件組在數(shù)據(jù)文件或事務(wù)日志文件數(shù)量較多的場(chǎng)合,可以通過(guò)文件組對(duì)數(shù)據(jù)文件和事務(wù)日志文件進(jìn)行分組管理。文件組就是文件的邏輯分組。在SQLServer2019中文件組可以劃分為兩大類:主文件組(PrimaryFileGroup)、次文件組(SecondaryFileGroup)。還有一種特殊的文件組是默認(rèn)文件組(DefaultFileGroup)。主文件組是每個(gè)數(shù)據(jù)庫(kù)默認(rèn)提供的文件組,該文件組不能被刪除。主數(shù)據(jù)文件只能置于主文件組中。次文件組是由用戶創(chuàng)建的文件組,在一個(gè)數(shù)據(jù)庫(kù)中用戶可以根據(jù)管理需要?jiǎng)?chuàng)建多個(gè)次文件組。次文件組也被稱為用戶定義文件組(User-definedFileGroup)默認(rèn)文件組是在新增數(shù)據(jù)庫(kù)文件時(shí),如果未明確指定該數(shù)據(jù)文件所屬的文件組,那么該數(shù)據(jù)文件就會(huì)被放置在默認(rèn)文件組中。系統(tǒng)缺省的默認(rèn)文件組對(duì)應(yīng)主文件組,但可以修改,如可以將某個(gè)用戶文件組設(shè)置為默認(rèn)文件組。14AdventureWorks數(shù)據(jù)庫(kù)文件組默認(rèn)文件組OrderHistoryGroupE:\C:\D:\AdventureWorks_

Log.IdfAdventureWorks_

Data.mdfOrdHist2.ndfOrdHist1.ndfsys...

sys...

sysusers

sysobjects

...

SalesOrderHeader

Customer

Product

OrdHistYear2

OrdHistYear1

3.3創(chuàng)建數(shù)據(jù)庫(kù)3.3.1使用SSMS創(chuàng)建數(shù)據(jù)庫(kù)DEMO3.3創(chuàng)建數(shù)據(jù)庫(kù)3.3.2使用TSQL語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù)

創(chuàng)建數(shù)據(jù)庫(kù)的TSQL語(yǔ)句為“CREATEDATABASE”,該語(yǔ)句的基本語(yǔ)法如下:CREATEDATABASEdatabase_name

[ON[PRIMARY][<filespec>[,...n][,<filegroup>[,...n]][LOGON{<filespec>[,...n]}]][COLLATEcollation_name][WITH<external_access_option>]][;]<filespec>::={(NAME=logical_file_name,FILENAME={'os_file_name'|'filestream_path'}[,SIZE=size[KB|MB|GB|TB]][,MAXSIZE={max_size[KB|MB|GB|TB]|UNLIMITED}][,FILEGROWTH=growth_increment[KB|MB|GB|TB|%]])[,...n]}<filegroup>::={FILEGROUPfilegroup_name[CONTAINSFILESTREAM][DEFAULT]<filespec>[,...n]}主要關(guān)鍵詞含義如下:database_name,指定新創(chuàng)建的數(shù)據(jù)庫(kù)的名稱,可長(zhǎng)達(dá)128個(gè)字符。PRIMARY,指定主數(shù)據(jù)文件的名稱及路徑。LOGON,指定事務(wù)日志文件的名稱及路徑。NAME,指定數(shù)據(jù)庫(kù)文件的邏輯名稱,是數(shù)據(jù)庫(kù)文件在SQLServer中的標(biāo)識(shí)符,與圖3-4數(shù)據(jù)庫(kù)文件列表中的“邏輯名稱”對(duì)應(yīng)。FILENAME,指定數(shù)據(jù)庫(kù)文件在操作系統(tǒng)中的文件名稱和路徑,該操作系統(tǒng)文件名和NAME的邏輯名稱一一對(duì)應(yīng)。SIZE,指定數(shù)據(jù)庫(kù)文件的初始存儲(chǔ)空間大小。MAXSIZE,指定數(shù)據(jù)庫(kù)文件的最大可用存儲(chǔ)空間大小。FILEGROWTH,指定文件每次增加容量的大小,當(dāng)指定數(shù)據(jù)為0時(shí),表示文件不增長(zhǎng)。例如:CREATEDATABASECateringNONPRIMARY(NAME=CateringN_Data,filename='c:\data\CateringN_Data.mdf',Size=3MB,maxsize=20MB,fileGrowth=1MB),(NAME=CateringN_Data_1,filename='C:\data\CateringN_Data1.ndf',size=1MB,maxsize=20MB,filegrowth=2MB),(NAME=CateringN_Data_2,filename='C:\data\CateringN_Data2.ndf',size=2MB,maxsize=20MB,filegrowth=2MB)Logon(NAME=CateringN_Log,filename='c:\data\CateringN_Log.ldf',size=1MB,maxsize=20MB,filegrowth=10%)Go3.4設(shè)置數(shù)據(jù)庫(kù)選項(xiàng)通過(guò)對(duì)數(shù)據(jù)庫(kù)配置選項(xiàng),可以定制數(shù)據(jù)庫(kù)特性。在SQLServer2019提供了50多個(gè)數(shù)據(jù)庫(kù)選項(xiàng),包括:排序規(guī)則、恢復(fù)模式、兼容級(jí)別、頁(yè)驗(yàn)證、默認(rèn)游標(biāo)、ANSINULL默認(rèn)值、ANSI_NULLS已啟用、數(shù)據(jù)庫(kù)狀態(tài)等。通過(guò)SSMS配置數(shù)據(jù)庫(kù)選項(xiàng)3.4.1數(shù)據(jù)庫(kù)選項(xiàng)及設(shè)置3.4設(shè)置數(shù)據(jù)庫(kù)選項(xiàng)通過(guò)TSQL配置數(shù)據(jù)庫(kù)選項(xiàng)配置數(shù)據(jù)庫(kù)選項(xiàng)的TSQL語(yǔ)句與數(shù)據(jù)庫(kù)修改的語(yǔ)句相同,都是“ALTERDATABASE”。以下代碼修改數(shù)據(jù)庫(kù)“CateringN”的數(shù)據(jù)恢復(fù)模式為“SIMPLE”、并將自動(dòng)收縮設(shè)置為“ON”。USEmasterGOALTERDATABASECateringNSETRECOVERYSIMPLE,AUTO_SHRINKONGO3.4.2查看數(shù)據(jù)庫(kù)信息1、應(yīng)用系統(tǒng)視圖、函數(shù)查看數(shù)據(jù)庫(kù)信息系統(tǒng)視圖sys.databases可以查看數(shù)據(jù)庫(kù)的基本信息,包括各種選項(xiàng)的設(shè)置值。sys.database_files視圖,可以查看數(shù)據(jù)庫(kù)的文件信息。sys.filegroups視圖,可以查詢數(shù)據(jù)庫(kù)文件組信息。DATABASEPROPERTYEX函數(shù)可以查看數(shù)據(jù)庫(kù)的選項(xiàng)的值。select*fromsys.databasesGOselect*fromsys.database_filesGOselect*fromsys.filegroupsGOselectDATABASEPROPERTYEX('CateringMgn','Status')GO3.4.2查看數(shù)據(jù)庫(kù)信息2、應(yīng)用系統(tǒng)存儲(chǔ)過(guò)程查看數(shù)據(jù)庫(kù)信息系統(tǒng)存儲(chǔ)過(guò)程sp_spaceused可以查看數(shù)據(jù)庫(kù)空間的使用情況。系統(tǒng)存儲(chǔ)過(guò)程Sp_helpdb可以查看數(shù)據(jù)庫(kù)的信息。USENetSaleGOsp_spaceusedGOsp_helpdbGOsp_helpdb

NetSaleGO

3.5管理數(shù)據(jù)庫(kù)3.5.1擴(kuò)大數(shù)據(jù)庫(kù)空間1、手工擴(kuò)大數(shù)據(jù)庫(kù)文件大小USEmasterGOALTERDATABASENetSale

ModifyFile(NAME=NetSale,size=15MB)2、設(shè)置數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng)方式在“數(shù)據(jù)庫(kù)屬性”對(duì)話框中,在“數(shù)據(jù)庫(kù)文件列表”中,選擇要調(diào)整自動(dòng)增長(zhǎng)方式的數(shù)據(jù)文件,單擊“自動(dòng)增長(zhǎng)”欄后的按鈕。在“更改自動(dòng)增長(zhǎng)設(shè)置”對(duì)話框中,選中“啟用自動(dòng)增長(zhǎng)”,設(shè)置文件增長(zhǎng)方式和最大文件大小。3.5管理數(shù)據(jù)庫(kù)3.5.2收縮數(shù)據(jù)庫(kù)空間

1、收縮整個(gè)數(shù)據(jù)庫(kù)在“對(duì)象資源管理器”窗口中,展開服務(wù)器、數(shù)據(jù)庫(kù)節(jié)點(diǎn)。右擊待收縮的數(shù)據(jù)庫(kù),在右鍵菜單中選擇“任務(wù)”→“收縮”→“數(shù)據(jù)庫(kù)”。在“收縮數(shù)據(jù)庫(kù)”對(duì)話框,選中“在釋放未使用的空間前重新組織文件,選中此項(xiàng)可能影響性能”,設(shè)置其下的“收縮后文件中的最大可用空間”,如為“50%”,即將數(shù)據(jù)庫(kù)的可用空間從原先的“72%”收縮到“50%”。DBCCSHRINKDATABASE(‘NetSale',20%)數(shù)據(jù)庫(kù)控制臺(tái)命令DatabaseConsoleCommand3.5管理數(shù)據(jù)庫(kù)3.5.2收縮數(shù)據(jù)庫(kù)空間

2、收縮指定的數(shù)據(jù)文件DBCCSHRINKFILE({file_name|file_id}{[,EMPTYFILE]|[[,target_size][,{NOTRUNCATE|TRUNCATEONLY}]]})[WITHNO_INFOMSGS]3.5管理數(shù)據(jù)庫(kù)3.5.3管理數(shù)據(jù)庫(kù)文件

1、增加數(shù)據(jù)庫(kù)文件ALTERDATABASENetSaleADDFILE(

NAME=NetSale_LOG_2,FILENAME='C:\data\NetSale_LOG_2.log',SIZE=5MB,MAXSIZE=100MB,FILEGROWTH=5MB)3.5管理數(shù)據(jù)庫(kù)3.5.3管理數(shù)據(jù)庫(kù)文件2、刪除數(shù)據(jù)庫(kù)文件ALTERDATABASENetSaleREMOVEFILENetSale_LOG_23.5.4管理文件組SSMS管理文件組TSQL管理文件組ALTERDATABASENetSaleADDFILEGROUPNewUserFileGroup1GOALTERDATABASENetSaleADDFILE(NAME=NetSale_data4,FILENAME='C:\data\NetSale_data4.ndf',SIZE=5MB,MAXSIZE=100MB,FILEGROWTH=5MB)TOFILEGROUPNewUserFileGroup1GOALTERDATABASENetSaleMODIFYFILEGROUPNewUserFileGroupDEFAULTGO3.5.5刪除數(shù)據(jù)庫(kù)在SQLServerManagementStudio刪除數(shù)據(jù)庫(kù)的操作步驟如下1、在“對(duì)象資源管理器”窗口中,展開服務(wù)器、數(shù)據(jù)庫(kù)節(jié)點(diǎn)。右擊待刪除的數(shù)據(jù)庫(kù),在右鍵菜單中選擇“刪除”。2、在“刪除對(duì)象”對(duì)話框中,可以選中“刪除數(shù)據(jù)庫(kù)備份和還原歷史記錄信息”,表示同時(shí)從系統(tǒng)數(shù)據(jù)庫(kù)msdb中刪除該數(shù)據(jù)庫(kù)的備份和還原的歷史記錄。選中“關(guān)閉現(xiàn)有連接”,表示斷開刪除前已建立的用戶與該數(shù)據(jù)庫(kù)的連接。3、單擊“確定”按鈕,該數(shù)據(jù)庫(kù)相關(guān)的數(shù)據(jù)文件和事務(wù)日志文件都會(huì)從系統(tǒng)中被刪除。刪除數(shù)據(jù)庫(kù)的TSQL語(yǔ)句為“DROPDATABASE”,語(yǔ)法如下:DROPDATABASE{database_name|atabase_snapshot_name}[,...n][;]例如DROPDATABASECateringN,CateringN1,CateringN23.5.6分離數(shù)據(jù)庫(kù)在SQLServerManagementStudio中分離數(shù)據(jù)庫(kù)的操作如下:1、在“對(duì)象資源管理器”窗口中,展開服務(wù)器、數(shù)據(jù)庫(kù)節(jié)點(diǎn)。右擊要分離的數(shù)據(jù)庫(kù),在右鍵菜單中選擇“任務(wù)”→“分離”。2、在“分離數(shù)據(jù)庫(kù)”對(duì)話框中,可以看到“消息欄”當(dāng)前有一個(gè)“活動(dòng)連接”,即說(shuō)明已有用戶連接到該數(shù)據(jù)。如果分離數(shù)據(jù)庫(kù),需要選中“刪除連接”,此選項(xiàng)表示在分離時(shí)需要先把當(dāng)前的“連接”刪除。選中“更新統(tǒng)計(jì)”表示當(dāng)SQLServer在分離數(shù)據(jù)庫(kù)前更新狀態(tài)信息,如索引等,這樣不會(huì)丟失以前的全文索引等信息。3、單擊“確定”按鈕,分離數(shù)據(jù)庫(kù)。3.5.6分離數(shù)據(jù)庫(kù)分離數(shù)據(jù)庫(kù)的TSQL語(yǔ)句,需要調(diào)用系統(tǒng)存儲(chǔ)過(guò)程“sp_detach_db”sp_detach_db[@dbname=]'database_name'[,[@skipchecks=]'skipchecks'][,[@keepfulltextindexfile=]'KeepFulltextIndexFile']例如usemasterGosp_detach_db'CateringN'3.5.7附加數(shù)據(jù)庫(kù)在SQLServerManagementStudio中附加數(shù)據(jù)庫(kù)的操作步驟如下:1、在“對(duì)象資源管理器”窗口中,右擊“數(shù)據(jù)庫(kù)”節(jié)點(diǎn),在右鍵菜單中選擇“附加”。2、在“附加數(shù)據(jù)庫(kù)”對(duì)話框中,可以看到“要附加的數(shù)據(jù)庫(kù)”和“數(shù)據(jù)庫(kù)詳細(xì)信息”列表都為空,需要添加數(shù)據(jù)庫(kù)文件。單擊“添加”按鈕。3、在“定位數(shù)據(jù)庫(kù)文件”對(duì)話框,找到并添加所要附加數(shù)據(jù)庫(kù)的主數(shù)據(jù)文件(MDF文件),然后單擊“確定”,返回到前一對(duì)話框中。4、此時(shí),在“附加數(shù)據(jù)庫(kù)”對(duì)話框中會(huì)根據(jù)添加的主數(shù)據(jù)文件,更新“要附加的數(shù)據(jù)庫(kù)”列表和“數(shù)據(jù)庫(kù)詳細(xì)信息”列表,如圖3-21所示。5、確認(rèn)信息無(wú)誤,單擊“確定”,系統(tǒng)執(zhí)行數(shù)據(jù)庫(kù)附加操作。附加完成后,該數(shù)據(jù)庫(kù)會(huì)出現(xiàn)在“對(duì)象資源管理器”的數(shù)據(jù)庫(kù)節(jié)點(diǎn)下,如果未看到該數(shù)據(jù)庫(kù),可單擊工具欄“刷新”按鈕,刷新數(shù)據(jù)庫(kù)節(jié)點(diǎn)。3.5.7附加數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)附加操作還可以通過(guò)系統(tǒng)存儲(chǔ)過(guò)程“sp_attach_db”和“CREATEDATABASE…FORATTACH”

來(lái)實(shí)現(xiàn),TSQL的語(yǔ)法如下:sp_attach_db[@dbname=]'dbname',[@filename1=]'filename_n'[,...16]例如usemasterGosp_attach_db@dbname=N'CateringN',@filename1=N'C:\data\CateringN_Data.mdf',@filename2=N'C:\data\CateringN_Data1.ndf',@filename3=N'C:\data\CateringN_Data2.ndf',@filename4=N'C:\data\CateringN_Log.ldf';usemasterGOCREATEDATABASESchoolON(FILENAME=‘d:\school.mdf'),(FILENAME=‘E:\school_Log.ldf')FORATTACH;GO3.5.8部分包含數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)所包含的往往只是用戶的數(shù)據(jù),而很多與數(shù)據(jù)庫(kù)相關(guān)的登錄名、元數(shù)據(jù)等內(nèi)容一般保存在系統(tǒng)數(shù)據(jù)庫(kù)中,這些數(shù)據(jù)無(wú)法通過(guò)用戶數(shù)據(jù)庫(kù)的分離附加或備份還原直接遷移過(guò)去,還需要其他額外工作來(lái)完成。部分包含數(shù)據(jù)庫(kù)(ContainedDatabase)是SQLServer用于解決這一問(wèn)題的特性,其主要作用是提高數(shù)據(jù)庫(kù)在多個(gè)數(shù)據(jù)庫(kù)引擎服務(wù)實(shí)例中遷移時(shí)的便捷性。通過(guò)將用戶數(shù)據(jù)庫(kù)啟用部分包含特性,可以將數(shù)據(jù)庫(kù)用戶等數(shù)據(jù)保存在用戶數(shù)據(jù)庫(kù)中,從而可以最大限度遷移數(shù)據(jù)庫(kù)的完整信息。同時(shí),部分包含數(shù)據(jù)庫(kù)還可以與AlwaysOn結(jié)合,提高系統(tǒng)管理和維護(hù)的可靠性與高可用性。3.5.8部分包含數(shù)據(jù)庫(kù)1.啟用部分包含數(shù)據(jù)庫(kù)部分包含數(shù)據(jù)庫(kù)是服務(wù)器級(jí)的選項(xiàng),要啟用此特性,需要在服務(wù)器上啟用此選項(xiàng)。啟用部分包含數(shù)據(jù)庫(kù),可以通過(guò)SQLServerManagementStudio和T-SQL來(lái)實(shí)現(xiàn)。sp_configure'showadvancedoptions'1,GOsp_configure'containeddatabaseauthentication',1;GORECONFIGURE;GO3.5.8部分包含數(shù)據(jù)庫(kù)2.數(shù)據(jù)庫(kù)設(shè)置數(shù)據(jù)庫(kù)要開啟部分包含的特性,需要在數(shù)據(jù)庫(kù)選項(xiàng)中做對(duì)應(yīng)設(shè)置。設(shè)置數(shù)據(jù)庫(kù)的此項(xiàng)選項(xiàng)也可以通過(guò)SQLServerManagementStudio完成。操作步驟如下:(1)在“對(duì)象資源管理器”窗口中,展開服務(wù)器,選

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論