程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Sever 2000的系統數據庫和索引

SQL Sever 2000的系統數據庫和索引

編輯:關於SqlServer
 SQL Server 2000 在安裝過程中,創建了4個系統數據庫,這4個系統數據庫是運行SQL Server 2000的基礎,建立在這4個系統數據庫中的表格奠儀了運行和使用SQL Server的規則。這4個數據庫分別是:master, model, tempdb, masdb .

Master數據庫
Master數據記錄了SQL Server 2000所有的服務器系統信息,所有的注冊帳號和密碼以及所有的系統設置信息。Master數據庫還記錄了所有用戶定義數據庫的存儲位置和初始化信息。由於master數據庫的關鍵性,所以一旦它受到損壞,都有可能導致用戶的SQL Server應用系統的癱瘓,所以要經常備份master數據庫。

Tempdb數據庫
Tempdb數據庫記錄了所有臨時表格、臨時數據和臨時創建的存儲過程。Tempdb數據庫是一個全局資源,沒有專門的權限限制,允許所有可以連接上的SQL Server服務器的用戶使用。在tempdb數據庫中存放的所有數據信息都是臨時的。每當連接斷開是,所有的臨時表格和臨時存儲過程都將自動丟棄。所以每次SQL Server啟動時,tempdb數據裡面總是空的。當臨時存儲的數據量急劇增加時,tempdb數據庫的大小可以自動增長。

Model數據庫
Model數據庫是建立新數據庫的模板,它包含了將復制的每個數據庫中的系統表。執行創建數據庫的語句CREATE DATABASES時,服務器總是通過復制model的數據庫建立新數據庫的前面部分,新數據庫的後面部分被初始化成為空白的數據頁,以存放數據。

Msdb數據庫
Msdb數據庫主要是被SQL Server Agent 用於進行復制、作業調度以及管理報警等活動。數據庫常用於通過調度任務排除故障。


索引的特點和用途
索引是SQL Server在列上建立的一種數據庫對象。它對表中的數據庫提供邏輯排序,可以提高數據的訪問速度。
例如,要查找有10000行記錄的Employee表中所有來自北京的雇員的名字。如果沒有在這張表上針對雇員的地址建立索引,則DBMS在執行操作是必須遍歷表中的每一行,並只顯示那些來自北京的行中的姓名字段。這種遍歷每一行記錄並完成查詢的過程叫做表掃描。
SQL Server 執行一次表掃描,將依次讀取所有的數據頁。對只有10000行數據的小表來說,執行一次表掃描並不算麻煩。但是如果Employee表的數據是現在的1000倍,記錄總量達到10000000又該如何呢?而且,就算只是有一條記錄,並且記錄在第一頁上,SQL Server也不得不在所有的數據頁中查找所有地址為北京的雇員的名字。
如果在地址欄上增加一個索引,由於該索引包括一個指向數據的指針,所以使用該索引完成相同查詢的方式與表掃描不同。DBMS只沿著索引排序的順序對僅有一列數據的索引表進行讀取(如果只建立了一個索引的話),直至找到北京。然後,DBMS沿著索引指針的指向轉移到數據表上,查找到相應的數據。由於索引總是按照一定的順序進行排序,所以對索引進行掃描的速度大大快與表進行掃描的速度。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved