日期:2014-05-17  浏览次数:21282 次

SQL的文件组中mdf与ndf的区别
各位新年好!有以下问题请教,谢谢
1.SQL的文件组中mdf与ndf的有什么区别?
2.ndf是否也存储表数据、索引等各数据?

------解决方案--------------------
sql server .mdf和.ndf的区别!http://blog.sina.com.cn/s/blog_615d3aad0100homh.html
------解决方案--------------------
联机丛书不是有吗?这个说起来就很长了咯
------解决方案--------------------
mdf和ndf都是物理上的数据文件,多个物理文件对应于一个逻辑上的数据库名
mdf有且只有一个且必须有,ndf可以添加多个
mdf应存储比ndf更多的信息,比如数据库本身相应参数等等

物理文件大小在不同系统中可能有一同限制,当物理文件较大时磁盘RW性能影响很大,考虑多存储方案时可以分散物理文件以提高RW性能

------解决方案--------------------
在上楼基础上再总结下:
mdf和ndf都是物理上的数据文件,其实后缀都可以使.mdf;
mdf有且只有一个且必须有,ndf可以添加多个;
mdf应存储比ndf更多的信息;
他们可以指定放在某些文件组里面,到时候数据就写入对应的文件组中的数据文件中,一般会把数据文件放在raid1 raid10 上提高写入和读取上的性能。


------解决方案--------------------
.ndf存储表数据、索引等各数据。
------解决方案--------------------
引用:
在上楼基础上再总结下:
mdf和ndf都是物理上的数据文件,其实后缀都可以使.mdf;
mdf有且只有一个且必须有,ndf可以添加多个;
mdf应存储比ndf更多的信息;
他们可以指定放在某些文件组里面,到时候数据就写入对应的文件组中的数据文件中,一般会把数据文件放在raid1 raid10 上提高写入和读取上的性能。


同意,其实问题应该是Primary和Secondary的区别,因为确实有人将Secondary文件命名为.mdf。
要数据文件包含数据库的启动信息,并指向数据库中的其他文件,每个数据库只有一个。辅助数据文件是可选择的,这个是主要区别。 当数据库非常大的时候,使用辅助数据文件可以提升性能简化管理维护。参考MSDN:Database Files and Filegroups
http://msdn.microsoft.com/en-us/library/ms189563.aspx