msdb 数据库

msdb 数据库由SQL Server 代理用于计划警报和作业,以及其他功能(如 SQL Server Management Studio、Service Broker 和 数据库邮件)。

例如,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 数据库引擎,这些文件的大小可能略有不同。

文件 逻辑名称 物理名称 文件增长
主数据 MSDBData MSDBData.mdf 以 10% 的速度自动增长到磁盘充满为止。
日志 MSDBLog MSDBLog.ldf 以 10% 的速度自动增长到最大 2 TB。

若要移动 msdb 数据库或日志文件,请参阅 移动系统数据库

数据库选项

下表列出了 msdb 数据库中每个数据库选项的默认值以及该选项是否可以修改。 若要查看这些选项的当前设置,请使用 sys.databases 目录视图。

数据库选项 默认值 是否可修改
ALLOW_SNAPSHOT_ISOLATION ON
ANSI_NULL_DEFAULT OFF
ANSI_NULLS OFF
ANSI_PADDING OFF
ANSI_WARNINGS OFF
ARITHABORT OFF
AUTO_CLOSE OFF
AUTO_CREATE_STATISTICS ON
AUTO_SHRINK OFF
AUTO_UPDATE_STATISTICS ON
AUTO_UPDATE_STATISTICS_ASYNC OFF
CHANGE_TRACKING OFF
CONCAT_NULL_YIELDS_NULL OFF
CURSOR_CLOSE_ON_COMMIT OFF
CURSOR_DEFAULT GLOBAL
数据库可用性选项 ONLINE

MULTI_USER

READ_WRITE




DATE_CORRELATION_OPTIMIZATION OFF
DB_CHAINING ON
ENCRYPTION OFF
NUMERIC_ROUNDABORT OFF
PAGE_VERIFY CHECKSUM
PARAMETERIZATION SIMPLE
QUOTED_IDENTIFIER OFF
READ_COMMITTED_SNAPSHOT OFF
RECOVERY SIMPLE
RECURSIVE_TRIGGERS OFF
Service Broker 选项 ENABLE_BROKER
TRUSTWORTHY ON

有关这些数据库选项的说明,请参阅 ALTER DATABASE (Transact-SQL)

限制

不能在 msdb 数据库中执行下列操作:

  • 更改排序规则。 默认排序规则为服务器排序规则。

  • 删除数据库。

  • 从数据库中删除 guest 用户。

  • 启用变更数据捕获。

  • 参与数据库镜像。

  • 删除主文件组、主数据文件或日志文件。

  • 重命名数据库或主文件组。

  • 将数据库设置为 OFFLINE。

  • 将主文件组设置为 READ_ONLY。

系统数据库

sys.databases (Transact-SQL)

sys.master_files (Transact-SQL)

移动数据库文件

数据库邮件

SQL Server Service Broker