SQL Server 包含以下5个系统数据库

  • master
  • msdb
  • model
  • Resource
  • tempdb

master 数据库

记录 SQL Server实例的所有系统级信息。系统对象不再存储在 master 数据库中,而是保存在Resource 数据库中。master 数据库记录了所有其他数据库的存在、数据库文件的位置以及 SQL Server的初始化信息,如果masters数据库不可用,则SQL Server将无法启动。

不要在master上做以下操作:

  • 添加文件或文件组。
  • 备份,主数据库上只能执行完整的数据库备份。
  • 更改排序规则。 默认排序规则为服务器排序规则。
  • 更改数据库所有者。 master 的所有者是 sa。
  • 创建全文目录或全文索引。
  • 在数据库的系统表上创建触发器。
  • 删除数据库。
  • 从数据库中删除 guest 用户。
  • 启用变更数据捕获。
  • 参与数据库镜像。
  • 删除主文件组、主数据文件或日志文件。
  • 重命名数据库或主文件组。
  • 将数据库设置为 OFFLINE。
  • 将数据库或主文件组设置为 READ_ONLY。

msdb 数据库

用于 SQL Server 代理计划警报和作业, SQL Server Management Studio、 Service Broker 和数据库邮件等其他功能也使用该数据库。

不要在msdb上做以下操作:

  • 更改排序规则。 默认排序规则为服务器排序规则。
  • 删除数据库。
  • 从数据库中删除 guest 用户。
  • 启用变更数据捕获。
  • 参与数据库镜像。
  • 删除主文件组、主数据文件或日志文件。
  • 重命名数据库或主文件组。
  • 将数据库设置为 OFFLINE。
  • 将主文件组设置为 READ_ONLY。

model 数据库

用作 SQL Server实例上创建的所有数据库的模板。 对 model 数据库进行的修改(如数据库大小、排序规则、恢复模式和其他数据库选项)将应用于以后创建的所有数据库。

不要在model上做以下操作:

  • 添加文件或文件组。
  • 更改排序规则。 默认排序规则为服务器排序规则。
  • 更改数据库所有者。 模型 的所有者是 sa。
  • 删除数据库。
  • 从数据库中删除 guest 用户。
  • 启用变更数据捕获。
  • 参与数据库镜像。
  • 删除主文件组、主数据文件或日志文件。
  • 重命名数据库或主文件组。
  • 将数据库设置为 OFFLINE。
  • 将主文件组设置为 READ_ONLY。
  • 使用 WITH ENCRYPTION 选项创建过程、视图或触发器。 加密密钥与在其中创建对象的数据库绑定在一起。 在 model 数据库中创建的加密对象只能用于 model中。

Resource 数据库

一个只读数据库,包含 SQL Server包括的系统对象。 系统对象在物理上保留在 Resource 数据库中,但在逻辑上显示在每个数据库的 sys 架构中。Resource 数据库的物理文件名为 mssqlsystemresource.mdf 和 mssqlsystemresource.ldf。 这些文件位于 :Program FilesMicrosoft SQL Server MSSQL.MSSQLBinn 中,不要移动。

Resource备份和还原:

  • SQL Server 不能备份 Resource 数据库
  • mssqlsystemresource.mdf 可以做基于文件的备份,但不能使用 SQL Server 还原所做的备份
  • 手动还原 mssqlsystemresource.mdf 的备份副本,并且必须谨慎
  • 还原 mssqlsystemresource.mdf 的备份之后,必须重新应用所有后续更新。

tempdb 数据库

一个工作空间,用于保存临时对象或中间结果集。tempdb系统数据库是一个全局资源,可供数据库的所有用户使用。

不要在tempdb上做以下操作:

  • 添加文件组。
  • 备份或还原数据库。
  • 更改排序规则。 默认排序规则为服务器排序规则。
  • 更改数据库所有者。 tempdb 的所有者是 sa。
  • 创建数据库快照。
  • 删除数据库。
  • 从数据库中删除 guest 用户。
  • 启用变更数据捕获。
  • 参与数据库镜像。
  • 删除主文件组、主数据文件或日志文件。
  • 重命名数据库或主文件组。
  • 正在运行 DBCC CHECKALLOC。
  • 正在运行 DBCC CHECKCATALOG。
  • 将数据库设置为 OFFLINE。
  • 将数据库或主文件组设置为 READ_ONLY。



sql server browser启动后又停止 sql brower启动失败_sqlserver代理无法启动

系统数据库