第六章 : 建立資料庫

25
1 第第第 : 第第第第第

Upload: beulah

Post on 31-Jan-2016

128 views

Category:

Documents


0 download

DESCRIPTION

第六章 : 建立資料庫. 章節概覽. 6.1 資料庫的組成 6.2 利用 Enterprise Manager 建立資料庫 6.3 以 SQL 指令建立資料庫 6.4 修改資料庫的選項與設定 6.5 刪除資料庫 6.6 卸離與附加資料庫. MDF. 檔. 資料庫. LDF. 檔. 6.1 資料庫的組成. SQL Server 2000 資料庫的構成架構. MDF: Main Data File LDF: Log Data File. 建立資料庫前的規劃. 規劃資料庫的容量 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第六章 : 建立資料庫

1

第六章 :建立資料庫

Page 2: 第六章 : 建立資料庫

2

章節概覽

6.1 資料庫的組成

6.2 利用 Enterprise Manager 建立資料庫

6.3 以 SQL 指令建立資料庫

6.4 修改資料庫的選項與設定

6.5 刪除資料庫

6.6 卸離與附加資料庫

Page 3: 第六章 : 建立資料庫

3

6.1 資料庫的組成 SQL Server 2000 資料庫的構成架構

資料庫

MDF檔

LDF檔

MDF : Main Data FileLDF : Log Data File

Page 4: 第六章 : 建立資料庫

4

建立資料庫前的規劃

規劃資料庫的容量 設定使用者對於資料庫的使用權限

( 資料庫擁有者 dbo , Database Owner)

定期備份資料庫的資料 了解資料庫建立的目的,以及建立資料庫的種類

與如何使用資料庫的資料

Data Data Information Information Knowledge Knowledge

Page 5: 第六章 : 建立資料庫

5

6.2 利用 Enterprise Manager 建立資料庫

6.2.1 系統資料庫

1. master 資料庫 ( 系統資料庫 )

2. model 資料庫 ( 系統資料庫 )

3. msdb 資料庫 ( 系統資料庫 )

4. tempdb 資料庫 ( 系統資料庫 )

5. Northwind 資料庫 (for user)

6. pubs 資料庫 (for user)

Page 6: 第六章 : 建立資料庫

6

SQL SERVER 2000 資料庫預設大小

資料庫檔案 實體檔名 預設大小,典型設定

master 主要資料 Master.mdf 11.0 MB

master 記錄檔 Mastlog.ldf 1.25 MB

tempdb 主要資料 Tempdb.mdf 8.0 MB

tempdb 記錄檔 Templog.ldf 0.5 MB

model 主要資料 Model.mdf 0.75 MB(4種中 ,最小者 )

model 記錄檔 Modellog.ldf 0.75 MB

msdb 主要資料 Msdbdata.mdf 12.0 MB

msdb 記錄檔 Msdblog.ldf 2.25 MB

Page 7: 第六章 : 建立資料庫

7

(1). master 資料庫

記錄了 SQL Server 系統的所有系統層級資訊

所有的登入帳戶與所有的系統組態設定,鎖定狀態

所有其他資料庫的存在狀態,以及包含使用者資料庫初始化資訊的主要檔案位置

注意:一定有最近的 master 備份

Page 8: 第六章 : 建立資料庫

8

(2). model 資料庫

可作為建立於系統中的所有資料庫範本

當您提出 CREATE DATABASE 陳述式時,資料庫的第一部份將透過複製 model 資料庫的內容來建立,接著再將新資料庫的其他部分填入空白頁。

Page 9: 第六章 : 建立資料庫

9

(3). msdb 資料庫

由「 SQL Server 代理程式」用來排程警示與作業,並記錄運算子等用途。

Page 10: 第六章 : 建立資料庫

10

(4). Tempdb 資料庫

包含了所有的暫存資料表與暫存的預存程序。例如: SQL Server 所產生的工作資料表

連線至系統的所有使用者之暫存資料表與預存程序都儲存於此

每次 SQL Server 啟動時, tempdb 都會重新建立,以便讓系統從一個初始狀態的資料庫副本開始執行

