我需要开发一个面向中型Inernet的网站(例如,少于1000个用户),用于信息共享和简单的工作流程。由于预算限制,我选择免费数据库。由于开发人员熟悉.Net,C#/ ASP.Net是选择的编程语言。我使用Windows Server 2008 x64版本作为操作系统。
我想知道在我的情况下,使用MySQL或SQL Server Express(免费)的优缺点?我认为结论可能与不同的人/观点不同,但学习事实(利弊)将有利于我做出决定。
提前谢谢, 乔治答案 0 :(得分:8)
如果SQL Server Express满足您的需求而不会遇到其限制,并且您的开发人员/管理员最熟悉MS SQL,那么请使用它。
否则,请使用MySQL。
在这些情况下,总体策略通常是使用您所知道的,只要它能满足您的技术需求。
SQL Server Express的限制是:
SQL Server Express仍然使用与其他所有版本相同的数据库引擎,并且除了上述限制外,它的性能不受限制。
答案 1 :(得分:4)
考虑到您为代码和操作系统提交了Microsoft堆栈,SQL Server Express感觉非常适合。您可能能够在端到端的Microsoft堆栈与包括MySQL的混合堆栈之间找到更好的社区支持。
SQL Server Express有一些限制,但如果您的项目达到成为问题的规模,希望它将产生足够的流量/收入来支持升级到非免费的SQL Server产品。
答案 2 :(得分:2)
MySQL可以毫无怨言地在Windows上运行,但在UNIX和类UNIX系统上表现更好。通过在64位处理器上使用MySQL,可以获得额外的性能提升。
请注意,该部分中的某些语句可能被认为有点不诚实 - 例如“MySQL已证明其基本表格格式更快,MyISAM”,因为MyISAM似乎不支持“外键约束”之类的内容“,那些有助于使关系数据库关系自我实施的小事。
与许多事情一样,在谈论绩效时需要考虑很多因素。
答案 3 :(得分:1)
取决于服务器上的负载量和数据库的大小。
SQL Server Express有一些限制,包括:
- 最大1GB RAM(仅此一项可能是决定性因素)
- 1个CPU
- 4GB数据库大小限制
按版本here列出了完整的SQL Server功能列表 仅凭这三点,您就能够立即告诉您是否必须从单词go中排除SQL Server Express。
答案 4 :(得分:1)
为什么不考虑postgresql?它是免费且可靠的ADO.Net提供商驱动程序: