數據庫的創(chuàng)建和管理課件_第1頁
數據庫的創(chuàng)建和管理課件_第2頁
數據庫的創(chuàng)建和管理課件_第3頁
數據庫的創(chuàng)建和管理課件_第4頁
數據庫的創(chuàng)建和管理課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第2章 數據庫的創(chuàng)建和管理學習要點:SQL Server數據庫的存儲結構 事務日志的概念 數據庫的創(chuàng)建、刪除、管理 2.1 基本概念 2.2 創(chuàng)建數據庫 2.3 數據庫的管理 2.4 刪除數據庫 第2章 數據庫的創(chuàng)建和管理學習要點:2.1 基本概念 主要數據文件 數據文件數據庫 次要數據文件 事務日志文件主要數據文件用來存儲數據庫的啟動信息、部分或全部數據,擴展名為.mdf 每個數據庫只能有一個主要數據文件次要數據文件用于保存所有主要數據文件中容納不下的數據,擴展名為.ndf 用于存儲數據庫中的所有對象 保存用于恢復數據庫的日志信息 2.1 基本概念 文件組 :將多個數據文件集合起來形成的一個

2、整體目的:便于進行管理和數據的分配類型:主文件組:包含了所有的系統表 用戶自定義文件組默認文件組:包含所有在創(chuàng)建時沒有指定文件組的表、索引等數據庫對象注意:一個數據文件不能存在于兩個或兩個以上的文件組里,日志文件不屬于任何文件組 文件組 :將多個數據文件集合起來形成的一個整體注意:一個數2.1.1 數據庫的物理存儲結構2.1.1 數據庫的物理存儲結構2.1.2 事務日志 事務日志文件,用以記錄所有事務和每個事務對數據庫所做的修改,當數據庫破壞時可以用事務日志恢復數據庫內容。 2.1.3 系統數據庫和示例數據庫 安裝SQL Server2000時,系統自動創(chuàng)建4個系統數據庫和2個示例數據庫。 2

3、.1.2 事務日志 master數據庫 master數據庫記錄了SQL Server系統的所有系統級別的信息,包括所有的登錄帳戶和密碼、系統的配置信息以及所有用戶定義數據庫的存儲位置、初始化信息。master是SQL Server中重要的數據庫,如果master數據庫受到損壞,SQL Server將不能啟動。 model數據庫 model數據庫是建立新數據庫的模板,它包含了將復制到每個新建數據庫中的系統表。 master數據庫 msdb數據庫 該數據庫主要被SQL Server Agent用于進行復制、作業(yè)調度以及管理報警等活動。 tempdb數據庫 tempdb數據庫保存所有的臨時表、臨時數

4、據以及臨時創(chuàng)建的存儲過程。這四個系統數據庫是運行SQL Server的基礎。 示例數據庫 pubs數據庫記錄一個虛擬的圖書出版公司的數據信息 northwind數據庫保存了一個虛擬的貿易公司的數據信息 msdb數據庫這四個系統數據庫是運行SQL Server的2.2 創(chuàng)建數據庫 創(chuàng)建數據庫是創(chuàng)建表及其它數據庫對象的第一步。數據庫的創(chuàng)建包括為數據庫確定名稱、決定數據庫大小,及在數據庫中用來存儲數據的文件。 2.2.1 使用企業(yè)管理器創(chuàng)建數據庫 (1)進入SQL Server企業(yè)管理器,在左邊的目錄樹結構中選擇“數據庫”文件夾 。 (2)單擊“操作”菜單中的“新建數據庫”命令或右鍵單擊“數據庫”文

5、件夾,在彈出的快捷菜單上選擇“新建數據庫”命令 。系統打開“數據庫屬性”對話框。2.2 創(chuàng)建數據庫 創(chuàng)建數據庫是創(chuàng)建表及其它數據庫對 (3)在“常規(guī)”選項卡中輸入數據庫的名稱,假設為Sales。輸入數據庫名稱 (3)在“常規(guī)”選項卡中輸入數據庫的名稱,假設為Sal (4)選擇“數據文件”選項卡,在該窗口中設置數據文件的屬性。數據文件的邏輯名 文件位置 初始大小 文件所在的文件組 文件否允許自動增長 (4)選擇“數據文件”選項卡,在該窗口中設置數據 (5)選擇“事務日志”選項卡,在該窗口中可設置日志文件的屬性。 (6)單擊“確定”按鈕,數據庫創(chuàng)建完成。 (5)選擇“事務日志”選項卡,在該窗口中可

