SQL Sever真的比不上MySQL 吗?

教程大全  / 只看大图  / 倒序浏览   ©

#楼主# 2020-2-29

跳转到指定楼层

马上注册,分享更多源码,享用更多功能,让你轻松玩转云大陆。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
个人在学校学过SQL Sever, 我的需求是建立小型的数据库为网页端提供数据,网上大多数信息劝我学习MySQL,但我在看菜鸟教程的时候发现他的教程语句是用PHP教的,这就意味着我要先去学习PHP,再去学习MySQL,我现在的情况是时间比较紧,所以我可以用SQL Sever来代替MySQL吗?不学MySQL可以吗?
分享淘帖
回复

使用道具

123456879 发表于 2020-2-29 16:39:57
SQLServer比不上mysql? 这是谁写的笑话一点都不可笑!
mysql除了是使用免费的,其他任何一点都比不上SQLServer!
一个是商业很贵的数据库软件一个是免费开源随便用的怎么比啊.
你如果愿意完全可以用sqlserver, 但是提醒你的是没必要吊死在商业数据库上
回复

使用道具 举报

123456879 发表于 2020-2-29 16:54:52
上交所用的就是SQLServer
纳斯达克也是用SQLServer(不知道现在换了没有)


最不能出错的领域,可能是DB2、Oracle、SQLServer,但不可能是MySQL。
回复

使用道具 举报

123456865 发表于 2020-2-29 17:44:15
数据库在系统的重要程度已经越来越弱了,各种orm框架,你把数据库视为存东西的地方就行了,至于什么数据库,真的无关紧要。
(更新:评论区很多人理解有歧义,上一段说的是“用什么数据库”这个事情在一个系统里面的重要性越来越弱了,而不是“数据库”这个概念不重要了)
扯远了,回到正题,很多人还以为mysql才跨平台,现在mssql也已经跨平台了,这已经是4年前的事情了,另外mssql也有免费版,dev版免费全功能,但是不得用于正式生产环境,就不说了,但是有express版呀,虽然有10g的限制,但是对于中小型应用(文件不存数据库,数据生产频率小)来说,不是问题。
另外涉及到一个背锅的问题,oracle那么贵,为什么还有那么多企业用?因为对于他们来说,许可证的价格在数据面前不值得一提,收费也是相对的,我收了你的钱,你用我的数据库软件出了什么问题,我可是要承担责任的,而且我非常搞不懂的一点是,买数据库许可证的钱,是公司出的,又不是要从你的工资里面扣,那它收不收费和你开发有什么关系,用mysql,要是出现了什么状况,那不从开发里面找个人开背锅?
另外,现在是云服务的时代,数据库收不收费已经不是重要的了,因为你如果买云服务,数据库的许可证已经包含在里面了。而且这时候,我们发现,mysql和mssql的定价有很多有趣的现象,先拿azure来说吧,mssql肯定是azure的当家产品,贵一些无可厚非,拿同配置来说,都是4个vcore,mssql 1.1美元一小时,mysql 0.35美元一小时,考虑到mssql收费,mysql免费,这样的定价还算合理。但是转眼切换到国内最常用的阿里云,这就完全反过来了,我们知道阿里的mysql是很牛逼的,牛逼到阿里云在同等配置下,mysql的价格比mssql还要贵,都是4核8g,mysql要8000+,而mssql只要5000+,这时候你要说mssql的劣势还是价格吗?
接着说说性能,我认为性能是最不需要去考虑的东西,关系型数据库发展了那么多年,各种优化算法其实把每种数据库都几乎优化到了极致,性能的差异真的很小很小,小到几乎可以忽略不计,当然,因为实现的不同,可能有些方面mssql快一些,有些mysql快一些,综合起来其实都差不多,不过mysql有一点要注意的是连接表的性能很差,《阿里巴巴开发手册》里面有提到过一个超过三个表禁止join,没错,就是针对你,mysql。
那既然性能都差不多,mssql凭什么敢收费?当然是两者功能上的差异,mssql严格意义来说,不仅仅是一个数据库,而是数据库及其配套服务的结合,mssql自带数据仓库,可以直接进行大数据分析,实现商业智能(BI),而mysql,仅仅只是个数据库,要进行大数据分析,需要借助其他工具,这样很像office和wps的关系,wps有常用的word,excel,ppt,但是这三样在office仅仅只是其中的一部分。因此,mssql提供的是一条龙服务,mysql仅仅满足了你最迫切的需求,收不收费的区别就在这里。
现在是云服务时代了,我甚至可以连底层系统都不要管,直接用你的云服务譬如网站服务,容器服务,数据库更不用说了,我只希望安安静静的开发,数据库的管理云服务帮我做就好了,什么高可用,灾备,最好连优化都帮我做了(azure sql可以统计你的sql语句,找出常用但是耗时高的语句分析,自动帮你建索引,mysql云托管没用过不知道)。做好自己的本职工作,好用就行,至于免不免费,关我什么事?!
回复

使用道具 举报

音乐之家1 发表于 2020-2-29 19:10:58
DB-Engines RankingOracle,MySQL,MSSQL,PGSQL这几个是使用最多的关系数据库,可以说,都是优秀的产品.
其中MySQL和PGSQL是开源数据库,体现在分支很多,比如MySQL的一些分支:
Percona Server: XtraDB引擎,TokuDB引擎,都是事务型引擎,XtraDB可以理解为InnoDB的改进型.
MariaDB: Aria引擎,这个引擎可以理解为MyISAM的改进型.
还有像阿里云的AliSQL(开源)和亚马逊的Aurora(不开源),也都是基于MySQL的代码改的,针对云场景进行优化.像支付宝的OceanBase,外围也是兼容MySQL的驱动和SQL语法以及通信协议,可以把OceanBase理解为一个分布式事务引擎和新的服务架构,跟MySQL+InnoDB不同,更加复杂.
也就是说,MySQL用于中大型项目,都没有问题.小型没什么并发的项目,甚至可以考虑用SQLite这种小型数据库.
MySQL代码开源,平台支持也更多,比如在ARM架构的树莓派Raspbian上,执行 apt-get install mysql-server 就能快速安装MySQL数据库,快捷方便.
PHP内置了PHP官方开发的MySQL驱动mysqlnd,对MySQL的支持是开箱即用的,而其他数据库,则需要先安装那些数据库的驱动,PHP才能进行数据库操作.所以教程才推荐学习PHP+MySQL.
回复

使用道具 举报

冀苍鸾 发表于 2020-2-29 20:33:47
都是成年人了,要明白,任何东西都有优缺点。


建议去谷歌搜索这两款数据库的异同。
回复

使用道具 举报

忆困血馆闻 发表于 2020-2-29 21:02:01
选数据库看的是license。
数据库厂商未来可能的政策变化,都会对成本造成影响,所以MySQL被Oracle收购后,PostGre就火了,就是因为Oracle可能会修改MySQL的license。
回复

使用道具 举报

忆困血馆闻 发表于 2020-2-29 22:11:05
Sql Server、Oracle和MySql我都用过。对于我来说,Sql Server是最好用的数据库,原因如下:
1:Sql Server备份还原最方便
可以使用备份文件还原,也可以通过附加数据库还原。MySql和Oracle那种导入导出的还原方式,数据量一大就等半天,真的受不了。
2:Sql Server恢复误删数据最方便
虽然这个操作很少用,但用起来确实心跳加速,Sql Server很容易找到第三方傻瓜式界面操作的数据恢复工具,只要日志文件正常,不是truncate就能完全恢复。可能是我技术太菜,使用Oracle想要恢复误删数据,上网查了半天搞了半天也没搞好,闪回搞半天也没闪回到位。
3:Sql Server是和C#整合得最好的数据库
Sql Server的字段类型,在C#中都能找的相对应的数据类型,其他数据库在这方面有欠缺。






不过话说回来,Sql Server最大的缺点就是收费了,对我这种低等码畜来说是天价。
回复

使用道具 举报

