【发布时间】:2011-01-14 00:02:46
【问题描述】:
我正在考虑在一个大型项目中同时使用 ASP.NET 和 MySQL。有没有人在大规模使用这两个方面有任何经验,我应该注意哪些方面?如果有可能存在兼容性问题,那么我可能准备购买 MSSQL 许可证,但我宁愿现在就走免费路线。理论上是可以的,但是将来将 MySQL 数据库迁移到 MSSQL 数据库有多容易? 谢谢
(如果需要,我会将其设为 CW)。
【问题讨论】:
标签: mysql asp.net sql-server
我正在考虑在一个大型项目中同时使用 ASP.NET 和 MySQL。有没有人在大规模使用这两个方面有任何经验,我应该注意哪些方面?如果有可能存在兼容性问题,那么我可能准备购买 MSSQL 许可证,但我宁愿现在就走免费路线。理论上是可以的,但是将来将 MySQL 数据库迁移到 MSSQL 数据库有多容易? 谢谢
(如果需要,我会将其设为 CW)。
【问题讨论】:
标签: mysql asp.net sql-server
虽然适用于mysql的性能优化技术与适用于SQL Server的性能优化技术明显不同,但Mysql作为数据库引擎还是相当有能力的。
世界上一些最大的网站使用 mysql - 我上次检查时,YouTube 运行 mysql。所以你绝对不需要商业产品来获得良好的性能。
您将将一个重要的 mysql 数据库移植到 SQL Server 或任何其他 DBMS 时会遇到很多麻烦。平台之间存在重大差异。我认为你最好选择一个平台并坚持下去。
至于 ASP.NET,嗯,根据我的经验,WebForms 可能会有点慢,尽管 ASP.NET 后端本身也非常高效,许多大型 ASP.NET MVC 应用程序(例如 StackOverflow)就证明了这一点!)
编辑——ASP.NET和mysql的组合有问题吗?嗯,这取决于。 mysql ADO.NET 连接器很可靠,性能与 SQL Server 连接器一样好。 Linq to SQL 不支持开箱即用的 mysql,虽然有 3rd-party 产品如 LightSpeed 应该做得很好,当然 NHibernate 支持它(虽然文档有点难找到,但是这仅在您开始时才重要)。
一般来说,您可能会发现 .NET 中对 mysql 相关问题的支持较少,您可能会发现 mysql 在 .NET 中是二等公民社区,但是这两种技术都很可靠,而且都完全可以相互交流。
如果你有钱,我可能会因为支持因素而选择 SQL Server,或者如果它是一个非常小的站点,我什至会从 SQL Express 开始,但同样,使用 .NET 并没有严重的问题用mysql。
【讨论】:
我没有任何关于可扩展性的信息,但是为了让您从 MySql 到 MS SQL 的过渡尽可能顺利,您需要确保在数据上使用 Db 抽象类或 IDB 类型接口接入层。最好只在使用 ANSI SQL 时使用它。
【讨论】:
继续使用 SQL Server 2012 Express Edition(免费),然后在您需要升级到 SQL Server 2012 标准版时即时进行迁移强>.
【讨论】: