2009-05-29 52 views
0

目前我的网站是使用SQL Server数据库在ASP.NET Webforms中编写的。我打算构建一个ASP.NET MVC应用程序不是因为它更好,而是因为我想学习这项技术。我的问题更具体到数据库。我可以创建数据库并通过Web界面的导入功能将我的SQL表导入到SQL数据库,或者我可以使用“本地”数据库MDF文件。我喜欢使用MDF文件的想法,因为它更易于备份和处理。我的网站没有很多流量......事实上,我可能是唯一的用户。 :)现在是这个问题。使用MDF SQL Server文件而不是“数据库”会有性能下降吗?

通过使用本地SQL Server MDF文件替代我的数据库,可以获得多少性能?

回答

3

有效无。或者只是让数据库与网站在同一个盒子上运行。它仍然是一个Sql Server Express数据库。从生产角度来看,您可能希望数据库运行在专门用于服务数据库的单独盒子上。但是在代码方面,唯一的区别是你的连接字符串。

2

SQL Server为其服务器上的每个数据库使用一个MDF文件。 MDF文件和'数据库'之间没有区别,因为'数据库'无论如何都存储在MDF文件中。

1

表现明智,你不应该看到差异。

最大的问题是生产部署和管理。管理标准数据库比动态附加的.mdf更容易。

+0

请记住,我只是一些想运行网站的人。除了用于备份数据库的下载之外,不会有太多的管理。我将不得不下载数据库,修补它然后上载补丁数据库。我假设这将是更新表的过程。 – 2009-05-29 19:14:43

0

另外,不要忘了你的虚拟主机也必须支持这一点。而且由于SQL Server Express是唯一支持“用户实例”数据库的SKU,因此主机必须安装Express才能按原样使用它。 OTOH,您可以用这种方式进行开发,然后部署数据库并在部署到Web主机时更改连接字符串。

0

SQL Server的Express版本超出正常资源限制的唯一区别是SQL Express引擎连接到MDF文件时可忽略的启动成本,它的例程检查文件完整性和事务日志。

这应该只发生在应用程序启动,而不是每个请求。

相关问题