确实是个孩子谥 发表于 2020-2-29 22:22:06
各有优势吧,MySQL开源免费,支持多平台,多种存储引擎可以根据性能需求灵活切换,可以允许过滤掉用户,表,行等。而SQLserver更安全,查询语法相对简单,备份更加快捷。
1、开源
MySQL是一个开源关系数据库管理系统(RDBMS);而SQL Server不是开源的,是商业的。
2、程序
MySQL主要用C和C ++编程语言编程。SQL Server主要用C ++编程,但在C语言中也有一些部分。
3、平台
SQL Server仅支持Linux和Windows平台,主要用于.Net应用程序或Windows项目。与之相比,MySQL支持许多平台,它主要用于PHP项目或应用程序。
4、语法
MySQL语法有点复杂;SQL Server语法更简单易用。
5、执行查询
在MySQL中,一旦执行了查询,就无法在中途取消查询。在SQL Server中,可以在执行后的中途取消查询。
6、存储引擎
在MySQL中,有多个存储引擎可以让开发人员根据性能更灵活地为表使用引擎。InnoDB是一种流行的存储引擎。SQL Server只能使用一个或只有一个存储引擎。
7、备份
在使用MySQL时,开发人员必须通过将所有数据提取为SQL语句来备份数据。由于执行了多个SQL语句,使得数据恢复非常耗时。而SQL Server在备份数据时不会阻止数据库,这使得用户能够备份和恢复大量数据,而无需花费额外的时间和精力。
8、安全
两个企业数据库系统都设计为二进制集合,MySQL使开发人员能够在运行时通过二进制文件操作数据库文件。它甚至允许在运行时由其他进程访问和操作数据库文件。但SQL Server不允许任何进程访问或操作其数据库文件或二进制文件。它要求用户通过运行实例来执行特定功能或操作文件。因此,黑客无法直接访问或操纵数据。设计规则使 SQL Server比MySQL更安全。
9、支持的编程语言
MySQL和SQL Server都支持多种编程语言。它们都支持PHP,C ++,Python,Visual Basic等等但MySQL还支持Perl,Scheme,
Haskel和Eiffel等编程语言。
10、过滤
MySQL允许用户以多种方式过滤掉表,行和用户,但它要求用户按个别数据库筛选出表,行或用户。在过滤数据时,开发人员必须通过运行多个查询来单独过滤数据库表。而SQL Server是利用基于行的过滤,基于行的筛选选项按数据库方式筛选数据库上的数据。并且将过 滤后的数据存储在单独的分发数据库中。


综上所述,没有谁比谁更好,只有谁更合适。比如大厂类似上交所用的就是SQLserver,因为它更安全,而大多数小企业则更多用的是MySQL,因为开源免费,还支持多平台多语言。所以企业用什么数据库,一看企业的经济实力,二是业务需求,没有更厉害,只有更适用。
回复

使用道具 举报

心随674 发表于 2020-2-29 23:28:45
小伙子,你这个想法很危险,SQL Server不管是在稳定性,易用性,安全性,维护性,性能,甩MySQL八条街好不好
回复

使用道具 举报

幸福341 发表于 2020-2-29 23:43:14
针对题主的提问,mysql和mssql,工具、权限、存储过程的差异不小。但在编程使用上的区别很小。毕竟程序中,也就写一些增删改查的SQL语句,使用不同数据库,只不过是某些语法、数据类型的细节差异而已,用搜索引擎查一下,大不了多花一天半天的时间。如果是ORM框架,可以直接忽略。


反过来,配置php访问数据,mysql教程例子丰富很多。折腾php访问mssql的话,这半天一天你不一定搞的定。
回复

使用道具 举报

123456809 发表于 2020-3-1 00:32:20
就是在钱的问题上比MySQL差了太多,这个钱还要包括Windows的费用,对小公司来说承担不起啊
回复

使用道具 举报

ffycxyw2274436 发表于 2020-3-1 02:05:49
不不不   sql server其实也听强悍的,但是无法完全跨平台。另外,还存在收费问题,所以大家才力推MySQL,二者各有各的优势。只要你会一种,那么基本可以轻松的转移到另一种上面,毕竟都是关系型数据库。完全没必要这么纠结,
回复

使用道具 举报

敢想敢做敢拼 发表于 2020-3-1 02:12:52
数据库这玩意,只要会了一个,在转学其他就很容易了,几乎没有难度。不用纠结这些东西。
回复

使用道具 举报

米老鼠和蓝精鼠v 发表于 2020-3-1 02:55:35
微软的东西,最大的一个毛病就是不可靠,不知道哪一天在什么地方就会出妖e子。
sql server要不是因为基础是当年sybase打下的,现在估计还要烂的多。
我们机房里sql server不多,然而就是这不多的几台,都会时不时出点事故,上一次是有张表有数据读不出来,有个程序员自己百度了方法处理了一下,没处理好,等到dba再去看的时候已经没办法了,只有重装。折腾了两三天,幸好不是关键应用。
你要为网页端提供数据,就算是微软自己的http://asp.net,应该也可以很轻松使用mysql的,这一点应该不用担心。并不是只有php才能使用mysql。
回复

