數據庫基礎第二章:數據庫管理


一、啟動SQL Server服務的多種方式

1、從服務中啟動

2、從配置管理器啟動

 3、從服務管理中啟動

二、創建數據庫

2.1、 管理平台介紹

SQL Server 2008 的管理平台將是我們整本書的學習平台,因此我們首先了解一下這個平台。
在 SQL Server 2008 管理平台中,我們幾乎所有的操作都有兩種操作方式,分別是: 圖形界面操
作和代碼操作。但我們最重要的是要能掌握並熟悉代碼的操作,尤其是常用操作命令。而本階段為了
讓大家更加容易上手,本書重點介紹圖形界面操作。
圖形界面 操作
在成功連接到服務器后,我們將打開 SQL Server 2008 的主窗體,如圖所示。

在窗體的頂部是菜單欄和工具欄,左側通過一個樹形結構列出了當前服務器上我們所能夠操作的
所有對象。在窗體的右側是一個屬性窗體,列出了當前選中項的常用屬性。窗體的中央,占據最大位
置的是工作區。圖形界面操作非常簡單易用,所見即所得,在操作中需要記住以下兩個重要原則:
1、先選擇,后操作
2、右鍵原則

 操作步驟如下所示:

 登錄到 SQL Server 2008 的主窗體,如圖 2-10 所示;
 點擊“新建查詢”按鈕,創建查詢分析器(代碼編輯區);
 選擇要操作數據庫;
 在代碼中,輸入 T-SQL 代碼;
 選擇 T-SQL 代碼,點擊“執行”按鈕,執行 T-SQL 代碼,完成數據庫的相關操作。

2.2、創建數據庫

數據庫是整個數據庫應用的基礎,因此我們從認識數據庫開始。在 SQL Server 2008 中,數據庫
分為系統數據庫和用戶數據庫兩種。系統數據庫類似於操作系統的系統文件,主要用來管理和保證數
據庫系統的正常運作。一般情況下,我們不建議直接操作系統數據庫,因為不當的操作有可能會導致
整個 SQL Server 2008 癱瘓。在圖 2-10 中對常用的系統數據庫及其功能做了一個簡單的介紹。

用戶數據庫是根據用戶需求創建的數據庫,它是我們操作和應用的主體,也是我們學習的重點。
在對象資源管理器中,右鍵單擊“數據庫”,然后單擊“新建數據庫”,如圖 2-13 所示。

在打開的“新建數據庫”窗體中,“數據庫名稱(N)”處輸入數據庫的名稱,“所有者(O)”
用於指定數據庫的擁有者,一般采用“<默認值>”,如圖 2-14 所示。

在 SQL Server 2008 中一個數據庫至少由兩個文件組成:一個主數據庫文件 (后綴名為 .mdf )
一個日志文件 (后綴名為 .ldf )。主數據庫文件包含數據和對象,例如表、索引、存儲過程和視圖。
日志文件包含恢復數據庫中的所有事務所需的信息。另外,可以根據實際需要添加

后綴名為. ndf ),該文件的作用是由用戶定義並存儲用戶數據。通過將每個文件放在不同的磁盤驅
動器上,次要文件可用於將數據分散到多個磁盤上。另外,如果數據庫超過了單個 Windows 文件的最
大大小,可以使用次要數據文件,這樣數據庫就能繼續增長。

因此在“數據庫文件(F)”部分我們可以看到列表中系統自動添加的兩個文件。如果有需要,可
以點擊“添加(A)”按鈕,這樣就可以在列表中添加一個新的行,通過對各個字段的設置可以添加一
個新的次要數據庫文件。列表中其他各字段的作用分別是:

 邏輯名稱:用來設定數據庫文件在服務器上的邏輯名稱,一般來說文件的物理名稱和邏輯名
稱是相同的,但是可以根據需要在這里給不同的名稱。

 文件類型:用於查看文件的類型,從列表中選擇文件類型。文件類型可以為行數據、日志或
