在
SQL Server系统中,系统运行时会用到的相关信息,如系统对象和
组态设置等,都是以数据库的形式存在,而存放这些
系统信息的数据库称为系统数据库。成功安装SQL Server后,系统会自动建立master、model、msdb、resource、及
tempdb等5个系统数据库。
master数据库是SQL Server中最重要的数据库,记录了SQL Server系统中所有的
系统信息,包括登入账户、系统配置和设置、
服务器中数据库的名称、相关信息和这些
数据库文件的位置,以及SQL Server初始化信息等。由于master数据库记录了如此多且重要的信息,一旦数据库文件损失或损毁,将对整个SQL Server系统的运行造成重大的影响,甚至是得整个系统瘫痪,因此,要经常对master数据库进行备份,以便在发生问题时,对数据库进行恢复。
tempdb
数据库是存在于SQL Server会话期间的一个临时性的数据库。一旦关闭SQL Server,
tempdb数据库保存的内容将自动消失。重启动SQL Server时,系统将重新创建新的、空的tempdb数据库。
model系统数据库是一个模板数据库,可以用作建立数据库的摸板。它包含了建立新数据库时所需的基本对象,如系统表、查看表、登录信息等。在系统执行建立新数据库操作时,它会复制这个模板数据库的内容到新的数据库上。由于所有新建立的数据库都是继承这个model数据库而来的,因此,如果更改model数据库中得内容,如增加对象,则稍后建立的数据库也都会包含该变动。
model系统数据库是
tempdb数据库的基础。由于每次启动提供SQL Server时,系统都会创建tempdb数据库,所以model数据库必须始终存在于SQL Server系统中。
msdb系统数据库是提供提“SQL Server代理服务”调度警报、作业以及记录操作员时使用。如果不使用这些SQL Server代理服务,就不会使用到该系统数据库。
SQL Server代理服务是SQL Server中的一个
Windows服务,用于运行任何已创建的计划作业。作业是指SQL Server中定义的能自动运行的一系列操作。例如,如果希望在每个工作日下班后备份公司所有服务器,就可以通过配置SQL Server代理服务使数据库备份任务在周一到周五的22:00之后自动运行。
resource数据库是只读数据库,包含了SQL Server中所有系统对象,如sys.object对象。SQL Server系统对象在物理上持续存在于resource数据库中。