《講管理數(shù)據(jù)庫》PPT課件.ppt_第1頁
《講管理數(shù)據(jù)庫》PPT課件.ppt_第2頁
《講管理數(shù)據(jù)庫》PPT課件.ppt_第3頁
《講管理數(shù)據(jù)庫》PPT課件.ppt_第4頁
《講管理數(shù)據(jù)庫》PPT課件.ppt_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第3講 管理數(shù)據(jù)庫,數(shù)據(jù)庫基礎(chǔ)與應(yīng)用(SQL Server 2008),目錄,SQL Server 2008數(shù)據(jù)庫概述,數(shù)據(jù)庫的查看,數(shù)據(jù)庫的創(chuàng)建、修改、重命名和刪除,數(shù)據(jù)庫的導(dǎo)入、導(dǎo)出、分離,1,2,3,4,3.1 SQL Server 2008數(shù)據(jù)庫概述,數(shù)據(jù)庫是存放數(shù)據(jù)的倉庫。數(shù)據(jù)庫指長期儲存在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。 數(shù)據(jù)庫系統(tǒng)的種類非常多,數(shù)據(jù)庫系統(tǒng)經(jīng)過了層次數(shù)據(jù)庫、網(wǎng)狀數(shù)據(jù)庫、關(guān)系數(shù)據(jù)庫幾個階段,其中以關(guān)系數(shù)據(jù)庫系統(tǒng)最為常見,所謂的關(guān)系數(shù)據(jù)庫系統(tǒng)是以將數(shù)據(jù)存儲在表中,所有的數(shù)據(jù)庫操作都是基于表來完成的。目前的數(shù)據(jù)庫市場,主要是Sybase、Oracle、DB2、SQ

2、L Server四款優(yōu)秀的商業(yè)軟件。關(guān)系數(shù)據(jù)庫模型是Dr.E.F.Codd于1970年設(shè)計出來由于存儲、檢索和操作數(shù)據(jù)的數(shù)據(jù)庫模型。它比層次數(shù)據(jù)庫模型和網(wǎng)絡(luò)數(shù)據(jù)庫模型更加簡單。,第3章 管理數(shù)據(jù)庫,3.2.1 SQL Server 2008系統(tǒng)數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫,它們分別是master、model、msdb、tempdb (1)master數(shù)據(jù)庫 master數(shù)據(jù)庫是SQL Server 2008系統(tǒng)最重要的數(shù)據(jù)庫,當(dāng)master數(shù)據(jù)庫損壞,SQL Server服務(wù)無法啟動。它記錄了SQL Server系統(tǒng)所有的系統(tǒng)信息。這些系統(tǒng)信息包括所有的登錄信息、系統(tǒng)設(shè)置信息、SQL Server的初始

3、化信息和其他系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫的相關(guān)信息。因此,當(dāng)創(chuàng)建一個數(shù)據(jù)庫、更改系統(tǒng)的設(shè)置、添加個人登錄帳戶等會更改系統(tǒng)數(shù)據(jù)庫master的操作之后,應(yīng)當(dāng)及時備份master系統(tǒng)數(shù)據(jù)庫。 (2)model數(shù)據(jù)庫 model數(shù)據(jù)庫的作用是在系統(tǒng)上創(chuàng)建所有數(shù)據(jù)庫的模板。 而剛剛完成SQL Server 2008安裝時,由于model數(shù)據(jù)庫就已經(jīng)有了一些系統(tǒng)表、視圖和存儲過程,因此用戶當(dāng)創(chuàng)建的每個數(shù)據(jù)庫中都包含這些對象。這些系統(tǒng)表的表名也以 “sys”開頭,其內(nèi)容是有關(guān)數(shù)據(jù)庫的結(jié)構(gòu)等重要信息。,(3)msdb數(shù)據(jù)庫 msdb數(shù)據(jù)庫存放服務(wù)器的任務(wù)列表,可以把定期調(diào)度執(zhí)行的任務(wù)加到這個數(shù)據(jù)庫中,它為報警、任

4、務(wù)調(diào)度和記錄操作員的操作提供存儲空間。 (4)tempdb數(shù)據(jù)庫 tempdb數(shù)據(jù)庫是一個臨時數(shù)據(jù)庫,它為所有的臨時表、臨時存儲過程及其他臨時操作提供空間。tempdb數(shù)據(jù)庫由整個系統(tǒng)的所有數(shù)據(jù)庫使用,不管用戶使用哪個數(shù)據(jù)庫,他們建立的所有臨時表和存儲過程都存儲在tempdb上。SQL Server服務(wù)器啟動時,tempdb數(shù)據(jù)庫被重新建立。當(dāng)用戶與SQL Server斷開連接時,其臨時表和存儲過程被自動刪除。,3.2.2文件和文件組,每個數(shù)據(jù)庫有一個主數(shù)據(jù)文件和若干個從文件。文件是數(shù)據(jù)庫的物理體現(xiàn),文件組用于將數(shù)據(jù)文件集合起來,以便于管理、數(shù)據(jù)分配和放置,可以把同一個文件組的文件放到不同的磁

5、盤上面。 主數(shù)據(jù)文件包含數(shù)據(jù)庫的啟動信息,并指向數(shù)據(jù)庫中的其他文件。用戶數(shù)據(jù)和對象可存儲在此文件中,也可以存儲在次要數(shù)據(jù)文件中。每個數(shù)據(jù)庫有一個主要數(shù)據(jù)文件。主數(shù)據(jù)文件的文件擴展名是 .mdf。 次要數(shù)據(jù)文件是可選的,由用戶定義并存儲用戶數(shù)據(jù)。通過將每個文件放在不同的磁盤驅(qū)動器上,次要文件可用于將數(shù)據(jù)分散到多個磁盤上。另外,如果數(shù)據(jù)庫超過了單個 Windows 文件的最大容量,可以使用次要數(shù)據(jù)文件,這樣數(shù)據(jù)庫就能繼續(xù)增長。次要數(shù)據(jù)文件的文件擴展名是 .ndf。 事務(wù)日志文件保存用于恢復(fù)數(shù)據(jù)庫的日志信息。每個數(shù)據(jù)庫必須至少有一個日志文件。事務(wù)日志的文件擴展名是 .ldf。,SQL Server的

6、數(shù)據(jù)庫文件和文件組必須遵循以下規(guī)則: (1)一個文件或文件組只能被一個數(shù)據(jù)庫使用,不能用于多個數(shù)據(jù)庫; (2)一個文件只能屬于一個文件組; (3)一個數(shù)據(jù)庫的數(shù)據(jù)信息和日志信息不能放在同一個文件或者文件組中,數(shù)據(jù)文件和日志文件總是分開的。,3.2.3 數(shù)據(jù)庫狀態(tài)和文件狀態(tài),數(shù)據(jù)庫狀態(tài)如下表所示:,數(shù)據(jù)庫文件的狀態(tài)獨立于數(shù)據(jù)庫的狀態(tài)。文件始終處于一個特定狀態(tài),數(shù)據(jù)庫文件的狀態(tài)有ONLINE 或 OFFLINE兩種狀態(tài)。,3.3 SQL Server 2008數(shù)據(jù)庫組成部分,一個數(shù)據(jù)庫由若干個基本表組成,表上有約束、規(guī)則、索引、觸發(fā)器、函數(shù)、默認(rèn)值等其他數(shù)據(jù)庫對象,其他數(shù)據(jù)庫對象都是依附于表對象而

7、存在。,3.4 創(chuàng)建數(shù)據(jù)庫,3.4.1 使用圖形化向?qū)?chuàng)建數(shù)據(jù)庫 對于初學(xué)者來說,使用圖形化向?qū)?chuàng)建數(shù)據(jù)庫,比較簡單,不用記憶復(fù)雜的命令,但是操作步驟較多。 【例3.5】 使用SQL Server Management Studio的圖形化向?qū)?chuàng)建名為students的數(shù)據(jù)庫,同時設(shè)置數(shù)據(jù)庫的相關(guān)屬性。,3.4 創(chuàng)建數(shù)據(jù)庫,【例3.6】創(chuàng)建數(shù)據(jù)庫students,數(shù)據(jù)文件的初始大小為1MB,最大為50MB,自動增長,增長方式按10%比例增長;日志文件初始為1MB,最大可增長到5MB,按1MB增長。數(shù)據(jù)庫的邏輯文件名和物理文件名均采用默認(rèn)值。 CREATE DATABASE students O

8、N -設(shè)置主數(shù)據(jù)庫文件參數(shù) (NAME=students_ Data, /*文件名*/ FILENAME=D:dbstudents_Data.MDF, SIZE=1, /*初始化大小*/ MAXSIZE=50, FILEGROWTH=10% /*文件大小按10%的比率自動增長*/ ) -設(shè)置事務(wù)日志文件參數(shù) LOG ON (NAME=students_Log, FILENAME=D:dbstudents_Log.LDF, SIZE=1, MAXSIZE=5, FILEGROWTH=10% ),3.5 操作數(shù)據(jù)庫,3.5.1 查看數(shù)據(jù)庫信息 當(dāng)用戶需要了解數(shù)據(jù)庫的狀態(tài)、所有者、可用空間、用戶等屬

9、性時,可以通過查看數(shù)據(jù)庫屬性,來了解數(shù)據(jù)庫的使用狀況。 (1)在SQL Server Management Studio中查看數(shù)據(jù)庫信息 操作的基本步驟為:在“對象資源管理器”窗口中,展開“數(shù)據(jù)庫”節(jié)點,選擇相應(yīng)的數(shù)據(jù)庫,右擊選中的數(shù)據(jù)庫,在彈出的快捷菜單中選擇“屬性”命令,打開“數(shù)據(jù)庫屬性”對話框,查看數(shù)據(jù)庫屬性,3.5 操作數(shù)據(jù)庫,3.5.2 修改數(shù)據(jù)庫名稱 (1)在SQL Server Management Studio中修改數(shù)據(jù)庫名稱 操作的基本步驟為:在“對象資源管理器”窗口中,展開“數(shù)據(jù)庫”節(jié)點,選擇相應(yīng)的數(shù)據(jù)庫,右擊選中的數(shù)據(jù)庫,在彈出的快捷菜單中單擊“重命名”命令,完成修改。

10、(2) 使用Transact-SQL語句重命名數(shù)據(jù)庫 使用ALTER DATABASE語句來修改數(shù)據(jù)庫的屬性,包括數(shù)據(jù)庫的名稱、容量、設(shè)定具體的選項等。 【例3. 8】將數(shù)據(jù)庫students重命名為student USE students GO ALTER DATABASE students MODIFY FILE (NAME=student_data) 注:也可以使用存儲過程sp_renamedb完成重命名, sp_renamedb students,student,3.5.3 修改數(shù)據(jù)庫大小,(1)在SQL Server Management Studio中修改數(shù)據(jù)庫容量 操作的基本步驟

11、為:在“對象資源管理器”窗口中,展開“數(shù)據(jù)庫”節(jié)點,選擇相應(yīng)的數(shù)據(jù)庫,右擊選中的數(shù)據(jù)庫,在彈出的快捷菜單中單擊“屬性”命令,打開“數(shù)據(jù)庫屬性”對話框,在大小選項中修改數(shù)據(jù)庫容量 (2) 使用Transact-SQL語句修改數(shù)據(jù)庫容量的大小 使用ALTER DATABASE語句來修改數(shù)據(jù)庫的屬性,包括數(shù)據(jù)庫的名稱、容量、設(shè)定具體的選項等。 【例3.9】將數(shù)據(jù)庫student重命名為students,并將數(shù)據(jù)庫的容量改為20MB USE students GO ALTER DATABASE student MODIFY FILE (NAME=students_data, SIZE=20MB),3.

12、5.4 刪除數(shù)據(jù)庫,當(dāng)用戶創(chuàng)建的數(shù)據(jù)庫不需要時,可以將其刪除。如果數(shù)據(jù)庫正在使用時,則無法將它刪除,因此刪除數(shù)據(jù)庫時,應(yīng)確保該數(shù)據(jù)庫處于非使用狀態(tài),否則無法刪除。 (1) SQL Server Management Studio中刪除數(shù)據(jù)庫 展開“數(shù)據(jù)庫”節(jié)點,右擊要刪除的數(shù)據(jù)庫student,在彈出的快捷菜單中選擇“刪除”命令,打開“刪除對象”對話框,單擊“確定”按鈕完成對數(shù)據(jù)庫的刪除操作。 (2) 使用Transact-SQL語句刪除數(shù)據(jù)庫 使用DROP DATABASE語句刪除數(shù)據(jù)庫的語句格式為: DROP DATABASE database_name ,.n 其中database_na

13、me指定要刪除的數(shù)據(jù)庫名稱。 說明:可以同時刪除多個數(shù)據(jù)庫 【例3.10】刪除已經(jīng)建立的數(shù)據(jù)庫students。 DROP DATABASE students,3.5.5 數(shù)據(jù)的導(dǎo)入導(dǎo)出操作,數(shù)據(jù)的導(dǎo)入導(dǎo)出操作經(jīng)常使用SQL Server數(shù)據(jù)庫導(dǎo)入導(dǎo)出向?qū)硗瓿伞?1. 數(shù)據(jù)庫的導(dǎo)出操作 (1)打開對象資源管理器,展開“數(shù)據(jù)庫”節(jié)點,找到欲導(dǎo)出的數(shù)據(jù)庫students,右鍵選中“students”“所有任務(wù)”“導(dǎo)出數(shù)據(jù)” 。,3.5.5 數(shù)據(jù)的導(dǎo)入導(dǎo)出操作,2. 數(shù)據(jù)導(dǎo)入操作 可以把文本文件、Excel文件、Access文件、Oracle數(shù)據(jù)文件導(dǎo)入SQL Server數(shù)據(jù)庫中。 【例3.11

14、】把Access數(shù)據(jù)庫文件test導(dǎo)入到SQL Server數(shù)據(jù)庫。 (1)在SQL Server對象資源管理器中,新建數(shù)據(jù)庫文件test,然后右鍵選中“test”“所有任務(wù)”“導(dǎo)入數(shù)據(jù)” 。,3.5.6數(shù)據(jù)庫分離,數(shù)據(jù)庫分離就是將數(shù)據(jù)庫從Sql Server實例中刪除,使其數(shù)據(jù)文件和日志文件在邏輯上脫離服務(wù)器,但是它并沒有從磁盤中刪除。數(shù)據(jù)庫分離以后,由于已經(jīng)脫離了數(shù)據(jù)庫服務(wù)器,所以它已經(jīng)不再為應(yīng)用程序提供存取服務(wù)了。經(jīng)過分離后,數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件純粹變成了操作系統(tǒng)中的文件,與服務(wù)器沒有任何關(guān)聯(lián),但它保存了數(shù)據(jù)庫的所有信息。 分離數(shù)據(jù)庫的步驟: (1)在對象資源管理器中選擇需要分離的

15、數(shù)據(jù)庫,然后右擊,再打開的快捷命令中選擇“任務(wù)”“分離”。 (2)在“分離數(shù)據(jù)庫”對話框中根據(jù)需要進(jìn)行相應(yīng)的設(shè)置,最后單擊“確定”按鈕即可。,3.6 數(shù)據(jù)庫快照,3.6.1數(shù)據(jù)庫快照簡介 數(shù)據(jù)庫快照(database snapshot)是一個只讀的、靜態(tài)的數(shù)據(jù)庫視圖,它是數(shù)據(jù)庫回復(fù)到特定時間點的有效途徑。一個數(shù)據(jù)庫可以有多個數(shù)據(jù)庫快照,每個數(shù)據(jù)庫快照在被刪除之前將一直存在。數(shù)據(jù)庫快照一直保持和源數(shù)據(jù)庫快照被創(chuàng)建的時刻一致,所以可被用來做一些報表。 由于數(shù)據(jù)庫快照的存在,可以很容易的把數(shù)據(jù)庫回復(fù)到快照創(chuàng)建時刻,所以數(shù)據(jù)庫快照也可以使用在災(zāi)難恢復(fù)中?!皩懭霑r復(fù)制”是數(shù)據(jù)庫快照最主要的特性,也就是說

16、快照數(shù)據(jù)庫最開始的時候并沒有包含數(shù)據(jù),只有在源數(shù)據(jù)庫的數(shù)據(jù)頁發(fā)生變化的情況下,才會發(fā)生數(shù)據(jù)復(fù)制。 數(shù)據(jù)庫快照優(yōu)點: (1)數(shù)據(jù)庫快照最大的優(yōu)點就在于它可以作為一個報告數(shù)據(jù)庫。因為數(shù)據(jù)庫快照是主數(shù)據(jù)庫的一個只讀副本,對一個數(shù)據(jù)庫快照執(zhí)行報告能夠大大的減少加載時間。 (2)數(shù)據(jù)庫快照只需要幾個特征值就可以恢復(fù)源數(shù)據(jù)庫。 數(shù)據(jù)庫快照的缺點: (1)數(shù)據(jù)庫快照最主要的缺點就是它只能在SQL Server企業(yè)版上使用。 (2)數(shù)據(jù)庫快照是依附于主數(shù)據(jù)庫的,因此不能單獨使用。 (3)數(shù)據(jù)庫快照中不支持全文檢索。,3.6.2 創(chuàng)建數(shù)據(jù)庫快照,SQL Server Management Studio不支持創(chuàng)建

17、數(shù)據(jù)庫快照,只能使用 Transact-SQL創(chuàng)建數(shù)據(jù)庫快照。在為數(shù)據(jù)庫快照命名的時候,建議名稱中既包含源數(shù)據(jù)庫名稱,又能夠包含快照數(shù)據(jù)庫創(chuàng)建的時間。 其語法格式為: CREATE DATABASE database_snapshot_name ON ( NAME=logical_file_name, FILENAME=os_file_name ) ,.n AS SNAPSHOT OF source_database_name ; 其中參數(shù)說明如下 Database_snapshot_name:要創(chuàng)建的數(shù)據(jù)庫快照名稱。 Source_databasename:源數(shù)據(jù)庫名稱。,3.6.3 查看數(shù)

18、據(jù)庫快照,訪問數(shù)據(jù)庫快照的方法和訪問一般的數(shù)據(jù)庫一樣。查看數(shù)據(jù)庫快照邏輯文件和物理文件大小的方式有有三種方法:可以通過使用sys.master_files 目錄視圖查看數(shù)據(jù)庫快照、使用對象資源管理器查看數(shù)據(jù)庫快照、使用Transact-SQL語句查看數(shù)據(jù)庫快照。 【例3.13】查看students數(shù)據(jù)庫快照文件的屬性。 方法一 使用對象資源管理器查看數(shù)據(jù)庫快照 SQL Server Management Studio中的在對象資源管理器中,展開“數(shù)據(jù)庫”“數(shù)據(jù)庫快照”,然后選擇要查看的students快照單擊右鍵,快捷菜單中單擊“屬性”命令,打開“數(shù)據(jù)庫屬性對話框”查看。 方法二 使用Tran

19、sact-SQL語句查看數(shù)據(jù)庫快照 SELECT DISTINCT COMPANYNAME FROM NORTHWIND_DBSS1200.DBO.CUSTOMERS,3.6.4 使用數(shù)據(jù)庫快照恢復(fù)數(shù)據(jù)庫,如果出現(xiàn)數(shù)據(jù)庫損壞,可以選擇從數(shù)據(jù)庫快照中恢復(fù)數(shù)據(jù)庫到快照創(chuàng)建的時刻。 【例3.14】 從數(shù)據(jù)庫快照students_data_2_10.ss中恢復(fù)數(shù)據(jù) 庫students到快照創(chuàng)建的時刻。 RESTORE DATABASE students FROM DATABASE_SNAPSHOT = students_data_2_10.ss GO,3.6.5 數(shù)據(jù)庫快照的刪除,從數(shù)據(jù)庫中刪除數(shù)據(jù)庫

20、快照,:可以通過使用對象資源管理器刪除和使用Transact-SQL語句刪除兩種方法。 方法一 使用對象資源管理器刪除數(shù)據(jù)庫快照 打開SQL Server Management Studio,在對象資源管理器中,展開“數(shù)據(jù)庫”“數(shù)據(jù)庫快照”,然后選擇要查看的students快照單擊右鍵,快捷菜單中單擊“刪除”命令。 方法二 使用Transact-SQL語句刪除數(shù)據(jù)庫快照 其語法格式為: DROP DATABASE database_snapshot_name 其中參數(shù)說明如下: Database_snapshot_name:要刪除的數(shù)據(jù)庫快照名稱。,3.7 實驗指導(dǎo),實驗內(nèi)容 1創(chuàng)建產(chǎn)品銷售數(shù)據(jù)庫,數(shù)據(jù)庫名為CPXS,數(shù)據(jù)庫初始大小為10MB,最大為50MB,數(shù)據(jù)庫自動增長,增長方式是按10%比例增長;日志文件初始為2MB,最大可增長到5MB,按1MB增長(默認(rèn)是按5%比例增長)。數(shù)據(jù)庫的邏輯文件名和物理文件名均采用默認(rèn)值。文件創(chuàng)建在d:db目錄下。 創(chuàng)建完成數(shù)據(jù)庫后,使用Transact-SQL語句將數(shù)據(jù)庫的容量修改為100MB,并且修改數(shù)據(jù)庫名稱為test。

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論