Filestream 數據,但是我們無法修改現有文件的文件類型。如果未啟用 FILESTREAM,則不會出現
FILESTREAM 選項。可以通過服務器屬性“高級”頁對話框啟用 FILESTREAM。

 文件組:每個數據庫有一個主要文件組。此文件組包含主要數據文件和未放入其他文件組的
所有次要文件。可以創建用戶定義的文件組,用於將數據文件集合起來,以便於管理、數據分配
和放置。例如,可以分別在三個磁盤驅動器上創建三個文件 Data1.ndf、Data2.ndf 和
Data3.ndf,然后將它們分配給文件組 fgroup1。然后,可以明確地在文件組 fgroup1 上創建一個
表。對表中數據的查詢將分散到三個磁盤上,從而提高了性能。通過使用在獨立磁盤冗余陣列
(Redundant Arrays of Inexpensive Disks,RAID)條帶集上創建的單個文件也能獲得同樣的性
能提高。但是,文件和文件組使我們能夠輕松地在新磁盤上添加新文件。我們可以從列表中為文
件選擇文件組。默認情況下,文件組為 PRIMARY。通過選擇“<新文件組>”,然后在“新建文件
組”對話框中輸入有關文件組的信息,可以創建新的文件組。您也可以在“文件組”頁上創建新
的文件組。但是我們無法修改現有文件的文件組。

 初始大小:輸入或修改文件的初始大小(MB)。默認情況下,這是 model 數據庫中設定的值。
此字段對於 FILESTREAM 文件無效。

 自動增長:選擇或顯示文件的自動增長屬性。這些屬性控制在達到文件的最大文件大小時文
件的擴展方式。若要編輯自動增長值,請單擊所需文件的自動增長屬性旁的編輯按鈕,然后更改
“更改自動增長設置”對話框中的值。默認情況下,它們是 model 數據庫中設定的值。此字段對
於 FILESTREAM 文件無效。

 路徑:顯示所選文件的路徑。若要指定新文件的路徑,請單擊文件路徑旁的編輯按鈕,再導
航到目標文件夾。我們無法修改現有文件的路徑。對於 FILESTREAM 文件,該路徑是一個文件夾。
SQL Server 數據庫引擎將在此文件夾中創建基礎文件。

文件名:顯示文件的名稱。此字段對於 FILESTREAM 文件無效。

一般情況下,這個列表中唯一需要我們修改的就是文件的路徑。列表中的其他各項直接采用系統
默認值就可以了,最后點擊“確定”按鈕后就可以完成數據庫的創建工作。

小貼士:默認情況下創建的數據庫文件存放在 SQL Server 2008 的安裝路徑下。

課堂作業:請創建一個名為 BookSystem 的數據庫。

創建指定路徑的數據庫文件:

create database a4
on
(
    name='a4',
    filename='d:\a4.mdf'
)

三、管理數據庫

一個數據庫一旦建立起來,大部分屬性我們都不建議進行修改,因此數據庫的管理工作基本上都
是集中在對數據庫文件的管理上,我們在這里也只討論這部分的工作。和創建數據庫一樣,管理數據
庫也是分為圖形界面操作和代碼操作兩種方式。

3.1. 管理數據庫

在對象資源管理器中找到我們新創建的 FilmManage 數據庫,右鍵單擊,在彈出的菜單中選擇“屬
性(R)”后就可以打開該數據的屬性窗體,如圖 2-15 所示。

在打開的屬性頁窗體的左側的“選擇頁”中,我們可以看到九個數據庫屬性設置選項,這九個設
置選項作用分別是:
 常規:可以查看或修改所選數據庫的屬性
 文件:添加、查看、修改或移除相關聯數據庫的數據庫文件
 文件組:可以查看文件組,或為所選數據庫添加新的文件組
 選項:可以為每個數據庫都設置若干個決定數據庫特征的數據庫級選項
 更改跟蹤:可查看或修改所選數據庫的更改跟蹤設置
 權限:可以查看或設置安全對象的權限
 擴展屬性:可以向數據庫對象添加自定義屬性
 鏡像:配置並修改數據庫的數據庫鏡像的屬性。還可以使用該頁來啟動配置數據庫鏡像安全
向導,以查看鏡像會話的狀態,並可以暫停或刪除數據庫鏡像會話
 事務日志傳送:可以配置和修改數據庫的日志傳送屬性
這里並不打算詳細的介紹所有的屬性設置選擇,因為過於復雜而且沒有什么必要,因此這里我們
重點介紹數據庫屬性配置,如圖 2-16 所示。

在“數據庫文件(F)”列表中我們可以看到剛才我們創建的三個數據庫文件,並且通過列表我們
也可以方便的看到這幾個文件的相關屬性,但是很不幸,盡管是我們創建的數據庫文件,我們所能夠
修改的屬性只有兩個:初始大小和自動增長,而其他的屬性我們只能夠查看。

點擊列表下方的“添加(A)”按鈕,就可以在列表中添加一個新的數據庫文件,在邏輯名稱處可
以輸入新文件的邏輯名稱。文件類型可以是行數據或者日志,如果選擇行數據,則新文件為次要數據
庫文件,否則就是日志文件。文件組可以是默認的,也可以新建,這里建議將同一個數據庫文件放置
到一個文件組中。路徑可以輸入,也可以選擇,建議將幾個文件設定為同一個路徑下,最后輸入文件
的物理名稱

3.2、分離和附加數據庫

在實際開發過程中,會碰到需要移動數據庫的情況,這時候我們可以借助於 SQL Server 2008 所
提供的分離和附加功能。該功能的作用是將用戶數據庫從服務器管理中脫離出來,同時能保持數據文
件和日志文件的完整性和一致性,這樣分離出來的數據庫可以附加到其他服務器上構成完整的數據
庫。就好像一個人從現有公司辭職后到另外一家新公司從新工作一樣。分離和附加數據庫的方式依然
是圖形界面和代碼兩種。

在 SQL Server 2008 中 分離數據庫的步驟如下。

 在對象資源管理器中找到需要分離的數據庫 FilmManage,然后右鍵單擊,在彈出的菜單中依
次選擇“任務(T)”->“分離(D)…”菜單項,如圖 2-17 所示。

 在打開的“分離數據庫”窗體的右側中,我們可以看到一個以列表形式呈現出來的要分離的
數據庫的信息,包括數據庫的名稱,是否刪除與該數據的連接,更新統計信息,狀態以及操作過程中
所產生的各種消息等,如圖 2-18 所示。這里需要注意,分離數據庫時,需要將該數據的所有連接都刪
除后方可以進行。

 單擊“確定”按鈕,完成對 FilmManage 數據庫的分離操作,此時 FilmManage 數據庫將不再
屬於當前的數據庫服務管理器,在對象資源管理器中也看不到 FilmManage 數據庫了。

 將分離的數據庫文件復制到目標位之后,通過附加操作就可以完成數據庫的移動。
在 SQL Server 2008 中 附加用戶數據庫的步驟如下。

 在對象資源管理器中選中“數據庫”節點,右鍵單擊后在打開的菜單中選擇“附加(A)…”
菜單命令,如圖 2-19 所示。

 在打開的“附加數據庫”窗口的右側,我們可以看到有上下兩個列表,在上面的“要附加的
數據庫(D)”列表中將會列出我們要附加到當前數據庫服務器的數據庫,如圖 2-20 所示。

點擊列表下方的“添加(A)…”按鈕就可以打開定位數據庫文件對話框,通過這個對話框,
我們可以在計算機中尋找要附加的數據庫的主數據庫文件的位置和名稱,如圖 2-21 所示。

 點擊“確定”按鈕后回到附加數據庫窗體,這時我們可以看到,在“要附加的數據庫(D)”
