分享方式:


主資料庫

master 資料庫會記錄 SQL Server 系統的所有系統層級資訊。 這包括全實例元數據,例如登入帳戶、端點、鏈接的伺服器和系統組態設定。 在 SQL Server 中,系統物件不再儲存在 master 資料庫中;相反地,它們會儲存在 Resource 資料庫中。 此外, master 是記錄所有其他資料庫是否存在的資料庫,以及這些資料庫檔案的位置,以及記錄 SQL Server 的初始化資訊。 因此,如果 master 資料庫無法使用,SQL Server 就無法啟動。

主控項的實體屬性

下表列出 主要 數據和記錄檔的初始組態值。 這些檔案的大小可能會因不同版本的 SQL Server 而稍有不同。

檔案 邏輯名稱 實體名稱 檔案成長
主要資料 大師 master.mdf 自動成長 10%, 直到磁碟已滿為止。
日誌 mastlog mastlog.ldf 自動成長百分之 10 到最多 2 TB。

如需如何移動 主要 數據和記錄檔的詳細資訊,請參閱 移動系統資料庫

資料庫選項

下表列出 master 資料庫中每個資料庫選項的預設值,以及是否可以修改該選項。 若要檢視這些選項目前的設定,請參閱 sys.databases 目錄檢視。

資料庫選項 預設值 可以修改
ALLOW_SNAPSHOT_ISOLATION (允許快照隔離) 開啟
ANSI_NULL_DEFAULT(預設空值設置) 關閉 是的
ANSI_NULLS 關閉 是的
ANSI_PADDING(ANSI 填充設定屬性) 關閉 是的
ANSI_WARNINGS 關閉 是的
ARITHABORT 關閉 是的
自動關閉 關閉
AUTO_CREATE_STATISTICS 開啟 是的
自動縮小 關閉
自動更新統計資訊 開啟 是的
AUTO_UPDATE_STATISTICS_ASYNC 關閉 是的
變更追蹤 關閉
CONCAT_NULL_YIELDS_NULL(串接空值產生空值) 關閉 是的
游標在提交時關閉 關閉 是的
CURSOR_DEFAULT 全球 是的
資料庫可用性選項 在線

多用戶

讀寫




日期關聯最佳化 關閉 是的
DB_CHAINING 開啟
加密 關閉
NUMERIC_ROUNDABORT(數字捨入中止) 關閉 是的
PAGE_VERIFY 校驗和 是的
參數化 簡單 是的
QUOTED_IDENTIFIER(引號識別符) 關閉 是的
READ_COMMITTED_SNAPSHOT 關閉
恢復 簡單 是的
遞迴觸發器 關閉 是的
Service Broker 選項 禁用代理
可信賴 關閉 是的

如需這些資料庫選項的描述,請參閱 ALTER DATABASE (Transact-SQL)。

限制

無法在 master 資料庫上執行下列作業:

  • 新增檔案或檔案群組。

  • 變更排序規則。 預設定序是伺服器定序。

  • 變更資料庫擁有者。 mastersa 擁有。

  • 建立全文檢索目錄或全文檢索索引。

  • 在資料庫中的系統數據表上建立觸發程式。

  • 卸除資料庫。

  • 從資料庫卸除 guest 使用者。

  • 啟用異動數據擷取。

  • 參與資料庫鏡像。

  • 移除主要檔案群組、主要資料檔案或記錄檔。

  • 重新命名資料庫或主要檔案群組。

  • 將資料庫設定為 OFFLINE。

  • 將資料庫或主要檔案群組設定為 READ_ONLY。

建議

當您使用 master 資料庫時,請考慮下列建議:

  • 一律有 master 資料庫的目前 備份可供使用。

  • 在下列作業之後儘快備份 master 資料庫:

    • 建立、修改或卸除任何資料庫

    • 變更伺服器或資料庫組態值

    • 修改或新增登入帳戶

  • 請勿在 master 中建立用戶物件。 如果您這麼做,則必須更頻繁地備份 master

  • 請勿將 master 資料庫的 TRUSTWORTHY 選項設定為 ON。

如果主檔案變成無法使用,要怎麼處理

如果 master 變成無法使用,您可以使用下列任一種方式,將資料庫傳回可用狀態:

  • 從目前的資料庫備份還原 master

    如果您可以啟動伺服器實例,您應該能夠從完整資料庫備份還原 master 。 如需詳細資訊,請參閱 還原 master Database (Transact-SQL)

  • 完全重建 主圖形

    如果 master 嚴重損壞導致您無法啟動 SQL Server,您必須重建 master。 如需詳細資訊,請參閱 重建系統資料庫

    這很重要

    重建 master 會重建所有系統資料庫。

重建系統資料庫

系統資料庫

sys.databases (Transact-SQL)

sys.master_files (Transact-SQL)

移動資料庫檔案