依預設值,在 SQL Server 執行時, tempdb 會視需要自動成長。 但是它與其他資料庫不同,每次重新啟動資料庫引擎時,它都會重設回初始大小。 如果為 tempdb 定義的大小太小,每次重新 SQL Server 時,為了將 tempdb 自動成長到支援工作負載所需的大小,系統處理負載會被這些工作佔用。 使用 ALTER DATABASE 增加 tempdb 的大小,就可以避免這個附加性。

Page 11: 第六章 : 建立資料庫

11

6.2.2 建立自訂資料庫

Page 12: 第六章 : 建立資料庫

12

建立資料庫的資料檔案選項設定

Page 13: 第六章 : 建立資料庫

13

建立資料庫所需設定的屬性

檔案名稱 位置 (MDF , LDF 可置於不同硬碟中 )

初始大小 檔案自動成長 限制檔案成長

Page 14: 第六章 : 建立資料庫

14

6.3.3 利用 CREATE DATABASE 建立資料庫

CREATE DATABASE discussGO

6.3 以 SQL 指令建立資料庫

Page 15: 第六章 : 建立資料庫

15

CREATE DATABASE 完整語法:

CREATE DATABASE database_name [ ON     [ < filespec > [ ,...n ] ]     [ , < filegroup > [ ,...n ] ] ] [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ][ FOR LOAD | FOR ATTACH ]

< filespec > ::=

[ PRIMARY ]( [ NAME = logical_file_name , ]    FILENAME = 'os_file_name'    [ , SIZE = size ]    [ , MAXSIZE = { max_size | UNLIMITED } ]    [ , FILEGROWTH = growth_increment ] ) [ ,...n ]

< filegroup > ::=

FILEGROUP filegroup_name < filespec > [ ,...n ]

檔案類型 副檔名主要資料檔 .mdf

次要資料檔 .ndf

交易記錄檔 .ldf

Page 16: 第六章 : 建立資料庫

16

建立資料庫所需設定的屬性

NAME

FILENAME

SIZE

MAXSIZE

FILEGROWTH

Page 17: 第六章 : 建立資料庫

17

6.3.4 一個資料庫有多個資料檔 ( 第 2 個為 .NDF)

可以在 SQL 指令中再指定一個檔案 效能的瓶頸會降到最低 利用檔案群組指定資料存放的地點 參考 :

範例 6.9 注意: D-DISK 目錄應先建立 OK

Page 18: 第六章 : 建立資料庫

18

6.3.5 設定資料庫的編碼排序方式

Collation

Case Sensitive (CS)

Accent Sensitive (AS)

Kana Sensitive

Width Sensitive

Page 19: 第六章 : 建立資料庫

19

6.3.6 設定資料庫的檔案群組

利用檔案群組指定某個資料表是儲存在哪一個檔案中

PRIMARY

SalesGroup1

SalesGroup2

SPri1_dat

SPri2_dat

SGrp1Fi1_dat

SGrp1Fi2_dat

SGrp2Fi1_dat

SGrp2Fi2_dat

Page 20: 第六章 : 建立資料庫

20

6.4 修改資料庫的選項與設定 (Enterprise Manager)

6.4.1 利用 EM

限制存取 唯讀 模型 自動關閉

Page 21: 第六章 : 建立資料庫

21

6.4.2 修改資料庫的選項與設定 (Query Analyzer)

exec sp_dboption pubsSELECT DATABASEPROPERTYEX('Northwind', 'Collation')EXEC sp_dboption 'pubs', 'read only', 'FALSE'

Page 22: 第六章 : 建立資料庫

22

6.5 刪除資料庫

先確認資料庫有無連線 利用 kill 將連線清除 DROP DATABASE 資料庫名稱 將資料庫刪除

Page 23: 第六章 : 建立資料庫

23

6.6 卸離資料庫 (Detach) 與附加資料庫 (Attach)

將資料庫定義從 master 中移除 資料檔案還是存在

卸離資料庫 (Detach)

Page 24: 第六章 : 建立資料庫

24

附加資料庫 (Attach)

將資料庫定義從 master 中加入 將資料檔案附加進來

Page 25: 第六章 : 建立資料庫

25

本章學習成果

要新增資料到資料庫之前,必須先建立資料庫 資料庫設定,可以設定其初始資料 每個資料庫可以設定獨立的編碼排序方式 一個資料庫可以有多個資料檔,也可以有多個

檔案群組 刪除資料庫與卸離資料庫的不同