列表中可以看到我們剛才選擇的數據庫,這個列表中只有“附加為”和“所有者”這兩項可以修改。
“附加為”用於指定數據庫附加完成后在新的服務器上的名稱,默認和分離時相同的名稱,但是可以
根據需要修改。“所有者”是數據庫附加完成后新的數據庫的所有者,默認是 sa。下面的“數據庫詳
細信息(T)”列表前已經加上了我們附加的數據庫的名稱,在這個列表中我們可以看到要附加的數據
庫的所有庫文件的名稱和位置等信息,這些文件中的日志文件可以根據需要刪除,如果刪除了在附加
的時候系統會自動創建新的日志文件,但是這樣做會將原來的日志信息全部丟失,因此不建議這樣
做,如圖 2-22 所示。

 所有信息都確認無誤后,點擊“確定”按鈕,開始附加數據庫。成功完成對數據庫的附加操
作后,我們的 FilmManage 數據庫就歸屬於當前的 SQL Server 2008 服務器管理,這時在“對象資源管
理器”中就可以查看到我們附加上的 FilmManage 數據庫。

3.3. 刪除數據庫

如果用戶數據庫確實不再需要了,就應當從服務器中刪除,釋放其所占有的資源,這個操作依然
還是有圖形操作和代碼操作兩種方式。

在圖形界面下刪除數據庫的步驟如下。

 在對象資源管理器中找到需要刪除的數據庫,例如我們要刪除 FilmManage 數據庫,則在該數
據庫上右鍵單擊后在彈出的菜單中選擇“刪除(D)”菜單項,如圖 2-23 所示。

 在“刪除對象”窗體的右側有一個“要刪除的對象(D)”列表,我們可以看到現在列表中已
經有了我們的 FilmManage 數據庫的信息,包括數據庫名稱、對象類型、所有者等信息。在列表的下方
有兩個復選框,默認情況下“刪除數據看備份和還原歷史記錄信息(D)”復選框處於選中狀態,標識
同時刪除數據庫的備份等內容。“關閉所有連接(C)”復選框則處於位選中狀態,一般情況下,當我
們刪除某個數據庫的時候都會確認它處於未使用狀態,否則就要勾選該復選框,如圖 2-24 所示。

 確認無誤后,點擊“確定”按鈕完成數據庫的刪除操作,這時數據所對應的數據文件和日志
文件也同時刪除了。回到對象資源管理器中我們會發現 FilmManage 數據庫已經不再存在了。

 

 

三、作業

3.1、背單詞

  1、create 創建

  2、SQL 結構化查詢語言

  3、Server 服務器

  4、drop 刪除

  5、file 文件

3.2、操作題

  1、在d:\data目錄下創建一個數據庫db7

  2、分離數據庫

  3、將數據庫移動到e:\data目錄下

  4、附加數據庫

  5、刪除db7數據庫

  (1)、使用手動GUI(圖形界面)完成(非命令模式)

  (2)、先使用命令一次性完成1-4,查看效果后,再用命令完成5

默寫單詞:

1、create
2、SQL
3、Server
4、drop
5、file
6、data
7、base
8、database
9、system
10、DBMS
11、DBS
12、SQL Server
13、key
14、row
15、column
16、primary
17、foreign
18、table

 

  --1、在d:\data目錄下創建一個數據庫db7
create database db7
on
(
name='db7',
filename='D:\data\db7.mdf'
)
  --2、分離數據庫
exec sp_detach_db @dbname='db7'
  --3、將數據庫移動到e:\data目錄下
  --4、附加數據庫
exec sp_attach_db db7,'E:\data\db7.mdf','E:\data\db7_log.ldf'
  --5、刪除db7數據庫
drop database db7 
  --(1)、使用手動GUI(圖形界面)完成(非命令模式)
  --(2)、先使用命令一次性完成1-4,查看效果后,再用命令完成5

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM