时间:2019-09-17
姓名:许东明
邮箱:leafsunshin@163
后续更新

文章目录

  • 一、三大关系型数据库对比Oracle、MySQL、SQLServer
    • 1.MySql:
    • 2.MsSqlserver:
    • 3.Oracle:
    • 4.ACCESS:
    • 5.其他
      • 注:数据库排名
  • 二、各个软件的下载
    • 1.SQL Server2008
    • 2.SQL Server2017
  • 三、SQL Server的各个版本比较
    • 1.SQL SERVER 2000
    • 2.SQL SERVER 2005
    • 3.SQL SERVER 2008
    • 4.SQL SERVER 2008 R2
    • 5.SQL SERVER 2012
    • 6.SQL SERVER 2014
    • 7.SQL SERVER 2016
    • 8.SQL SERVER 2017
  • 四、SQL Server2008 r2教程(后续更新)

一、三大关系型数据库对比Oracle、MySQL、SQLServer

1.MySql:

优点:

  1. 支持5000万条记录的数据仓库
  2. 适应于所有的平台
  3. 是开源软件,版本更新较快
  4. 性能很出色。纯粹就性能而言,MySQL是相当出色的,因为它包含一个缺省桌面格式MyISAM。MyISAM 数据库与磁盘非常地兼容而不占用过多的CPU和内存。MySQL可以运行于Windows系统而不会发生冲突,在UNIX或类似UNIX系统上运行则更好。你还可以通过使用64位处理器来获取额外的一些性能。因为MySQL在内部里很多时候都使用64位的整数处理。
  5. 价格便宜

缺点: 缺乏一些存储程序的功能,比如MyISAM引擎联支持交换功能

2.MsSqlserver:

优点:

  1. 真正的客户机/服务器体系结构
  2. 图形化的用户界面,使系统管理和数据库管理更加直观、简单
  3. 丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地
  4. 与WinNT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等,SQL Server也可以很好地与Microsoft BackOffice产品集成。
  5. 有很好的伸缩性,可以跨平台使用。
  6. 提供数据仓库功能,这个功能只在Oracle和其他昂贵的DBMS中才有。

3.Oracle:

优点:

  1. Oracle的稳定性要比Sql server好。
  2. Oracle在导数据工具sqlload.exe功能比Sqlserver的Bcp功能强大,Oracle可以按照条件把文本文件数据导入.
  3. Oracle的安全机制比Sql server好。
  4. Sql server的易用性和友好性方面要比Oracle好。
  5. 在处理大数据方面Oracle会更稳定一些。
  6. Sql Server在数据导出方面功能更强一些。
  7. 处理速度方面比Oracle快一些,和两者的协议有关.

缺点: 价格昂贵

4.ACCESS:

ACCESS是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。

优点:

  • Access部署简单方便就一个文件运用起来比较灵活主要是桌面数据库系统,他也可以开发基于自己的桌面数据库应用(UI),也可以作为前端开发工具与其它数据库搭配开发应用程序(如SQL Server,DB2,Oracle等),熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的初级用户则使用它来开发简单的应用软件。

缺点:

  1. 数据储存量小安全性不够高,加了用户级密码容易破解。
  2. C/S结构下对服务器要求很高,否则容易造成MDB损坏并发数255,但是对高强度操作适应性差,如果服务器不够好,网络不够好,编程的方法不够好,6-7个人同时访问就能导致MDB损坏或者并死,不能将VBA代码开发的软件系统直接编译成EXE可执行文件,不能脱离ACCESS或者ACCESS RUNTIME环境,该环境相对其他软件体积较大(50M左右)。
  3. Microsoft Access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。

5.其他

  1. Oracle跨平台,SQL Server只能运行在Windows上,而Windows能够安装的硬件是有限的,如Sun的Sparc服务器不能安装Windows,一些大型机、小型机也只能装UNIX,在这些高端机器上就只能跑Oracle了,这注定了Oracle就是高端数据库,而SQL Server呢,中低端。
  2. Oracle真正实现了行级锁,SQL Server也宣称实现了行级锁,但你实际去试,如果不加索引,其实是不行的。
  3. Oracle因为有多版本数据的技术,读写操作不会相互等待,虽然SQL Server 2005学习Oracle增加了snapshot机制,从而也引进了多版本数据(My SQL也有多版本数据机制,不能说一定是学习Oracle),但是实际效果感觉就是2个版本的数据,隔离级别为read committed时候,读写不再相互等待,但是把隔离设置为Serializable还是会产生读写相互等待。
  4. Oracle的事务日志归档相当方便,而SQL Server要用事务日志备份来实现,而且还要配置自动作业,启动agent服务。
  5. Oracle的数据字典丰富,使得DBA容易判断数据库的各种情况,虽然SQL Server 2005学习了Oracle的数据字典的特点,但从数量及方便程度上还是相差太多。个人感觉这是Oracle最人性化的地方。
  6. Oracle的PL/SQL比SQL Server的T-SQL功能强大很多。
  7. Oracle的触发器比SQL Server的种类多几种。
  8. Oracle的备份恢复原理相当简单明了,备份就在操作系统上拷贝数据文件好了,恢复呢,再拷贝回来,数据是旧的,不怕,应用重做日志好了。SQL Server呢,虽然原理在本质上还是这些,但操作起来麻烦多了,麻烦到让你体会不到其本质。
  9. Oracle数据库启动可以有多个阶段,使得DBA可以在不同的情况下,通过启动到特定的阶段解决一些特殊问题,而SQL Server只要服务一启动,所有数据库就都打开了。
  10. SQL Server的最大优点就是和Windows结合紧密,易用,但是要注意事情都是两面的,这些优点可能导致其致命的缺点,例如易用,使得搞SQL Server的人可以不求甚解,有时候不求甚解是没问题的,但是有时候不求甚解可能会造成灾难,特别是对搞数据库的人来说。不好意思,本来要说SQL Server的优点呢,最后也成了缺点了。

注:数据库排名

[外链图片转存失败(img-Jd2ZvUrc-1568684175618)(media/15686819588644.png)]

二、各个软件的下载

1.SQL Server2008

  • SQL Server 2008(32/64位)下载地址:
    pan.baidu/s/1eR5bAme
    密码:f3bh
  • SQL Server 2008R2(32/64位)下载地址:
    pan.baidu/s/1u4bYY7WFddIPp_2gGTw0-g
    密码: k8mb
  • 安装教程:https://app.yinxiang/shard/s44/nl/24855388/140339a2-96ea-4389-a7bd-3cb06422f888/ (需要登录印象笔记账号查看,强推印象笔记)

2.SQL Server2017

  • SQL 2017/64位下载地址:
    pan.baidu/s/1f3Q4dR6hF3j8h_qy4IlCkw
    密码: vfib
  • 安装教程:https://app.yinxiang/shard/s44/nl/24855388/66996b92-71b1-437c-b1fa-114267385b32/

三、SQL Server的各个版本比较

1.SQL SERVER 2000

  • 日志传送
  • 索引视图

2.SQL SERVER 2005

  • 分区
  • 数据库镜像(只有 SQL Server 2005 Enterprise Edition SP1 和更高版本支持异步数据库镜像。)
  • 联机索引
  • 数据库快照
  • 复制
  • 故障转移群集

3.SQL SERVER 2008

  • 数据压缩
  • 资源调控器
  • 备份压缩

4.SQL SERVER 2008 R2

  • R2标志表示这是SQL Server的一个中间版本,而不是一个主版本 .此版本目前我的客户中,使用还是非常多,性能稳定,虽然新增功能比较少:
  • 新增数据中心版,最大支持256核
  • Unicode压缩(为Unicode存储提供一个简单的压缩方案,通过Unicode压缩,可以减少Unicode字符对空间的占用)

5.SQL SERVER 2012

  • AlwaysOn
  • Columnstore
  • 索引增强的审计功能
  • 大数据支持

6.SQL SERVER 2014

这个版本的新特效特别多,和非常有用,可以多了解下:

  • 内存优化表
  • 备份加密
  • 针对基数估计的新设计
  • AlwaysOn 增强功能
  • 延迟持续性 (将部分或所有事务指定为延迟持久事务,从而能够缩短延迟)
  • 分区切换和索引生成 (官网写得Partition Switching and Indexing,感觉是有问题的,其实就是分区表的单个分区可以重建)
  • 列存储索引缓冲池扩展 就是使用SSD 扩展缓冲池
  • 增量统计信息
  • 资源调控器增强功能(–之前只能控制CPU和内存,2014 开始可以控制IO)
  • DBCC CHECK 支持maxdop 提示

7.SQL SERVER 2016

  • 全程加密技术(Always Encrypted)
  • JSON支持
  • 多TempDB数据库文件(以前也是支持的,在2014 开始就在error log提示,2016中,在安装时就可以设置。)
  • Query Store (前几天去参加微软的培训还讲到的,挺不错的功能。可以帮助解决参数嗅探的问题,数据库升级的时候也可以用到它)
  • 支持R语言
  • Live Quer y St at ist ics(可以更清晰的看到执行计划的开销(水流式))

8.SQL SERVER 2017

  • 可恢复的在线索引重建
  • 许您在发生故障(例如故障切换到副本或磁盘空间不足)之后恢复在线索引重建操作。
  • IDENTITY_CACHE option
    • 当此选项设置为OFF时,它可以避免在服务器意外重新启动或故障切换到辅助服务器的情况下,标识列值的间隙
  • CLR在.NET Framework中使用代码访问安全性(CAS),该框架不再支持安全边界。
  • 使用PERMISSION_SET = SAFE创建的CLR程序集可能能够访问外部系统资源,调用非托管代码并获取sysadmin权限
  • 图表数据库功能
  • 用于多对多关系建模
  • Read-scale availability groups without cluster
  • 可以在不依赖集群的情况下,搭建读的可用性组,分担读压力。不过此时不能实现高可用。
  • R/PYTHON 机器学习方面的功能

四、SQL Server2008 r2教程(后续更新)

更多推荐

SQL Server使用教程