mssql文件组的作用

 文件组是一个逻辑的概念,


     数据实际上是依附于表来存在的,我们将表放入到文件组中,而文件组是一个逻辑的概念,其实体是辅助数据库文件(ndr),所以就等于将我们指定的数据放入到了指定的辅助数据库文件中,然后如果将这些辅助数据库文件放入在不同的磁盘分区中,就可以最终实现有针对性的对相应的数据实现性能的优化。

     我们再来理一下:

     数据放在表中 --> 表属于某个文件组 --> 文件组的实体是辅助数据库文件 --> 辅助数据库文件放在性能优化的磁盘分区

     操作的顺序:
     1、先定义文件组
     2、指定哪些辅助数据库文件属于这个文件组
     3、将表放入到文件组中

     如果先做3,后做2的话,此时表将无法存入数据,因为没有实体的数据库文件,也就意味着没有实际可放的地方。

     归根结底,文件组只是一个用于管理分配方便的逻辑物件,其实际意义就是将表指定到某个数据库文件中。

上面是我从网上找到的答案,可是还有些不明白,在创建数据库的时候不是指定了辅助文件了吗?为什么还要用文件组来再次指定辅助文件呢?如下面的例子:create database sales
on primary
(name=spri1_dat,
filename='e:\database\spri1dat.mdf',
size=10,
maxsize=50,
filegrowth=15%),
(name=spri2_dat,
filename='f:\database\spri2dt.ndf',
size=10,
maxsize=50,
filegrowth=15%),
filegroup salesgroup
(name=sgrp1fi1,
filename='e:\database\sg1fi1dt.ndf',
size=10
maxsize=50,
filegrowth=5)

你可能感兴趣的:(文件组)