sqlserver系统数据库
概述
在SQL Server中,系统数据库是用于管理SQL Server对象和元数据的一组数据库。 这些数据库的特点是他们可以在几乎所有情况下,只读访问,因此不能进行修改或删除。在此文章中,我将探讨SQL Server系统数据库的主要内容。
主要系统数据库
SQL Server有4个主要的系统数据库:Master、Model、MSDB和TempDB。Master数据库在SQL Server启动时自动打开,因为它包含了有关整个SQL Server实例的信息。Model数据库作为模板用于创建新的用户数据库。MSDB数据库包含了SQL Server的管理作业和警报功能。TempDB数据库是一个系统数据库,用于在创建临时对象时存储内部和临时对象。
Master数据库
Master数据库包含有关整个SQL Server实例的元数据,如登录信息、服务配置、启动的位置和全局语言设置等。系统管理员需要对Master数据库进行备份,以便在系统崩溃时进行恢复。 在Master数据库中,您可以创建系统存储过程,用于管理系统元数据。它还包含了一个名为sysobjects的系统表,这个表包含了SQL Server实例中所有的数据库对象信息,如表、视图、存储过程等。
MSDB数据库
MSDB数据库包含了有关SQL Server代理的信息和所有作业和警报系统的信息。它还包含了数据库维护计划和日志记录信息。在MSDB数据库中,有一个名为sp_help_job的存储过程,系统管理员可以使用这个存储过程来查看SQL Server代理中定义的所有作业。MSDB数据库还包含一个系统表sysjobs,这个表包含有关SQL Server代理中所有作业的信息。
TempDB数据库
TempDB数据库是用于存储临时对象的系统数据库。 每个用户连接都有一个TemDB数据库的副本,它负责存储与该连接有关的所有临时数据和对象。这些临时对象包括:临时表、表变量、游标、临时存储过程等。如果一个查询使用了临时表,那么查询的结果会被存储在该用户连接的TempDB数据库。
总结
在 SQL Server中,系统数据库是用于管理SQL Server对象和元数据的重要组成部分。主要的系统数据库包括了Master、Model、MSDB和TempDB。Master数据库包含了有关整个SQL Server实例的元数据,如登录信息、服务配置、启动位置和全局语言设置等。MSDB数据库包含了SQL Server的管理作业和警报功能,而TempDB数据库是一个系统数据库,用于在创建临时对象时存储内部和临时对象。