




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
李政偉數(shù)據(jù)庫(kù)應(yīng)用李政偉第3章
數(shù)據(jù)庫(kù)的創(chuàng)建與管理3.1SQLServer數(shù)據(jù)庫(kù)概述3.2創(chuàng)建數(shù)據(jù)庫(kù)3.3查看和設(shè)置數(shù)據(jù)庫(kù)選項(xiàng)3.4修改數(shù)據(jù)庫(kù)3.5刪除數(shù)據(jù)庫(kù)3.6分離和附加數(shù)據(jù)庫(kù)3.7復(fù)制數(shù)據(jù)庫(kù)2/39數(shù)據(jù)庫(kù)(Database,DB):將數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存,具有較小的冗余度,較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可被多用戶、多應(yīng)用程序共享的數(shù)據(jù)集合。(1)在計(jì)算機(jī)的存儲(chǔ)設(shè)備上存放的,屬于計(jì)算機(jī)領(lǐng)域的一個(gè)術(shù)語(yǔ)。(2)一個(gè)數(shù)據(jù)集合。(3)這個(gè)數(shù)據(jù)集合是有結(jié)構(gòu)的,這是和文件系統(tǒng)相比最大的特點(diǎn)之一。(4)這個(gè)數(shù)據(jù)集合是指相關(guān)聯(lián)的數(shù)據(jù)集合。(5)這個(gè)數(shù)據(jù)集合是合理存放的。3.1SQLServer數(shù)據(jù)庫(kù)概述3.1SQLServer數(shù)據(jù)庫(kù)概述兩大類:系統(tǒng)數(shù)據(jù)庫(kù):存放維護(hù)系統(tǒng)正常運(yùn)行的信息。用戶數(shù)據(jù)庫(kù):存放用戶自己的信息。4/39系統(tǒng)數(shù)據(jù)庫(kù)Master:最重要數(shù)據(jù)庫(kù),用于記錄所有系統(tǒng)級(jí)信息。包括所有的登錄信息、系統(tǒng)設(shè)置信息、初始化信息和其他系統(tǒng)數(shù)據(jù)庫(kù)及用戶數(shù)據(jù)庫(kù)的相關(guān)信息。如果master數(shù)據(jù)庫(kù)不可用,則SQLServer無(wú)法啟動(dòng)。Model:用作所有數(shù)據(jù)庫(kù)的模板。當(dāng)用戶創(chuàng)建數(shù)據(jù)庫(kù)時(shí),系統(tǒng)自動(dòng)將model數(shù)據(jù)庫(kù)中的內(nèi)容復(fù)制到新建數(shù)據(jù)庫(kù)中。當(dāng)發(fā)出CREATEDATABASE(創(chuàng)建數(shù)據(jù)庫(kù))時(shí),將通過復(fù)制model數(shù)據(jù)庫(kù)的內(nèi)容來(lái)創(chuàng)建數(shù)據(jù)庫(kù)的第一部分,然后用空頁(yè)填充新數(shù)據(jù)庫(kù)的剩余部分。Msdb:保存關(guān)于報(bào)警、作業(yè)、操作員等信息。5/39系統(tǒng)數(shù)據(jù)庫(kù)Tempdb:臨時(shí)數(shù)據(jù)庫(kù),用于存儲(chǔ)用戶創(chuàng)建的臨時(shí)表、用戶聲明的變量以及用戶定義的游標(biāo)數(shù)據(jù)等。Tempdb數(shù)據(jù)庫(kù)由整個(gè)系統(tǒng)的所有數(shù)據(jù)庫(kù)使用,不管用戶使用哪個(gè)數(shù)據(jù)庫(kù),他們所建立的所有臨時(shí)表和存儲(chǔ)過程都存儲(chǔ)在tempdb上。SQLServer每次啟動(dòng)時(shí),tempdb數(shù)據(jù)庫(kù)被重新建立。當(dāng)用戶與SQLServer斷開連接時(shí),其臨時(shí)表和存儲(chǔ)過程自動(dòng)被刪除。Resource:一個(gè)只讀數(shù)據(jù)庫(kù),包含SQLServer包括的系統(tǒng)對(duì)象。系統(tǒng)對(duì)象在物理上保留在Resource數(shù)據(jù)庫(kù)中,但在邏輯上顯示在每個(gè)數(shù)據(jù)庫(kù)的sys架構(gòu)中。SQLSERVER樣本數(shù)據(jù)庫(kù)AdventureWorks、AdventureWorksDW等示例數(shù)據(jù)庫(kù),示例數(shù)據(jù)基于一個(gè)虛擬的公司AdventureWorksCycles,這是一個(gè)大型的跨國(guó)制造公司,生產(chǎn)金屬和復(fù)合材料自行車,產(chǎn)品遠(yuǎn)銷北美、歐洲和亞洲市場(chǎng)。AdventureWorks中的某些表的結(jié)構(gòu)和內(nèi)容與SQLServer2000中Pubs和Northwind數(shù)據(jù)庫(kù)的表結(jié)構(gòu)和內(nèi)容相似,對(duì)照聯(lián)機(jī)幫助上的對(duì)應(yīng)關(guān)系可以很方便的將SQLServer2000中使用Northwind和Pubs數(shù)據(jù)庫(kù)的相關(guān)查詢轉(zhuǎn)換到AdventureWorks中來(lái)。3.1.2SQLServer數(shù)據(jù)庫(kù)的組成SQLServer將數(shù)據(jù)庫(kù)映射為一組操作系統(tǒng)文件,這些文件被劃分為兩類:數(shù)據(jù)文件和日志文件。數(shù)據(jù)文件包含數(shù)據(jù)和對(duì)象,例如表、索引、存儲(chǔ)過程和視圖等。日志文件包含恢復(fù)數(shù)據(jù)庫(kù)中的所有事務(wù)需要的信息。數(shù)據(jù)和日志信息不混合在同一個(gè)文件中,一個(gè)文件只由一個(gè)數(shù)據(jù)庫(kù)使用。8/391.數(shù)據(jù)文件用于存放數(shù)據(jù)庫(kù)數(shù)據(jù)。數(shù)據(jù)文件又分為:主要數(shù)據(jù)文件:推薦擴(kuò)展名是.mdf。包含數(shù)據(jù)庫(kù)的系統(tǒng)信息,也可存放用戶數(shù)據(jù)。每個(gè)數(shù)據(jù)庫(kù)都有且只能有一個(gè)主要數(shù)據(jù)文件。是為數(shù)據(jù)庫(kù)創(chuàng)建的第一個(gè)數(shù)據(jù)文件。不能小于3MB。次要數(shù)據(jù)文件:推薦擴(kuò)展名是.ndf。一個(gè)數(shù)據(jù)庫(kù)可以包含0~n個(gè)次要數(shù)據(jù)文件??膳c主要數(shù)據(jù)文件存放在不同地方。所有文件的使用對(duì)用戶也是透明的。9/392.日志文件推薦擴(kuò)展名為.ldf。用于存放恢復(fù)數(shù)據(jù)庫(kù)的所有日志信息。每個(gè)數(shù)據(jù)庫(kù)有1~n個(gè)日志文件。10/393.關(guān)于數(shù)據(jù)的存儲(chǔ)分配數(shù)據(jù)庫(kù)中數(shù)據(jù)的存儲(chǔ)分配單位是數(shù)據(jù)頁(yè)。一頁(yè)是一塊8KB(其中用8060個(gè)字節(jié)存放數(shù)據(jù),另外132個(gè)字節(jié)存放系統(tǒng)信息)的連續(xù)磁盤空間。頁(yè)是存儲(chǔ)數(shù)據(jù)的最小空間分配單位。不允許表中的一行數(shù)據(jù)存儲(chǔ)在不同頁(yè)上(varchar(max)、nvarchar(max)、text、ntext、varbinary(max)和image數(shù)據(jù)類型除外),即行不能跨頁(yè)存儲(chǔ)。日志文件不包含頁(yè),而是包含一系列日志記錄。11/39示例假設(shè)某數(shù)據(jù)表有10000行數(shù)據(jù),每行3000字節(jié),估算其需要的空間:
(10000/2)*8KB=40MB其中,每頁(yè)中有6000字節(jié)用于存儲(chǔ)數(shù)據(jù),有2060個(gè)字節(jié)是浪費(fèi)的。12/393.1.3數(shù)據(jù)庫(kù)文件組為便于分配和管理數(shù)據(jù)文件,將相關(guān)的數(shù)據(jù)文件組織起來(lái),放置到一個(gè)文件組中。文件組的概念類似于操作系統(tǒng)中的文件夾。在一個(gè)數(shù)據(jù)庫(kù)中可以定義多個(gè)文件組,然后將數(shù)據(jù)文件放置到不同的文件組中。SQLServer有兩種類型的文件組:主文件組用戶定義的文件組13/39主文件組(PRIMARY)系統(tǒng)預(yù)先定義好的一個(gè)文件組,包含主要數(shù)據(jù)文件和任何沒有明確分配給其他文件組的其他文件。系統(tǒng)表的所有頁(yè)均分配在主文件組中。14/39用戶定義文件組用戶可以創(chuàng)建自己的文件組,以將相關(guān)數(shù)據(jù)文件組織起來(lái),便于管理和數(shù)據(jù)分配。通過在CREATEDATABASE或ALTERDATABASE語(yǔ)句中使用FILEGROUP關(guān)鍵字定義。說(shuō)明:日志文件不包括在文件組內(nèi),一個(gè)文件不可以是多個(gè)文件組的成員。文件組用途:例如,可以分別在三個(gè)磁盤驅(qū)動(dòng)器上創(chuàng)建三個(gè)文件Data1.ndf、Data2.ndf和Data3.ndf,然后將它們分配給文件組fgroup1。然后,可以明確地在文件組fgroup1上創(chuàng)建一個(gè)表。對(duì)表中數(shù)據(jù)的查詢將分散到三個(gè)磁盤上,從而提高了性能。15/39使用文件和文件組的一般建議使用文件組將對(duì)象放置在特定的物理磁盤上。為性能最大化,應(yīng)在盡可能多的不同可用物理磁盤上創(chuàng)建文件和文件組,將爭(zhēng)奪空間最激烈的對(duì)象置于不同的文件組中。將同一連接查詢中使用的不同表置于不同文件組中。將最經(jīng)常訪問的表和屬于這些表的非聚集索引置于不同的文件組中。不要將事務(wù)日志文件和其他文件或文件組置于同一磁盤上。3.1.4數(shù)據(jù)庫(kù)文件的屬性文件名及其位置:每個(gè)文件都有一個(gè)邏輯文件名和物理文件名及物理存儲(chǔ)位置初始大?。嚎梢灾付總€(gè)文件的初始大小。增長(zhǎng)方式:可以指定文件是否自動(dòng)增長(zhǎng)最大大?。嚎梢灾付ㄎ募鲩L(zhǎng)的最大空間限制17/393.2創(chuàng)建數(shù)據(jù)庫(kù)創(chuàng)建用戶數(shù)據(jù)庫(kù)前,須先確定數(shù)據(jù)庫(kù)名、所有者、文件名、數(shù)據(jù)文件大小、數(shù)據(jù)庫(kù)字符集、是否自動(dòng)增長(zhǎng)以及如何自動(dòng)增長(zhǎng)等信息。在一個(gè)SQLServer實(shí)例中,最多可創(chuàng)建32767個(gè)數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)名稱必須滿足標(biāo)識(shí)符規(guī)則。在命名數(shù)據(jù)庫(kù)時(shí),一定要保證數(shù)據(jù)庫(kù)名稱簡(jiǎn)短并有一定的含義。3.2.1用圖形化方法創(chuàng)建數(shù)據(jù)庫(kù)3.2.2用T-SQL語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù)18/393.2.1用圖形化方法創(chuàng)建數(shù)據(jù)庫(kù)19/393.2.2用T-SQL語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù)CREATEDATABASEdatabase_name
[ON[PRIMARY][<filespec>[,...n][LOGON{<filespec>[,...n]}]]]
<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]}20/39示例1(P66)例1.創(chuàng)建一個(gè)名為“mytest”的數(shù)據(jù)庫(kù),其他選項(xiàng)均采用默認(rèn)設(shè)置。 CREATEDATABASEmytest21/39示例2(P66)CREATEDATABASERShDBON(NAME=RShDB,FILENAME='D:\RShDB_Data\RShDB.mdf',SIZE=10,MAXSIZE=30,FILEGROWTH=5)LOGON(NAME=RShDB_log,FILENAME='D:\RShDB_Data\RShDB_log.ldf',SIZE=3,MAXSIZE=12,FILEGROWTH=2)22/39示例3(P67)CREATEDATABASEstudentsONPRIMARY(NAME=students,FILENAME='F:\Data\students.mdf',SIZE=3MB,MAXSIZE=UNLIMITED),(NAME=students_data1,FILENAME='D:\Data\students_data1.ndf',SIZE=5MB,MAXSIZE=10MB,FILEGROWTH=1MB)LOGON(NAME=students_log,FILENAME='F:\Data\students_log.ldf',SIZE=2MB,MAXSIZE=6MB,FILEGROWTH=10%)23/393.3查看和設(shè)置數(shù)據(jù)庫(kù)選項(xiàng)展開“數(shù)據(jù)庫(kù)”節(jié)點(diǎn),在要查看屬性的數(shù)據(jù)庫(kù)上右擊鼠標(biāo),然后在彈出的快捷菜單中選擇“屬性”命令。24/393.4修改數(shù)據(jù)庫(kù)3.4.1擴(kuò)大數(shù)據(jù)庫(kù)空間3.4.2收縮數(shù)據(jù)庫(kù)空間3.4.3添加和刪除數(shù)據(jù)庫(kù)文件3.4.4創(chuàng)建和更改文件組25/393.4.1擴(kuò)大數(shù)據(jù)庫(kù)空間ALTERDATABASEdatabase_name{
<add_or_modify_files>}<add_or_modify_files>::={
ADDFILE<filespec>[,...n]
[TOFILEGROUP{filegroup_name
|DEFAULT}]
|ADDLOGFILE<filespec>[,...n]
|MODIFYFILE<filespec>26/39示例例1.為“RShDB”數(shù)據(jù)庫(kù)添加一個(gè)新的數(shù)據(jù)文件,邏輯文件名為:RShDB_Data2,物理存儲(chǔ)位置為:E:\Data文件夾下,物理文件名為:RShDB_Data2.ndf,初始大小為6MB,不自動(dòng)增長(zhǎng)。ALTERDATABASERShDBADDFILE(NAME=RShDB_Data2,FILENAME='E:\Data\RShDB_Data2.ndf',SIZE=6MB,FILEGROWTH=0)27/39示例例2.修改Students數(shù)據(jù)庫(kù)中主數(shù)據(jù)文件Students的初始大小,將其初始大小改為8MB。ALTERDATABASEStudentsMODIFYFILE(NAME=students,SIZE=8MB)28/39示例例3.為Students數(shù)據(jù)庫(kù)加添加一個(gè)新的日志文件,邏輯文件名為:students_log1,物理存儲(chǔ)位置為:D:\Data文件夾下,物理文件名為:students_log1.ldf,初始大小為2MB,每次增加1MB,最多增加到10MB。ALTERDATABASEStudentsADDLOGFILE(NAME=students_log1,FILENAME='D:\Data\students_log1.ldf',SIZE=2MB,FILEGROWTH=1MB,MAXSIZE=10MB)29/393.4.2收縮數(shù)據(jù)庫(kù)空間自動(dòng)收縮手工收縮用圖形化方法用T-SQL語(yǔ)句30/39收縮數(shù)據(jù)庫(kù)DBCCSHRINKDATABASE('database_name'|0[,target_percent][,{NOTRUNCATE|TRUNCATEONLY}])31/39收縮文件DBCCSHRINKFILE('file_name'{[,EMPTYFILE]|[[,target_size][,{NOTRUNCATE|TRUNCATEONLY}]]})32/39示例例4.收縮Students數(shù)據(jù)庫(kù),使該數(shù)據(jù)庫(kù)中所有的文件都有20%的可用空間。 DBCCSHRINKDATABASE(students,20)例5.將Students數(shù)據(jù)庫(kù)中的students_data1文件收縮到4MB。DBCCSHRINKFILE(students_data1,4)33/39數(shù)據(jù)庫(kù)文件使用情況34/39添加和刪除數(shù)據(jù)庫(kù)文件添加數(shù)據(jù)庫(kù)文件使用ALTERDATABASE語(yǔ)句。刪除數(shù)據(jù)庫(kù)文件ALTERDATABASEdatabase_nameREMOVEFILElogical_file_name只有當(dāng)文件中沒有數(shù)據(jù)或事務(wù)日志信息,文件完全為空時(shí),才可以從數(shù)據(jù)庫(kù)中刪除該文件。35/39示例例6.刪除Students數(shù)據(jù)庫(kù)中的Students_data1文件。ALTERDATABASEStudentsREMOVEFILEStudents_data1例7.刪除Students數(shù)據(jù)庫(kù)中的Students_log1文件。ALTERDATABASEStudentsREMOVEFILEStudents_log136/393.4.4創(chuàng)建和更改文件組用圖形化方法:在數(shù)據(jù)庫(kù)屬性窗口中;用T-SQL語(yǔ)句。37/39創(chuàng)建和更改文件組語(yǔ)句ALTERDATABASEdatabase_name
{|ADDFILEGROUPfilegroup_name
|REMOVEFILEGROUPfilegroup_name
|MODIFYFILEGROUPfilegroup_name{<filegroup_updatability_option>|DEFAULT|NAME=new_filegroup_name
}}<filegroup_updatability_option>::={{READ_ONLY|READ_WRITE}}38/39示例例1.為students數(shù)據(jù)庫(kù)定義一個(gè)新文件組,文件組名為:NewFileGroup1,同時(shí)在該文件組中新添加兩個(gè)數(shù)據(jù)文件,邏輯名分別為:students_dat1和students_dat2,初始大小分別為:4MB和6MB,均存放在D:\Data文件夾下,不自動(dòng)增長(zhǎng)。(1)創(chuàng)建文件組ALTERDATABASEStudentsADDFILEGROUPNewFileGroup1(2)添加新數(shù)據(jù)文件ALTERDATABASEstudentsADDFILE(NAME=students_dat1,FILENAME='D:\Data\students_dat1.ndf',SIZE=4MB,FILEGROWTH=0),(NAME=students_dat2,FILENAME='D:\Data\students_dat2.ndf',SIZE=6MB,FILEGROWTH=0)TOFILEGROUPNewFileGroup139/39示例例2.將Students數(shù)據(jù)庫(kù)中的NewFileGroup1文件組設(shè)為默認(rèn)文件組。ALTERDATABASEStudentsMODIFYFILEGROUPNewFileGroup1DEFAULT40/393.5刪除數(shù)據(jù)庫(kù)DROPDATABASEdatabase_name[,…n]例1.刪除單個(gè)數(shù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工濕地水質(zhì)凈化工程項(xiàng)目技術(shù)方案
- 有機(jī)畜產(chǎn)品屠宰及精深加工項(xiàng)目可行性研究報(bào)告寫作模板-備案審批
- 2025年養(yǎng)老護(hù)理員護(hù)理技能評(píng)估試卷及答案
- 2025年金屬非金屬礦山安全檢查(地下礦山)考試試題及答案
- 2025年醫(yī)院臨床主治醫(yī)師《口腔頜面醫(yī)學(xué)影像診斷學(xué)》專業(yè)知識(shí)考試題庫(kù)與附答案
- 鄉(xiāng)村應(yīng)急醫(yī)療服務(wù)體系方案
- 中小學(xué)生心理健康輔導(dǎo)課程體系設(shè)計(jì)
- 裝修工程項(xiàng)目預(yù)算編制方法
- 小學(xué)生作文集模板及編輯指南
- 養(yǎng)殖場(chǎng)環(huán)境監(jiān)測(cè)自動(dòng)化系統(tǒng)方案
- 基層工會(huì)屆中調(diào)整選舉主持詞
- 人教PEP版四年級(jí)上冊(cè)英語(yǔ)-Unit-3-Part-B-Let's-learn-and-write-說(shuō)課稿
- 偏癱患者業(yè)務(wù)查房課件
- 2023年國(guó)家藥品監(jiān)督管理局藥品評(píng)價(jià)中心招考聘用筆試參考題庫(kù)附答案解析
- 監(jiān)理項(xiàng)目部法律法規(guī)規(guī)程規(guī)章規(guī)范技術(shù)標(biāo)準(zhǔn)基本配置清單
- 中醫(yī)正骨八法-課件
- 外研版八年級(jí)上冊(cè)英語(yǔ)課文(全冊(cè))
- 護(hù)士執(zhí)業(yè)注冊(cè)申請(qǐng)審核表(三表合一)
- 博山區(qū)規(guī)模企業(yè)名單
- 向我們的奧運(yùn)健兒致敬課件
- 重大(特殊)手術(shù)報(bào)告審批制度流程申請(qǐng)表
評(píng)論
0/150
提交評(píng)論