我是一个 ASP.NET 开发人员使用 Microsoft SQL Server 我所有的数据库的需求(包括在工作和个人项目)。

我正在考虑试 堆一些我个人的项目。

什么是一些主要差异之间 MySQLSQL Server?是的使用 存储程序 一种常见的做法在 MySQL?

任何意见或资源可你会推荐,以帮我换?

对那些有经验,是否有任何缺少的特征 MySQL?

有帮助吗?

解决方案

有一件事你必须看是相当严重差异的方式SQL服务器和MySQL实施SQL语法。

这是一个很好的 比较不同SQL实现.

例如,看一看top-n部分。在MySQL:

SELECT age
FROM person
ORDER BY age ASC
LIMIT 1 OFFSET 2

在SQL服务器(T-SQL):

SELECT TOP 3 WITH TIES *
FROM person
ORDER BY age ASC

其他提示

许多评论在这里听起来更像宗教的论点比现实生活中发言。我已经工作多年,有两MySQL和MSSQL和两者都是很好的产品。我会选择MySQL主要基于的环境中,你的工作。大多数开放源项目使用MySQL,所以,如果你进入那个方向MySQL是你的选择。如果你开发的东西。净我会选择数据库,不是因为它是更好的,但是只是因为这是大多数人使用。我其实目前的一个项目,使用ASP.NET MySQL和C#。它的工作完美的罚款。

我不能相信,没有人提到,MySQL不支持表共同表现形式(CTE)/"与"发言。这是一个非常讨厌的差异。

MySQL是更有可能有数据库的腐败问题,并且它不会修复时自动发生。我已经与MSSQL因为6.5版和不记得一个数据库中的腐败问题,把数据库的脱机。几次我曾与MySQL在生产环境中,一个数据库中的腐败问题采取整个数据库离线,直到我们跑了魔法"请修复损坏的索引"的事情从命令行.

MSSQL的交易日志系统,在我的经验,处理任何东西,包括一个电周期的或硬件故障-没有数据库的腐败,并且如果事情被搞砸了它的修复。

这是我的经验,并且我很乐意听到这个已经固定的或我们在做的事情是错误的。

http://dev.mysql.com/doc/refman/6.0/en/corrupted-myisam-tables.html

http://www.google.com/search?q=site%3Abugs.mysql.com+index+corruption

坦率地说,我不能找到一个单一的原因使用MySQL而不是MSSQL。这个问题之前,使用的是成本,但SQL服务器2005年表达的是免费的,并有很多的网络托管公司提供全托管sql服务器,用于低于5.00美元一个月。

数据库更便于使用和具有许多功能,其中不存在MySQL.

一切都在MySQL似乎要做更接近于属于在数据库,以及文件对待这种方式。特别是对于优化,则需要了解如何指标,系统的结构和优化互动,在各种情况。

将"优化"更多的是分析器。在MSSQL查询计划往往是一个惊喜(通常良好,有时不可)。在MySQL,它几乎没有什么你要求它做的,你的方式预期。这意味着你自己,需要有一个深刻地理解各个方面它可能完成。

不围绕着一个良好的交易模型(default些引擎)。

文件系统的安装是你的问题。

所有的数据库结构是你的问题-特别是各种缓的大小。

有时它似乎最好把它作为一个临时的,荣耀isam.科德和日期不进行多的重量在这里。他们会说它没有尴尬。

我认为的一个重要的事情要注意的是,以前的版本MySQL5.0没有意见,触发器,以及存储程序。

更多的这种解释的 MySQL5.0下载的页面.

@阿卜杜

最主要的我已经发现,MySQL有MSSQL是时区支助的能力很好地改变之间的时区,尊重夏令是太棒了。

比较:

mysql> SELECT CONVERT_TZ('2008-04-01 12:00:00', 'UTC', 'America/Los_Angeles');
+-----------------------------------------------------------------+
| CONVERT_TZ('2008-04-01 12:00:00', 'UTC', 'America/Los_Angeles') |
+-----------------------------------------------------------------+
| 2008-04-01 05:00:00                                             |
+-----------------------------------------------------------------+

到扭曲参与 这个答案.

作为更易于使用的'评论,我要说的一点是,它们是不同的,如果你知道一个,将有一个开销的学习。

两者都是DBMS的产品Sql服务器上是一个商业应用程序,同时MySql是一个opensouces应用程序。这两种产品包括类似的特征,然而sql服务器应用于企业解决方案,同时mysql可能符合较小的实施。如果你需要特征,如恢复、复制、granalar安全和重大的,需要sql服务器

MySql占用较少的空间磁盘上,并且使用更少的内存和cpu比sql服务器

任何人有任何好的经验 "端口"的数据库从SQL服务器 MySQL?

这应该相当痛苦!我换版本的MySQL从4.x-5。x和各种发言不起作用了,因为他们使用。查询分析器"改进"这样的声明其以前的调整性将不再工作的预期。

学到的教训的工作有500GB MySQL数据库:这是一个微妙的议题以及其他任何事情,但微不足道!

@Cebjyre.IDE是否企业的管理或管理工作室是更好的比任何东西我已经看到,迄今为MySQL.我说'更易于使用的',因为我可以做很多事情在MSSQL MySQL有不同。在MySQL我不知道如何调整查询,通过简单地寻找在查询计划或在统计数据。该指数调整导在MSSQL需要的大多数想工作,在什么样的指数都丢失或放错了地方。

一个缺点MySQL是没有最大尺寸为一个数据库。该数据库只会增加尺寸,直到填满了盘。想象一下,如果这盘共享数据库与其他用户突然间,他们的所有查询都是失败的,因为它们的数据库不能增长。我已经报告了这个问题MySQL长时间以前。我不认为它是固定的。

花一些时间工作,与MySQL从MSSQL MySQL法POV我一直在寻找自己限制在什么我可以做的。

还有古怪的限制更新表,同时refrencing同一期间表更新。

此外,更新从不会的工作和我最后一次检查他们不支持Oracle合并入法。这是一个显示塞进我和我停下来思考我会得到任何地方MySQL之后。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top