6、設置日志文件2.2.2 使用T-SQL語句創(chuàng)建數據庫創(chuàng)建數據庫的T-SQL語句的語法形式:CREATE DATABASE database_name ON ,.n , ,.n LOG ON ,.n := PRIMARY ( NAME = logical_file_name , FILENAME = os_file_name , SIZE = size , MAXSIZE = max_size | UNLIMITED , FILEGROWTH = growth_increment ) ,.n :=FILEGROUP filegroup_name ,.n 2.2.2 使用T-SQL語句創(chuàng)建數據庫

7、database_name:新創(chuàng)建的數據庫的名稱。 ON:指出用來存儲數據庫中數據部分的磁盤文件(數據文件)。 PRIMARY:指定主文件組中的主文件。 LOG ON:指定用來存儲數據庫日志的磁盤文件。 NAME = logical_file_name:指定數據文件或日志文件的邏輯名。 FILENAME = os_file_name:指定數據文件或日志文件的操作系統文件名,包括文件名和路徑。 SIZE = size:指定數據文件或日志文件的初始大小,默認單位為MB。 database_name:新創(chuàng)建的數據庫的名稱。 MAXSIZE = max_size | UNLIMITED :指定數據文件

8、或日志文件可以增長到的最大容量,默認單位為MB。 FILEGROWTH = growth_increment:指定數據文件或日志文件的增長幅度,默認單位為MB。例2-1 創(chuàng)建一個數據庫sample。主文件為sample_dat。CREATE DATABASE sampleON PRIMARY( NAME=sample_dat, FILENAME=d:program filesmicrosoft sql servermssqldatasample_data.mdf, SIZE=5, MAXSIZE=50, FILEGROWTH=10 ) MAXSIZE = max_size | UNLIMI例2

9、-2 創(chuàng)建一個只包含一個數據文件和一個日志文件的數據庫。該數據庫名為Sales,數據文件的邏輯名為Sales_data,數據文件的操作系統名為sales_data.mdf,初始大小為10MB,最大可增加至500MB,增幅為10;日志文件的邏輯名為Sales_log,操作系統名為sales_log.ldf,初始大小為5MB,最大值為100MB,日志文件大小以2MB增幅增加。 CREATE DATABASE Sales ON ( NAME=Sales_data, FILENAME=d:program filesmicrosoft sql servermssqldatasales_data.mdf,

10、 SIZE=10MB, MAXSIZE=500MB, FILEGROWTH=10%)LOG ON( NAME=Sales_log, FILENAME=d:program filesmicrosoft sql servermssqldatasales_log.ldf, SIZE=5MB, MAXSIZE=100MB, FILEGROWTH=2MB) 例2-2 創(chuàng)建一個只包含一個數據文件和一個日志文件的數據庫例2-3 創(chuàng)建一個包含多個數據文件和日志文件的數據庫。該數據庫名為student,含有三個初始大小為10MB的數據文件和兩個8MB的日志文件。 CREATE DATABASE studentO

11、N PRIMARY( NAME=std_dat1, FILENAME=d:program filesmicrosoft sql servermssqldatastudent1.mdf, SIZE=10MB, MAXSIZE=200MB, FILEGROWTH=20),( NAME=std_dat2, FILENAME=d:program filesmicrosoft sql servermssqldatastudent2.ndf, SIZE=10MB, MAXSIZE=200MB, FILEGROWTH=20),例2-3 創(chuàng)建一個包含多個數據文件和日志文件的數據庫。該數( NAME=std_d

12、at3, FILENAME=d:program filesmicrosoft sql servermssqldatastudent3.ndf, SIZE=10MB, MAXSIZE=200MB, FILEGROWTH=20)LOG ON( NAME=std_log1, FILENAME=d:program filesmicrosoft sql servermssqldatastdlog1.ldf, SIZE=8MB, MAXSIZE=100MB, FILEGROWTH=10MB),( NAME=std_log2, FILENAME=d:program filesmicrosoft sql se

13、rvermssqldatastdlog2.ldf, SIZE=8MB, MAXSIZE=100MB, FILEGROWTH=10MB) ( NAME=std_dat3, FILENAME=d例2-4 創(chuàng)建一個包含兩個文件組的數據庫。該數據庫名為business,主文件組包含business_dat1和business_dat2兩個數據文件。文件組business_group包含文件數據文件business_dat3。該數據庫還包含一個日志文件business_log。 CREATE DATABASE businessON PRIMARY( NAME=business_dat1, FILENAM

14、E=d:program filesmicrosoft sql servermssqldatabusinessdat1.mdf, SIZE=10MB, MAXSIZE=50MB, FILEGROWTH=10),( NAME=business_dat2, FILENAME=d:program filesmicrosoft sql servermssqldatabusinessdat2.ndf, SIZE=10MB, MAXSIZE=500MB, FILEGROWTH=10),例2-4 創(chuàng)建一個包含兩個文件組的數據庫。該數據庫名為buFILEGROUP business_group( NAME=bu

15、siness_dat3, FILENAME=d:program filesmicrosoft sql servermssqldatabusinessdat3.ndf, SIZE=10MB, MAXSIZE=50MB, FILEGROWTH=10%)LOG ON( NAME=business_log, FILENAME=d:program filesmicrosoft sql servermssqldatabusinesslog.ldf, SIZE=8MB, MAXSIZE=100MB, FILEGROWTH=10MB)FILEGROUP business_group2.3 數據庫的管理2.3.

16、1 查看數據庫 1用企業(yè)管理器查看數據庫的屬性 進入SQL Server企業(yè)管理器,在左邊的目錄樹結構中選中要查看的數據庫Sales,單擊右鍵,在彈出的快捷菜單上單擊“屬性”命令,即可進入Sales數據庫的屬性窗口 。 該窗口共有6個選項卡,包括“常規(guī)”、“數據文件”、“事務日志”、“文件組”、“選項”及“權限”,我們可以根據需要進入選擇不同的選項卡查看數據庫相應的信息。 2.3 數據庫的管理2.3.1 查看數據庫 數據庫的創(chuàng)建和管理課件2用T-SQL語句查看數據庫的屬性 使用系統存儲過程sp_helpdb可以查看某個數據庫或所有數據庫的屬性。格式:sp_helpdb database_nam

17、e 該存儲過程顯示了Sales數據庫的名稱、大小、所有者、創(chuàng)建日期以及數據文件和日志文件等屬性。例2-5 查看數據庫Sales的屬性。 sp_helpdb Sales 例2-6 查看所有數據庫的屬性 sp_helpdb 2用T-SQL語句查看數據庫的屬性2.3.2 修改數據庫 1用企業(yè)管理器修改數據庫屬性 進入數據庫的屬性窗口 ,在屬性窗口中修改數據庫屬性。注意:在刪除文件組時要求該文件組中不包含任何數據文件,否則SQL Server會給出錯誤信息2用T-SQL語句修改數據庫屬性 其語法形式為:2.3.2 修改數據庫注意:在刪除文件組時要求該文件組中不ALTER DATABASE databa

18、se ADD FILE ,.n TO FILEGROUP filegroup_name | ADD LOG FILE ,.n | REMOVE FILE logical_file_name | ADD FILEGROUP filegroup_name | REMOVE FILEGROUP filegroup_name | MODIFY FILE | MODIFY NAME = new_dbname | MODIFY FILEGROUP filegroup_name filegroup_property | NAME = new_filegroup_name ALTER DATABASE dat

19、abase ADD FILE ,.n TO FILEGROUP filegroup_name :表示向指定的文件組添加新的數據文件。ADD LOG FILE ,.n :添加新的事務日志文件。REMOVE FILE logical_file_name:刪除某一文件。ADD FILEGROUP filegroup_name:添加一個文件組。REMOVE FILEGROUP filegroup_name:刪除某一文件組。MODIFY FILE :修改某個文件的屬性。MODIFY NAME = new_dbname:修改數據庫的名字 ADD FILE ,.nMODIFY FILEGROUP fileg

20、roup_name filegroup_property | NAME = new_filegroup_name :修改某一文件組的屬性。例2-7 為數據庫sample添加一個數據文件sample_dat2和一個日志文件sample_log2。ALTER DATABASE sampleADD FILE( NAME=sample_dat2, FILENAME=d:program filesmicrosoft sql servermssqldatasample_dat2.ndf, SIZE=4, MAXSIZE=10, FILEGROWTH=1 )ALTER DATABASE sampleADD

21、LOG FILE( NAME=sample_log2, FILENAME=d:program filesmicrosoft sql servermssqldatasample_log2.ldf, SIZE=4, MAXSIZE=10, FILEGROWTH=1 )例2-8 為數據庫sample添加一個文件組USER1,并向該文件組添加一個二個數據文件sampuser_dat1和sampuser_dat2。 ALTER DATABASE sampleADD FILEGROUP USER1ALTER DATABASE sampleADD FILE ( NAME=sampuser_dat1, FIL

22、ENAME=d:program filesmicrosoft sql servermssqldatasampuser_dat1.ndf, SIZE=4, MAXSIZE=10, FILEGROWTH=1 ),( NAME=sampuser_dat2, FILENAME=d:program filesmicrosoft sql servermssqldatasampuser_dat2.ndf, SIZE=4, MAXSIZE=10, FILEGROWTH=1 )TO FILEGROUP USER1MODIFY FILEGROUP filegroup_nam例2-9 從數據庫sample中刪除文件

23、sampuser_dat2。ALTER DATABASE sampleREMOVE FILE sampuser_dat2例2-10 刪除數據庫sample中的文件組USER1。ALTER DATABASE sampleREMOVE FILE sampuser_dat1ALTER DATABASE sampleREMOVE FILEGROUP USER1注意:在刪除文件組時必須先刪除文件組中所包含的文件。 例2-9 從數據庫sample中刪除文件sampuser_例2-11 修改數據庫sample中數據文件sample_dat2的屬性,將其初始大小改為10MB,最大容量改為80MB,增長幅度改為

24、5MB。ALTER DATABASE sampleMODIF FILE( NAME=sample_dat2, SIZE=10, MAXSIZE=80, FILEGROWTH=5 )例2-11 修改數據庫sample中數據文件sample_例2-12 修改數據庫business中文件組business_group的屬性,將其改名為group1,并設置為DEFAULT屬性(即該文件組為默認文件組)。ALTER DATABASE businessMODIFY FILEGROUP business_group NAME=group1ALTER DATABASE businessMODIFY FILEG

25、ROUP group1 DEFAULT例2-13 將數據庫student改名為stud_teacher。ALTER DATABASE student MODIFY NAME=stud_teacher 例2-12 修改數據庫business中文件組busine2.3.3 重命名數據庫語法形式為:sp_renamedb old_name,new_nameold_name:數據庫的當前名稱;new_name是數據庫的新名稱。例2-14 將數據庫business更名為company。 sp_renamedb business,company 2.3.3 重命名數據庫2.3.4 數據庫的收縮 SQL S

26、erver2000允許收縮數據庫中的每個文件以刪除未使用的頁。數據文件和事務日志文件都可以收縮。 1自動收縮(1)使用企業(yè)管理器設置自動收縮數據庫 在數據庫的“屬性對話框”中,點擊“選項”選項卡,選中“自動收縮”復選框,即可完成數據庫自動收縮的設置。 設置自動收縮2.3.4 數據庫的收縮 設置自動收縮(2)T-SQL語句自動收縮數據庫 使用ALTER DATABASE語句可以將數據庫設為自動收縮。當數據庫中有足夠的可用空間時,就會發(fā)生收縮。其語法形式為: ALTER DATABASE database_name SET AUTO_SHRINK on/off例2-15 將數據庫sales的收縮設

27、為自動收縮。 ALTER DATABASE sales SET AUTO_SHRINK on注意:不能將整個數據庫收縮到比其原始大小還要小。(2)T-SQL語句自動收縮數據庫注意:不能將整個數據庫收縮2手工收縮DBCC SHRINKDATABASE( database_name , target_percent , NOTRUNCATE | TRUNCATEONLY ) database_name:是要收縮的數據庫名稱。 target_percent:是數據庫收縮后的數據庫文件中所要的剩余可用空間百分比。 NOTRUNCATE:被釋放的文件空間依然保持在數據庫文件的范圍內。如果未指定,則被釋放的文件空間將被操作系統回收利用。 2手工收縮 TRUNCATEONLY:將數據文件中的任何未使用的空間釋放給操作系統。例2-16 縮小sales數據庫的大小,使得該數據庫中的文件有20的可用空間。 DBCC SHRINKDATABASE(sales,20) 還可以使用DBCC命令來縮小某一個操作系統文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論