使用道具 举报

David902 发表于 2020-3-1 03:19:20
真的
Microsoft SQL Server vs. MySQL Comparison SQL Sever真的比不上MySQL 吗?-2.jpg SQL Sever真的比不上MySQL 吗?-3.jpg https://db-engines.com/en/ranking_trend
    mysql 开源,免费使用mysql 跨平台
作为一个数据库,怎么可能只支持一种服务端语言呢?除了PHP, 市面上主流的高级语言都可以使用 mysql。
回复

使用道具 举报

六翼天使494 发表于 2020-3-1 04:48:12
这个问题,我觉得有必要画大一点:要不要去ioe化?
究竟是使用商业数据库还是开源数据库其实问题的本质是要不要去ioe化?
我几乎把所有回答都看了一遍,各位答主没有一个是做dba的,更没有mssql的dba来回答这个问题。我觉得只有同时做过mysql和那咋了dba的答主才可以站出来指点江山吧?所以各位看官也就看看笑笑得了,别认真。


所以为什么国企偏爱ioe,互联网公司偏爱开源。这其实是国企缺乏技术文化和技术管理的整套措施而给自己找了个台阶下。在一线it公司中你用centos,可以!但是公司必须有孰知centos源码的大牛给你撑腰,别觉得我在胡扯生产环境中你要为任何一个坑背锅的。于是互联网公司为国家培养了很多it技术人才,不仅有孰知开源os源码的大牛,也有孰知开源数据库的大牛,甚至研发面试都要扯一扯mysql内核。这就形成了正向的良好循环,互联网公司只是把交给老外的学费给我国的it工程师发了工资、交了社保。
我从这个角度给你讲,你觉得开源数据库好还是商业数据库好?
当你掌握mysql内核以后,你有足够的能力写个demo版的mysql,那天看它不爽随时可以根据业务定制化一个自用mysql。而国企永远都体会不到这种快乐。说阿里云mysql比azrue 维护费用贵的哥们,显然不知道mssql和Oracle有昂贵的咨询费吧,按小时算的一天三万多。


真是何不食肉糜。
回复

使用道具 举报

poney 发表于 2020-3-1 06:14:47
SQL Server本身在性能和安全性等方面,是强于mysql的,但为什么mysql这么火,而ms sql却江河日下呢?
原因无非有以下几个方面:
1、费用:MS SQL收费,商业版费用很高,一般的中小企业可能都不会考虑去购买付费版;mysql免费,并且性能等层面也可以满足中小企业的使用需求;
2、部署要求:mysql安装包很小,并且安装十分简答,支持集成环境去集成,例如lnmp/lamp、wdcp等等,这在一定程度上拉高了用户量;而MS SQL安装包较大,集成基本不存在的;并且MS SQL安装对服务器硬件要求较高;而对于中小企业网站来说,完全没必要买一台高配服务器来跑MS SQL;
3、开源:mysql开源,很多企业可以基于mysql进行开发,并且在原有mysql基础上进行优化,对于中大型企业来说,mysql是可以掌控的,可以自研很多工具让数据库更好用;而MS SQL就不行,官方不更新不出新工具,你就得用那些难用到死的工具;不开源那么扩展难度就会大大增加,集群费用超级贵,所以中大型企业自然不愿意选择MS SQL;
综合以上原因吧,MS SQL估计会像Oracle一样,日渐式微!
回复

使用道具 举报

无人岛屿颈 发表于 2020-3-1 06:29:25
比不比得过我不知道 但是sqls的中文翻译和易用程度还有安装占用我感觉就是要开战斗机一样的复杂墨迹。
用mysql的时候我感觉比超级马里奥还简单,而且够轻量。我也不是很懂,反正我难以理解用sqls的人,甚至吐槽是不是有病....
回复

使用道具 举报

我爱萨其马虞co 发表于 2020-3-1 07:58:49
以微软的软件开发能力,多出来的那几百MB的安装包你觉得会是负优化代码吗?如果不是,那就比MYSQL强得多了。
回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于作者

123456809

幼年猿

  • 主题

    7

  • 帖子

    87

  • 关注者

    0

Archiver|手机版|小黑屋|云大陆 | 赣ICP备18008958号-4|网站地图
Powered by vrarz.com!  © 2019-2020版权所有云大陆