一个数据库怎么分为多个“mdf”文件了??? 多个“mdf”文件是一个数据库,这是怎么回事呢??? 详细情况如下图所示。
这么多的“mdf”文件是一个数据库所有的。在这种情况下如果要拷贝数据库,是不是就不能先“分离”,再“附加”了。而只能备份,然后还原呢???
这么多的“mdf”文件是一个数据库所有的。在这种情况下如果要拷贝数据库,是不是就不能先“分离”,再“附加”了。而只能备份,然后还原呢???
微软的建议是按照CPU(不过主要是对tempdb)的个数分【数据文件】,也就是mdf/ndf。一般10个都够了。1个mdf,9个ndf,你非要命名为mdf的话,由于SQLServer只认一个mdf,所以会报错。日志文件即ldf是顺序读取,所以没必要分多个,给大一点就可以了。
一般mdf/ndf可以分开物理磁盘存放,这样能分摊I/O。并且ldf也要和数据文件分开不同的物理磁盘。拆分多个【数据文件】主要是基于分摊I/O和形成文件组来管理,对于大数据库,比如100、200G以上的库,基本上都要用文件组。
按你截图的那种分法,是错误的。最起码是不建议的。
--自已建的呗
CREATE DATABASE [ff] ON PRIMARY
( NAME = N'ff1', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ff1.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ),
( NAME = N'ff2', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ff2.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ),
( NAME = N'ff3', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ff3.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB )
LOG ON
( NAME = N'ff_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ff_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
GO