开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 5343|回复: 7
收起左侧

[Mysql] 转贴MySQL和SQLServer比较

[复制链接]
结帖率:0% (0/1)
发表于 2011-7-27 10:26:42 | 显示全部楼层 |阅读模式   河北省沧州市
转发的希望与大家共同学习

对于程序开发人员而言,目前使用最流行的两种后台数据库即为MySQL and SQL Server。这两者最基本的相似之处在于数据存储和属于查询系统。你可以使用SQL来访问这两种数据库的数据,因为它们都支持ANSI-SQL。 还有,这两种数据库系统都支持二进制关键词和关键索引,这就大大地加快了查询速度。同时,二者也都提供支持XML的各种格式。除了在显而易见的软件价格上的区别之外,这两个产品还有什么明显的区别吗?在这二者之间你是如何选择的?让我们看看这两个产品的主要的不同之处,包括发行费用,性能以及它们的安全性。

根本的区别是它们遵循的基本原则

二者所遵循的基本原则是它们的主要区别:开放vs保守。SQL服务器的狭隘的,保守的存储引擎与MySQL服务器的可扩展,开放的存储引擎绝然不同。虽然你可以使用SQL服务器的Sybase引擎,但MySQL能够提供更多种的选择,如MyISAM, Heap, InnoDB, and Berkeley DB。MySQL不完全支持陌生的关键词,所以它比SQL服务器要少一些相关的数据库。同时,MySQL也缺乏一些存储程序的功能,比如MyISAM引擎联支持交换功能。

发行费用:MySQL不全是免费,但很便宜

当提及发行的费用,这两个产品采用两种绝然不同的决策。对于SQL服务器,获取一个免费的开发费用最常的方式是购买微软的Office或者Visual Studio的费用。但是,如果你想用于商业产品的开发,你必须还要购买SQL Server Standard Edition。学校或非赢利的企业可以不考虑这一附加的费用。

性能:先进的MySQL

纯粹就性能而言,MySQL是相当出色的,因为它包含一个缺省桌面格式MyISAM。MyISAM 数据库与磁盘非常地兼容而不占用过多的CPU和内存。MySQL可以运行于Windows系统而不会发生冲突,在UNIX或类似UNIX系统上运行则更好。你还可以通过使用64位处理器来获取额外的一些性能。因为MySQL在内部里很多时候都使用64位的整数处理。Yahoo!商业网站就使用MySQL 作为后台数据库。

当提及软件的性能,SQL服务器的稳定性要比它的竞争对手强很多。但是,这些特性也要付出代价的。比如,必须增加额外复杂操作,磁盘存储,内存损耗等等。如果你的硬件和软件不能充分支持SQL服务器,我建议你最好选择其他如DBMS数据库,因为这样你会得到更好的结果。

安全功能

MySQL有一个用于改变数据的二进制日志。因为它是二进制,这一日志能够快速地从主机上复制数据到客户机上。即使服务器崩溃,这一二进制日志也会保持完整,而且复制的部分也不会受到损坏。

在SQL服务器中,你也可以记录SQL的有关查询,但这需要付出很高的代价。

安全性

这两个产品都有自己完整的安全机制。只要你遵循这些安全机制,一般程序都不会出现什么问题。这两者都使用缺省的IP端口,但是有时候很不幸,这些IP也会被一些黑客闯入。当然,你也可以自己设置这些IP端口。

恢复性:先进的SQL服务器

恢复性也是MySQL的一个特点,这主要表现在MyISAM配置中。这种方式有它固有的缺欠,如果你不慎损坏数据库,结果可能会导致所有的数据丢失。然而,对于SQL服务器而言就表现得很稳键。SQL服务器能够时刻监测数据交换点并能够把数据库损坏的过程保存下来。

根据需要决定你的选择

对于这两种数据库,如果非要让我说出到底哪一种更加出色,也许我会让你失望。以我的观点,任一对你的工作有帮助的数据库都是很好的数据库,没有哪一个数据库是绝对的出色,也没有哪一个数据库是绝对的差劲。我想要告诉你的是你应该多从你自己的需要出发,即你要完成什么样的任务?而不要单纯地从软件的功能出发。

如果你想建立一个.NET服务器体系,这一体系可以从多个不同平台访问数据,参与数据库的管理,那么你可以选用SQL服务器。如果你想建立一个第三方站点,这一站点可以从一些客户端读取数据,那么MySQL将是最好的选择。 

这两者数据库都能够在.NET或J2EE下运行正常,同样,都能够利用RAID。
=============================================================
看了一瞥发的关于mysql和sqlserver的比较,深有体会,谢谢一瞥的贡献。
     我也想说说关于mysql和sqlserver的比较,完全是针对实际的使用经验得来的。

1 性能:
这可能是所有DBA最关心的。mysql的读写性能确实一流,即使针对大数据量也没问题,但前提是必须使用简单查询,就是最好不要使用函数/join/group等方式查询。而sqlserver的简单查询速度不如mysql,但复杂查询时,性能降低的不多,可见,sqlserver的查询优化作的可能更好。
但你可以通过针对性的表结构设计来避免mysql进行复杂查询(多冗余,少关联)
插入速度也很快。为了提高性能,我甚至使用了不用日志的方式,确实快,哪怕大量并发也没问题。

2 对机器配置的要求
mysql对机器配置要求不高(于sqlserver相比)。对于大表的ϖ作,一台pd925/2Gram/sataII硬盘//linux2.6内核 的机器可以轻松处理几千万条记录的数据表。
而对于sqlserver,我们使用了 双xeon5110/4Gram/raid10(6块sataII硬盘)/win2000ADserver的机器,数据表也有几千万条记录,结果负荷一高就崩溃了,很不稳定。

3 安全性
感觉mysql5+linux2.6的安全性高于win2ksp4+sqlserver2000sp4,mysql漏洞少,我们有一台sqlserver,因为某些功能必须开放1433端口,虽然用了防火墙并作了安全配置,但还是被黑了:(
因为mysql的安全配置比较透明简单,权限明确,不易出漏洞。而sqlserver的用户配置是和ϖ作系统绑定的,很容易出问题。此外由于不是开源系统,1433端口暴露的安全问题谁也说不清,最好是将其完全放入内网,其他的都是扯淡。

4 可配置性
mysql可配置性很好,基于文本文件,很细很清晰。而sqlserver的很多配置必须用特定的存储过程完成,较复杂,不清晰(虽然基本配置很简单,有图形界面)

5 功能
这点mysql与sqlserver确实没法比,如存储过程/触发器/丰富的函数/图形化的管理界面/自动维护的计划任务/与开发工具的集成等等

6 价格
这不用说了,一个免费,另一个贵的吓人

上面可能是大家经常遇到的一些问题。
总结起来,sqlserver体现了ms产品的一贯特点:容易上手,编程方便(sqlserver内置的查询优化作的确实不错,对于一些数据库新手来说方便很多——即你不必对表结构作过多优化也能得到不错的性能),因此倍受“揽活公司”(我是这么称那些开发Mis项目的公司的)的喜爱,你完全可以集中注意力在应用的实现上,而且,小项目意味着小数据量,一般的服务器也能应对了;而大项目往往意味着大的数据量,好在一般预算也高,可以选择更高档的服务器来伺候Sqlserver。
但数据量大,而预算有限,那最好用mysql,您辛苦点,多研究一下mysql和Linux系统,表结构设计也最好找有mysql经验的人来做,做好了,能够得到超出你想象力的效果。但如果只能买低端服务器,而要用sqlserver处理大量数据,那就等死吧。

结帖率:0% (0/3)
发表于 2011-8-3 16:19:17 | 显示全部楼层   广东省湛江市
MSSQL和MYSQL的比较我觉得,这样比较没有意思,无关乎是安全,性能,等方面
建议楼主整理一些MSSQL和MYSQL在易语言中的使用技巧和实现的
甚至可以用易语言来比较MSSQL和MYSQL
如同一功能的实现,用MSSQL和MYSQL是如何实现的,实现出来的性能条方面如何等
关于这方面的评测将更多人去关注的
回复 支持 反对

使用道具 举报

发表于 2011-8-4 16:29:19 | 显示全部楼层   北京市北京市
多萨法撒旦法撒旦
回复 支持 反对

使用道具 举报

发表于 2012-5-6 23:35:48 | 显示全部楼层   湖北省荆门市
语句好像是翻译的 很生硬
回复 支持 反对

使用道具 举报

结帖率:92% (154/167)

签到天数: 3 天

发表于 2012-5-7 17:14:59 | 显示全部楼层   安徽省池州市
我用MSSQL顺手一些
回复 支持 反对

使用道具 举报

发表于 2012-5-8 20:00:32 | 显示全部楼层   江苏省宿迁市
“sqlserver的用户配置是和ϖ作系统绑定的”请问这中间的“和”与“作”之间的符号代表什么?{:3_234:}

点评

是操作的操   河北省沧州市  详情 回复 发表于 2012-7-25 08:29
回复 支持 反对

使用道具 举报

结帖率:100% (5/5)

签到天数: 22 天

发表于 2012-7-22 04:21:29 | 显示全部楼层   广东省湛江市
好贴额
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
 楼主| 发表于 2012-7-25 08:29:33 | 显示全部楼层   河北省沧州市
不抽烟的小胖纸 发表于 2012-5-8 20:00
“sqlserver的用户配置是和ϖ作系统绑定的”请问这中间的“和”与“作”之间的符号代表什么?{:3_234:}

是操作的操
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表