簡介
在SQLServer系統中,系統運行時會用到的相關信息,如系統對象和組態設定等,都是以資料庫的形式存在,而存放這些系統信息的資料庫稱為系統資料庫。成功安裝SQLServer後,系統會自動建立master、model、msdb、resource、及tempdb等5個系統資料庫。如下:系統資料庫 | 說明 |
---|---|
master 資料庫 | 記錄 SQL Server 實例的所有系統級信息。 |
msdb 資料庫 | 用於 SQL Server 代理計畫警報和作業。 |
model 資料庫 | 用作 SQL Server 實例上創建的所有資料庫的模板。對model資料庫進行的修改(如資料庫大小、排序規則、恢復模式和其他資料庫選項)將套用於以後創建的所有資料庫。 |
Resource 資料庫 | 一個唯讀資料庫,包含 SQL Server 包括的系統對象。系統對象在物理上保留在Resource資料庫中,但在邏輯上顯示在每個資料庫的sys架構中。 |
tempdb 資料庫 | 一個工作空間,用於保存臨時對象或中間結果集。 |
master
master資料庫是SQLServer中最重要的資料庫,記錄了SQLServer系統中所有的系統信息,包括登入賬戶、系統配置和設定、伺服器中資料庫的名稱、相關信息和這些資料庫檔案的位置,以及SQLServer初始化信息等。由於master資料庫記錄了如此多且重要的信息,一旦資料庫檔案損失或損毀,將對整個SQLServer系統的運行造成重大的影響,甚至是得整個系統癱瘓,因此,要經常對master資料庫進行備份,以便在發生問題時,對資料庫進行恢復。tempdb
tempdb資料庫是存在於SQLServer會話期間的一個臨時性的資料庫。一旦關閉SQLServer,tempdb資料庫保存的內容將自動消失。重啟動SQLServer時,系統將重新創建新的、空的tempdb資料庫。tempdb保存的內容主要包括:
顯示創建臨時對象,例如表、存儲過程、表變數或游標。
所有版本的更新記錄。
SQLServer創建的內部工作表。
創建或重新生成索引時,臨時排序的結果。
model
model系統資料庫是一個模板資料庫,可以用作建立資料庫的摸板。它包含了建立新資料庫時所需的基本對象,如系統表、查看錶、登錄信息等。在系統執行建立新資料庫操作時,它會複製這個模板資料庫的內容到新的資料庫上。由於所有新建立的資料庫都是繼承這個model資料庫而來的,因此,如果更改model資料庫中得內容,如增加對象,則稍後建立的資料庫也都會包含該變動。model系統資料庫是tempdb資料庫的基礎。由於每次啟動提供SQLServer時,系統都會創建tempdb資料庫,所以model資料庫必須始終存在於SQLServer系統中。
msdb
msdb系統資料庫是提供提“SQLServer代理服務”調度警報、作業以及記錄操作員時使用。如果不使用這些SQLServer代理服務,就不會使用到該系統資料庫。SQLServer代理服務是SQLServer中的一個Windows服務,用於運行任何已創建的計畫作業。作業是指SQLServer中定義的能自動運行的一系列操作。例如,如果希望在每個工作日下班後備份公司所有伺服器,就可以通過配置SQLServer代理服務使資料庫備份任務在周一到周五的22:00之後自動運行。