SQL Server Agent 會使用 msdb 資料庫來排程警示和作業,以及其他功能,例如 SQL Server Management Studio、Service Broker 和 Database Mail。
例如,SQL Server 會自動維護 msdb 中數據表內的完整在線備份與還原歷程記錄。 這項資訊包括執行備份的合作物件名稱、備份的時間,以及儲存備份的裝置或檔案。 SQL Server Management Studio 會使用此資訊來建議還原資料庫並套用任何事務歷史記錄備份的計劃。 即使已使用自定義應用程式或第三方工具建立備份事件,也會記錄所有資料庫的備份事件。 例如,如果您使用呼叫 SQL Server 管理物件 (SMO) 物件的 Microsoft Visual Basic 應用程式來執行備份作業,事件會記錄在 msdb 系統數據表、Microsoft Windows 應用程式記錄檔和 SQL Server 錯誤記錄檔中。 為了協助您保護儲存在 msdb 中的資訊,我們建議您考慮將 msdb 事務歷史記錄放在容錯記憶體上。
根據預設, msdb 會使用簡單的恢復模式。 如果您使用 備份和還原記錄 數據表,建議您使用 msdb 的完整恢復模式。 如需詳細資訊,請參閱<復原模式 (SQL Server)>。 請注意,當安裝或升級 SQL Server,以及每當使用 Setup.exe 重建系統資料庫時, msdb 的恢復模式會自動設定為簡單。
這很重要
在更新 msdb 的任何作業之後,例如備份或還原任何資料庫之後,建議您備份 msdb。 如需詳細資訊,請參閱系統資料庫的備份與還原 (SQL Server)。
msdb 的實體屬性
下表列出 msdb 資料和記錄檔的初始組態值。 這些檔案的大小可能會因不同版本的 SQL Server Database Engine 而稍有不同。
| 檔案 | 邏輯名稱 | 實體名稱 | 檔案成長 |
|---|---|---|---|
| 主要資料 | MSDBData | MSDBData.mdf | 自動成長 10%, 直到磁碟已滿為止。 |
| 日誌 | MSDBLog | MSDBLog.ldf | 自動成長百分之 10 到最多 2 TB。 |
若要移動 msdb 資料庫或記錄檔,請參閱 行動系統資料庫。
資料庫選項
下表列出 msdb 資料庫中每個資料庫選項的預設值,以及是否可以修改該選項。 若要檢視這些選項目前的設定,請參閱 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(數字捨入中止) | 關閉 | 是的 |
| 頁面驗證 | 校驗和 | 是的 |
| 參數化 | 簡單 | 是的 |
| QUOTED_IDENTIFIER(引號識別符) | 關閉 | 是的 |
| READ_COMMITTED_SNAPSHOT | 關閉 | 否 |
| 恢復 | 簡單 | 是的 |
| 遞迴觸發器 | 關閉 | 是的 |
| Service Broker 選項 | ENABLE_BROKER | 是的 |
| 可信賴 | 開啟 | 是的 |
如需這些資料庫選項的描述,請參閱 ALTER DATABASE (Transact-SQL)。
限制
無法在 msdb 資料庫上執行下列作業:
變更排序規則。 預設定序是伺服器定序。
卸除資料庫。
從資料庫卸除 guest 使用者。
啟用異動數據擷取。
參與資料庫鏡像。
移除主要檔案群組、主要資料檔案或記錄檔。
重新命名資料庫或主要檔案群組。
將資料庫設定為 OFFLINE。
將主要檔案群組設定為 READ_ONLY。