近期在客户环境搭建SQL故障转移群集,操作系统为SQL Server 2012R2,数据库版本为SQL Server2008 R2,在安装过程中遇到问题:没有安装Windows Server 2003修补程序KB937444。FILESTREAM在给予Windows Server 2003的群集上运行需要该修补程序。
经过查询搜索,是因为版本问题导致不支持,需要SQL Server 2008R2 SP2版本以上才可以,因此在安装时需要集成该补丁包,以下为集成方法:
1、用虚拟光驱加载SQL2008R2的镜像后,将所有文件复制到硬盘的一个文件夹(如:F:\SQL2008R2_CHS\),并在该文件夹下新建一个文件夹SP3(如:F:\SQL2008R2_CHS\SP3\)
2、将SP3文件复制到一个文件夹(如:F:\SP3\)SQLServer2008R2SP3-KB2979597-x64-CHS并对其进行解压
3、打开CMD,运行以下解包命令(红色字体部分),将其解压到F:\SQL2008R2_CHS\SP3\目录下:
F:\SP1\SQLServer2008R2SP1-KB2528583-x64-CHS.exe /x:F:\SQL2008R2_CHS\SP3
4. 将F:\SQL2008R2_CHS\SP3\文件夹下的Setup.exe复制到F:\SQL2008R2_CHS\文件夹下,覆盖原文件(红色字体部分)。
copy F:\SQL2008R2_CHS\SP3\Setup.exe F:\SQL2008R2_CHS\
5. 打开CMD,运行以下命令(红色字体部分)[该命令的作用是:从F:\SQL2008R2_CHS\SP3\文件夹复制除Microsoft.SQL.Chainer.PackageData.dll外的所有文件(注意:是文件而不是文件夹)到 F:\SQL2008R2_CHS\文件夹来更新原始文件。 ROBOCOPY是“Windows 的可靠文件复制”命令]:
robocopy F:\SQL2008R2_CHS\SP3\x64 F:\SQL2008R2_CHS\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
注意:如果您不小心复制Microsoft.SQL.Chainer.PackageData.dll文件,当您运行Setup.exe的时候可能会发生错误。 如果发生这种情况,恢复Microsoft.SQL.Chainer.PackageData.dll到原来的版本。
6. 确定F:\SQL2008R2_CHS\x64 文件夹内有defaultsetup.ini这个文件,用记事本打开编辑defaultsetup.ini文件,增加下列一行内容(红色字体部分):
PCUSOURCE=".\SP1"
7、如果没有以上所说的defaultsetup.ini文件,创建一个具有下列内容的defaultsetup.ini文件(蓝色字体部分):
;SQLSERVER2008 R2 Configuration File
[SQLSERVER2008]
PID="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX"
PCUSOURCE=".\SP1"
(注:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX为安装序列号,用你的序列号代替即可)
并复制到F:\SQL2008R2_CHS\x64 文件夹内,该文件的作用是告诉安装程序在哪里找到SP1的源媒体,既您在第3步中提取的内容。
8、可以制作ISO镜像或直接运行F:\SQL2008R2_CHS\目录下的Setup.exe安装已集成SP1的SQL2008R2了。