SQL Server2012系统数据库
SQL系统数据库在安装SQL Server实例时由系统默认创建:
- master
- tempdb
- model
- msdb
- resource
- distribution
master数据库
master 数据库是主系统数据库。丢失该库,SQL Server将无法启动,master数据库包含SQL Server实例中所有对象的重要信息;
- 数据库
- AlwaysOn
- 数据库镜像
- 配置
- 登录
- 资源调控
- 端点(Endpoints)
如果想获取某个SQL Server实例中全部数据库清单,可以执行以下查询;
SELECT * FROM sys.master_files
tempdb 数据库
tempdb数据库是全局性的,服务于由内部进程创建的临时对旬,这些进程用于运行SQL Server或者用于运行由用户或应用程序 所创建的临时对象。这些临时对象包括临时表与存储过程、表变量、全局临时表以及游标等。除了临时对象,tempdb中还存储了有关已提交读取(read-committed)或快照分离事务、联机索引操作以及AFTER触发器的行版本信息。虽然也可以在tempdb中创建对象,但却无法在永久数据库那样使用这些对象。
model数据库
model数据库,它是在SQL Server实例中创建的全部数据库的模型。在每次创建数据库时,该库被用作模板。例如:当需要一张特定的表,该表存在于SQL Server实例中所有的数据库,那么就可以在model数据库中创建此表,以后每一次创建数据库时,都将包含这张表。
注意:如果没有model数据库或者该库已脱机,则tempdb数据库也无法创建,原因是当每一次SQL Server重启时,临时库都重新生成,而实例中所有的数据库都需要用到model数据库作为模板。tempdb也不例外,因此缺少model数据库则tempdb也无法创建。
msdb 数据库
msdb 数据库主要用作 SQL Server代理(Agent)的支撑后台,在创建或安排一个SQL Server代理作业时,该作业中的元数据就存储在此数据库中。除SQL Server代理的数据外,msdb中还存储下列组件的信息:
- 服务代理(Service brokers)
- 警报
- 日志传送
- ssis包
- 实用工具控制点(UCP)
- 数据库邮件
- 维护计划
评论 (0)