每个SQL Server 2000数据库(无论是系统数据库还是用户数据库)在物理上都由至少一个数据文件和至少一个日志文件组成。出于分配和管理目的,可以将数据库文件分成不同的文件组。
数据文件:分为主要数据文件和次要数据文件两种形式。每个数据库都有且只有一个主要数据文件。主要数据文件的默认文件扩展名是.mdf。它将数据存储在表和索引中,包含数据库的启动信息,还包含一些系统表,这些表记载数据库对象及其他文件的位置信息。次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的默认文件扩展名是.ndf。
日志文件:SQL Server具有事务功能,以保证数据库操作的一致性和完整性。所谓事务就是一个单元的工作,该单元的工作要么全部完成,要么全部不完成。日志文件用来记录数据库中已发生的所有修改和执行每次修改的事务。SQL Server是遵守先写日志再执行数据库修改的数据库系统,因此如果出现数据库系统崩溃,数据库管理员(DBA)可以通过日志文件完成数据库的修复与重建。每个数据库必须至少有一个日志文件,但可以 不止一个。日志文件的默认文件扩展名是.1df。建立数据库时,SQI。Server会自动建立数据库的日志文件。
文件组:一些系统可以通过控制在特定磁盘驱动器上放置的数据和索引来提高自身的性能。文件组可以对此进程提供帮助。系统管理员可以为每个磁盘驱动器创建文件组,然后将特定的表、索引、或表中的text、ntext或image数据指派给特定的文件组。
SQI.Server有两种类型的文件组:主文件组和用户定义文件组。主文件组包含主要数据文件和任何没有明确指派给其他文件组的文件,系统表的所有页均分配在主文件组中;用户定义文件组是在CR E_ATE DATA_BASE或AI,TER DATA.BASE语句中,使用FII,EGROUP关键字指定的文件组。SQt.Server 2000在没有文件组时也能有效地工作,因此许多系统不需要指定用户定义文件组。在这种情况下,所有文件都包含在主文件组中,而且SQI。Server 2000可以在数据库内的任何位置分配数据。
每个数据库中都有一个文件组作为默认文件组运行。当SQI。Server给创建时没有为其指定文件组的表或索引分配页时,将从默认文件组中进行分配。一次只能有一个文件组作为默认文件组。如果没有指定默认的文件组,主文件组则成为默认的文件组。
本文是从SQL Server数据库最基本的组成讲起,对与刚刚入门的初学者是很有用的,很高兴能够与大家分享。
【编辑推荐】