今天在知乎上看到这样一个问题:”SQL Server 真的比不上 MySQL 吗?”
问题地址:https://www.zhihu.com/question/369022336
背景介绍
个人在学校学过SQL Server, 我的需求是建立小型的数据库为网页端提供数据。
网上大多数信息劝我学习MySQL,并且教程方面MySQL的教程也比SQL Server多很多。
但我在看菜鸟教程的时候发现他的教程语句是用PHP教的,这就意味着我要先去学习PHP,再去学习MySQL。
我现在的情况是时间比较紧,所以我可以用SQL Server来代替MySQL吗?不学MySQL可以吗?
回答
整理了几个不错的回答,分享一下。
晴天好心情的回答
作为一个从业者。我可以肯定并且明确的跟你说,mssql甩mysql八条街。各种方面来说。
之所以让人感觉到你问的这个原因,那是因为mysql免费,市场占有率高,用的都是互联网公司,活跃的群体也是互联网公司的这些人。
mssql在版本7的时候就支持完整的行锁,而mysql是在innodb出来以后才支持。mysql到8.0才支持瞬间加字段,还有限制。
现在开源里看好pg。Oracle地表最强,这个没有争议。mssql2019支持linux,这是一个里程碑。
刘鑫的回答
好嘛,二十多年前就有人吹mysql比mssql好“特别安全”(我问了他一句“你知道windows里所有的mysql链接都是root吗?那时候人都单纯,他回了我一句“啊?”)
还有,那时候mysql不支持外键,不支持存储过程和视图,互联网上到处都是mysql的拥护者在宣传“这些都是过时、无用的落后技术”。
后来mysql5有了这些技术,mysql又开始宣传自己“技术先进,支持视图和存储过程”。
mysql也比pg支持window function和cte大概晚了十多年吧。
Aelita的回答
MySQL主要是免费简单,在没接触过数据库的初级开发者中可以快速搭建一个数据库进行学习和使用。同时MySQL相对比较小,因此常用于中小网站。
至于SQL Server,这个东西和Oracle数据库一样。
SQL Server和Oracle除了贵没有缺点,且贵不是它的缺点,是你的缺点。
据说他姓feng的回答
上交所用的就是SQL Server。
纳斯达克也是用SQL Server(不知道现在换了没有)。
最不能出错的领域,可能是DB2、Oracle、SQL Server,但不可能是MySQL。
架构师的回答
其他人的回答已经说了很多sql server 和mysql的不同了,别的我不愿意说,因为百度多的是。
我就看不惯没有依据就说sql server 不如 mysql的, 单单从性能上sql server秒杀mysql几条街,凡是用mysql的程序员,分库分表是必须的技能,为什么呢?
因为mysql单表数据到达几千万的时候就会出现瓶颈,select 等操作明显变慢?要问为什么,这和数据引擎有关。
至于sql server呢,单表几个亿的数据都没问题, 我曾做过的一个业务, sql server单表超过21亿,查询依然是嗖嗖快。
至于其他方面,mysql开源免费这是它最大的优势,要不然那么多人用他干嘛,而且好多大厂也在用,图的就是个免费而已。
深秋的黎明-禁言的回答
Sql Server、Oracle和MySql我都用过。对于我来说,Sql Server是最好用的数据库,原因如下:
1:Sql Server备份还原最方便
可以使用备份文件还原,也可以通过附加数据库还原。MySql和Oracle那种导入导出的还原方式,数据量一大就等半天,频繁使用的话简直受不了。
2:Sql Server恢复误删数据最方便
虽然这个操作很少用,但用起来确实心跳加速,Sql Server很容易找到第三方傻瓜式界面操作的数据恢复工具,只要日志文件正常,不是truncate、drop就一定能完全恢复。可能是我技术太菜,使用Oracle想要恢复误删数据,上网查了半天搞了半天也没搞好,闪回搞半天也没闪回到位。
3:Sql Server是和C#整合得最好的数据库
Sql Server的字段类型,在C#中都能找的相对应的数据类型,其他数据库在这方面有欠缺。
不过话说回来,Sql Server最大的缺点就是收费了,对我这种低等码畜来说是天价。
原来忘记了,现在经回答用户提醒,Sql Server是有免费版Sql Server Express,这里顺便贴一下Express版的使用限制:
Constrained to a single CPU (in 2012, this limitation has been changed to “The lesser of one socket or four cores”, so multi-threading is possible)1GB RAM4GB database size (raised to 10GB in SQL 2008 R2 and SQL 2012) per database
大海的回答
1、SQL server和C#外加visual studio集成环境,开发C/S软件,⽤熟悉了⼀路爽上天。
2、SQL server图形化管理器,各种数据库管理功能,⼀般来说只有你⽤不到,少有你想不到。
3、奈何⼩型商⽤项⽬成本过⾼,MS SQL 放在外⽹,CPU要买⽆限版本,windows要买正版,开发环境也要付费。微信上MS销售问上⼀句报个价,⼀般⼩客户直接吓跑。
4、跑到Linux环境下,Java框架,mysql数据库,⼀路免费⾹不⾹?还有⼤批轮⼦奉上。
我超级喜欢VISUAL STUIO + C#+MSSQL,⼏个最满意的C/S架构就是这套东⻄构建的。但是为了恰饭,还得做java+mysql。。。中⼩客户喜欢。