一直以来打算整理 SQL Server 补丁资料,刚好今天有事醒的早,于是把之前的资料整理一下。在入DBA这坑以来,开始那一两年,甚至只知道补丁安装最新 Service Package (SP)就行了,也曾一度混淆 SP 与 Cumulative Update(CU)。走过的坑,还是整理给后来人吧。
首先了解几个定义:
RTM : 表示 Release to Manufacturing ,这是产品的原始发布版本,当从光盘或 MSDN 下载的默认版本。不过现在下载 SQL Server 版本时,也有集成了 SP 的版本。
Hotfix :需要修复的某个问题,每年 SQL Server 会出现许多bug或漏洞,这些问题d修复则被定义为 Hotfix。
Cumulative Update(CU):累计更新包,由 Hotfix 组成。CU 每8个星期发布一次,所以会有 CU1、CU2……等,每个最新的CU版本都包含之前的CU中的Hotfix。 CU 的安装基于原始版本(RTM)或 SP。
Service Package (SP): SP是集成 Hotfix 最多的包,这些 Hotfix是经过官方完整测试过的。SP
是 SQL Server 产品版本最大的一次补丁文件,每12至18月发布一次。
每一个最新的 CU 都包含之前的 CU 集成的问题修复,每一个 SP 也都包含之前 SP 包含的问题修复。现在看一张图,就知道 SQL Server 是怎么修复补丁了!
以 SQL Server 2014 为例
(用备份的概念可以理解为: RTM 相当于完整备份,SP 相当于差异备份,CU 相当于更小的差异备份,GDR 则相当于备份某张表)
由图可看,如果 SQL Server 2014 刚发布就我们就很快使用,那我们就经常遇到各种可能的问题,所以最好等上一两年再使用,当然有些问题可以忽略。但是,最好打上最新的补丁。
GDR (General Distribution Release)与 CU 不一样,每个最新的CU都包含基于 RTM/SP 以来的累计更新, GDR 仅仅包含严重的更新。
过去我只是用 SP 修复这些问题,但是即使安装最新的 SP 后,后来又确认了一些问题。如上图 SQL Server 2014 SP2 后,也就是现在(截至 2017-04-21),又确认出了 二十多个Hotfix(Cumulative Update 5 for SQL Server 2014 SP2)。也许不久, SQL Server 2014 将会把 SP2及最新的CU 的Hotfix合并为 SP3。
现在测试:
注意,打补丁前最好备份好数据库,包括系统数据库!
查看当前版本,好确定需要下载哪些补丁:
主版本为 SQL Server 2014 ,按最上面的图显示,先下载最新的 SP2 :
SP2详细介绍:SQL Server 2014 Service Pack 2 release information
SP2下载地址: Microsoft® SQL Server® 2014 Service Pack 2 (SP2)
下载文件为 SQLServer2014SP2-KB3171021-x64-CHS.exe ,双机进行安装。
安装完成!再查看版本:
现在变成 SP2 了,已经安装完成,生产环境最好重启一次服务器。
接下来应该安装 Cumulative Update 5 ,此处为了测试,现在安装 SQL Server 2014 Service Pack 2 GDR。
GDR下载地址:SQL Server 2014 Service Pack 2 GDR 安全性更新 (KB3194714)
GDR下载文件为:SQLServer2014-KB3194714-x64.exe,双机进行安装,操作与安装 SP 一样!
现在接着安装 Cumulative Update 5 ,此 CU5 基于 SP2 ,因此前面先安装 SP2 。
CU5 详细介绍:Cumulative Update 5 for SQL Server 2014 SP2
CU5 下载地址:Microsoft® SQL Server® 2014 SP2 最新累积更新 SQL Server 2014 SP2 累积更新包 5 - KB4013098 (当时最新为 CU5)
CU5 下载文件为 SQLServer2014-KB4013098-x64.exe ,双机进行安装,操作与安装 SP 一样!
查看 windows 更新程序,可以看到 SP2、CU5、GDR 三个更新。
对于回滚,可以按反序逐个右键卸载!卸载后必须重启服务器!
若在卸载 Cumulative Update 5 的时候弹出以下提示,报表sharepoint相关,根据提示在SQL Server 2014 的安装包里面找到对应的文件就行。
测试完成!!
附:
Product Version |
Latest Service Pack |
Latest GDR Update |
Latest Cumulative Update |
CU Release Date |
General Guidance |
SQL Server 2016 |
SP1 (KB 3182545) |
CU 2 (KB 4013106) |
3/20/2017 |
||
SQL Server 2016 |
N/A |
CU 5 (KB 4013105) |
3/20/2017 |
||
SQL Server 2014 |
SP2 (KB 3171021) |
CU 5 (KB 4013098) |
4/17/2017 |
||
SQL Server 2014 |
SP1 (KB 3058865) |
CU 12 (KB 4017793) |
4/17/2017 |
||
SQL Server 2014 |
N/A |
CU 14 (KB 3158271) |
6/20/2016 |
||
SQL Server 2012 |
SP3 (KB 3072779) |
CU 8 (KB 4013104) |
3/21/2017 |
||
SQL Server 2012 |
SP2 (KB 2958429) |
CU 16 (KB 3205054) |
1/18/2017 |
||
SQL Server 2012 |
SP1 (KB 2674319) |
CU 16 (KB 3052476) |
5/18/2015 |
||
SQL Server 2008 R2 |
SP3 (KB 2979597) |
N/A |
N/A |
||
SQL Server 2008 R2 |
SP2 (KB 2630458) |
CU 13 (KB 2967540) |
6/30/2014 |
||
SQL Server 2008 |
SP4 (KB 2979596) |
N/A |
N/A |
||
SQL Server 2008 |
SP3 (KB 2546951) |
CU 17 (KB 2958696) |
5/19/2014 |
||
SQL Server 2005 |
SP4 (KB 2463332) |
N/A |
N/A |
N/A |
|
SQL Server 2000 |
SP4 (KB 290211) |
N/A |
N/A |
N/A |
更多详细参考: