14.1 SQL Server系统数据库介绍
SQL Server系统数据库
简介
默认情况下,SQL Server提供四个主要系统数据库:
- master
- msdb
- model
- tempdb
master
master数据库存储SQL Server实例的所有系统级信息,包括:
- 服务器配置设置
- 登录帐户
- 链接的服务器信息
- 启动存储过程
- 用户数据库的文件位置
如果master
数据库不可用,SQL Server将无法启动。使用master
数据库时,应注意:
首先,始终拥有master
数据库的当前备份。如果master
数据库已损坏,就可以从备份中恢复它。
其次,在完成以下操作后尽快备份master
数据库:
- 创建、修改和删除任何数据库
- 更改服务器配置
- 更新登录帐户,包括添加、删除和修改
第三,不要再master
数据库创建用户对象。
最后,不要把master
数据库的TRUSTWORTHY
数据库属性设置为ON
。
请注意,如果TRUSTWORTHY
数据库属性为ON
,SQL Server将信任数据库及其内容,这增加了安全风险。默认情况下,TRUSTWORTHY
为OFF
。参考:有关TRUSTWARTHY选项的更多信息。
msdb
msdb
由SQL Server代理用于调度作业和警报。此外,它还存储SQL代理作业的历史记录。
msdb
支持以下功能:
- 作业和警报
- 数据库邮件
- 服务代理
- 数据库的备份和恢复历史记录
model
SQL Server使用model
数据库作为创建其他数据库的模板。
创建新数据库时,SQL Server会将model
数据库的内容(包括数据库基本配置)复制到新数据库中。
如果修改model
数据库,则后面创建的所有数据库都将更改。
每当SQLServer启动时,它都会从model
数据库创建tempdb
数据库。因此,model
数据库必须始终存在于SQL Server上。
tempdb
tempdb
数据库存储显式创建的临时用户对象,如临时表和表变量
此外,tempdb
存储数据库引擎创建的内部对象。例如,tempdb
数据库还存储运行包含ORDER BY
子句的查询的即时排序结果。
SQL Server每次启动时都会重新创建tempdb
数据库。由于tempdb
是非永久性存储,因此无法备份或恢复它。
总结
- SQL Server提供了四个系统数据库,包括
master
、msdb
、model
和tempdb
。 master
系统数据库存储SQL Server实例的系统级信息。msdb
数据库由SQL Server代理用于作业和警报。model
数据库用作创建其他数据库的模板。tempdb
系统数据库存储临时对象,并在每次SQL Server启动时重新创建。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· DeepSeek “源神”启动!「GitHub 热点速览」
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器