SQ server 数据库
master master 数据库是SQL Server中最重要的数据库,记录了SQL Server系统中所有的系统信息,包括登入账户、系统配置和设置、服务器中数据库的名称、相关信息和这些数据库文件的位置,以及SQL Server初始化信息等。由于master 数据库记录了如此多且重要的信息,一旦数据库文件损失或损毁,将对整个SQL Server系统的运行造成重大的影响,甚至是得整个系统瘫痪,因此,要经常对master 数据库进行备份,以便在发生问题时,对数据库进行恢复。
tempdb 数据库是存在于SQL Server会话期间的一个临时性的数据库。一旦关闭SQL Server ,tempdb 数据库保存的内容将自动消失。重启动SQL Server时,系统将重新创建新的、空的tempdb 数据库。
tempdb 保存的内容主要包括:
显示创建临时对象,例如表、存储过程、表变量或游标。
所有版本的更新记录。
SQL Server创建的内部工作表。
创建或重新生成索引时,临时排序的结果。
model
model 系统数据库是一个模板数据库,可以用作建立数据库的摸板。它包含了建立新数据库时所需的基本对象,如系统表、查看表、登录信息等。在系统执行建立新数据库操作时,它会复制这个模板数据库的内容到新的数据库上。由于所有新建立的数据库都是继承这个model 数据库而来的,因此,如果更改model 数据库中得内容,如增加对象,则稍后建立的数据库也都会包含该变动。
model 系统数据库是tempdb 数据库的基础。由于每次启动提供SQL Server时,系统都会创建tempdb 数据库,所以model 数据库必须始终存在于SQL Server系统中。
msdb msdb 系统数据库是提供提“SQL Server代理服务”调度警报、作业以及记录操作员时使用。如果不使用这些SQL Server代理服务,就不会使用到该系统数据库。
SQL Server代理服务是SQL Server中的一个Windows 服务,用于运行任何已创建的计划作业。作业是指SQL Server中定义的能自动运行的一系列操作。例如,如果希望在每个工作日下班后备份公司所有服务器,就可以通过配置SQL Server代理服务使数据库备份任务在周一到周五的22:00之后自动运行。
resource
resource 数据库是只读数据库,包含了SQL Server中所有系统对象,如
sys.object 对象。SQL Server系统对象在物理上持续存在于resource 数据库中。
数据库文件和文件组
SQL Server 2014
其他版本
每个 SQL Server 数据库至少具有两个操作系统文件:一个数据文件和一个日志文件。数据文件包含数据和对象,例如表、索引、存储过程和视图。日志文件包含恢复数据库中的所有事务所需的信息。为了便于分配和管理,可以将数据文件集合起来,放到文件组中。
数据库文件
SQL Server 数据库具有三种类型的文件,如下表所示:
例如,可以创建一个简单的数据库 Sales ,其中包括一个包含所有数据和对象的主要文件和一个包含事务日志信息的日志文件。也可以创建一个更复杂的数据库 Orders ,其中包括一个主要文件和五个次要文件。数据库中的数据和对象分散在所有六个文件中,而四个日志文件包含事务日志信息。 默认情况下,数据和事务日志被放在同一个驱动器上的同一个路径下。这是为处理单磁盘系统而采用的方法。但是,在生产环境中,这可能不是最佳的方法。建议将数据和日志文件放在不同的磁盘上。 文件组
每个数据库有一个主要文件组。此文件组包含主要数据文件和未放入其他文件组的所有次要文件。可以创建用户定义的文件组,用于将数据文件集合起来,以便于管理、数据分配和放置。
例如,可以分别在三个磁盘驱动器上创建三个文件 Data1.ndf 、Data2.ndf 和 Data3.ndf ,然后将它们分配给文件组 fgroup1。然后,可以明确地在文件组 fgroup1 上创建一个表。对表中数据的查询将分散到三个磁盘上,从而提高了性能。通过使用在 RAID (独立磁盘冗余阵列)条带集上创建的单个文件也能获得同样的性能提高。但是,文件和文件组使您能够轻松地在新磁盘上添加新文件。
下表列出了存储在文件组中的所有数据文件。
默认文件组
如果在数据库中创建对象时没有指定对象所属的文件组,对象将被分配给默认文件组。不管何时,只能将一个文件组指定为默认文件组。默认文件组中的文件必须足够大,能够容纳未分配给其他文件组的所有新对象。
PRIMARY 文件组是默认文件组,除非使用 ALTER DATABASE 语句进行了更改。但系统对象和表仍然分配给 PRIMARY 文件组,而不是新的默认文件组。
SQ server 数据库
master master 数据库是SQL Server中最重要的数据库,记录了SQL Server系统中所有的系统信息,包括登入账户、系统配置和设置、服务器中数据库的名称、相关信息和这些数据库文件的位置,以及SQL Server初始化信息等。由于master 数据库记录了如此多且重要的信息,一旦数据库文件损失或损毁,将对整个SQL Server系统的运行造成重大的影响,甚至是得整个系统瘫痪,因此,要经常对master 数据库进行备份,以便在发生问题时,对数据库进行恢复。
tempdb 数据库是存在于SQL Server会话期间的一个临时性的数据库。一旦关闭SQL Server ,tempdb 数据库保存的内容将自动消失。重启动SQL Server时,系统将重新创建新的、空的tempdb 数据库。
tempdb 保存的内容主要包括:
显示创建临时对象,例如表、存储过程、表变量或游标。
所有版本的更新记录。
SQL Server创建的内部工作表。
创建或重新生成索引时,临时排序的结果。
model
model 系统数据库是一个模板数据库,可以用作建立数据库的摸板。它包含了建立新数据库时所需的基本对象,如系统表、查看表、登录信息等。在系统执行建立新数据库操作时,它会复制这个模板数据库的内容到新的数据库上。由于所有新建立的数据库都是继承这个model 数据库而来的,因此,如果更改model 数据库中得内容,如增加对象,则稍后建立的数据库也都会包含该变动。
model 系统数据库是tempdb 数据库的基础。由于每次启动提供SQL Server时,系统都会创建tempdb 数据库,所以model 数据库必须始终存在于SQL Server系统中。
msdb msdb 系统数据库是提供提“SQL Server代理服务”调度警报、作业以及记录操作员时使用。如果不使用这些SQL Server代理服务,就不会使用到该系统数据库。
SQL Server代理服务是SQL Server中的一个Windows 服务,用于运行任何已创建的计划作业。作业是指SQL Server中定义的能自动运行的一系列操作。例如,如果希望在每个工作日下班后备份公司所有服务器,就可以通过配置SQL Server代理服务使数据库备份任务在周一到周五的22:00之后自动运行。
resource
resource 数据库是只读数据库,包含了SQL Server中所有系统对象,如
sys.object 对象。SQL Server系统对象在物理上持续存在于resource 数据库中。
数据库文件和文件组
SQL Server 2014
其他版本
每个 SQL Server 数据库至少具有两个操作系统文件:一个数据文件和一个日志文件。数据文件包含数据和对象,例如表、索引、存储过程和视图。日志文件包含恢复数据库中的所有事务所需的信息。为了便于分配和管理,可以将数据文件集合起来,放到文件组中。
数据库文件
SQL Server 数据库具有三种类型的文件,如下表所示:
例如,可以创建一个简单的数据库 Sales ,其中包括一个包含所有数据和对象的主要文件和一个包含事务日志信息的日志文件。也可以创建一个更复杂的数据库 Orders ,其中包括一个主要文件和五个次要文件。数据库中的数据和对象分散在所有六个文件中,而四个日志文件包含事务日志信息。 默认情况下,数据和事务日志被放在同一个驱动器上的同一个路径下。这是为处理单磁盘系统而采用的方法。但是,在生产环境中,这可能不是最佳的方法。建议将数据和日志文件放在不同的磁盘上。 文件组
每个数据库有一个主要文件组。此文件组包含主要数据文件和未放入其他文件组的所有次要文件。可以创建用户定义的文件组,用于将数据文件集合起来,以便于管理、数据分配和放置。
例如,可以分别在三个磁盘驱动器上创建三个文件 Data1.ndf 、Data2.ndf 和 Data3.ndf ,然后将它们分配给文件组 fgroup1。然后,可以明确地在文件组 fgroup1 上创建一个表。对表中数据的查询将分散到三个磁盘上,从而提高了性能。通过使用在 RAID (独立磁盘冗余阵列)条带集上创建的单个文件也能获得同样的性能提高。但是,文件和文件组使您能够轻松地在新磁盘上添加新文件。
下表列出了存储在文件组中的所有数据文件。
默认文件组
如果在数据库中创建对象时没有指定对象所属的文件组,对象将被分配给默认文件组。不管何时,只能将一个文件组指定为默认文件组。默认文件组中的文件必须足够大,能够容纳未分配给其他文件组的所有新对象。
PRIMARY 文件组是默认文件组,除非使用 ALTER DATABASE 语句进行了更改。但系统对象和表仍然分配给 PRIMARY 文件组,而不是新的默认文件组。