处理多个 SQL Server 版本和实例

适用于SQL Server - 仅限 Windows

可以安装 SQL Server 的多个实例,也可以在已安装 SQL Server 早期版本的计算机上安装 SQL Server。

注意

如果需要在 Linux 上安装 SQL Server 的多个实例,请参阅部署并连接到 SQL Server Linux 容器

与 SQL Server 相关的以下项与同一台计算机上安装的多个实例兼容:

  • 数据库引擎
  • Analysis Services
  • Reporting Services 1

1 从 SQL Server 2016 (13.x) 开始,单独安装 SQL Server Reporting Services (SSRS)。

可以在已安装其他 SQL Server 版本的计算机上升级 SQL Server 的早期版本。 有关支持的升级方案,请参阅 支持的版本和版本升级

版本组件和编号

下面的概念对于理解 SQL Server 的并行实例的 SQL Server的行为十分有用。

SQL Server 的标准产品版本格式为 MM.nn.bbbb.rr,其中每一片断定义为:

  • MM - 主版本
  • nn - 次要版本
  • bbbb - 内部版本号
  • rr - 内部修订版本号

在 SQL Server 的每个主版本或次版本中,都会增加该版本号,以便与之前的版本区分。 这一对版本的更改出于多种目的,包括:

  • 在用户界面中显示版本信息
  • 控制升级过程中的文件替换方式
  • 应用服务包和累积更新
  • 作为后续版本的功能区分机制

由 SQL Server

某些组件由 SQL Server的所有已安装版本的所有实例共享。 在同一台计算机上并行安装 SQL Server 的不同版本时,这些组件将自动升级到最新版本。 此类组件通常会在卸载 SQL Server 的最后的实例时自动卸载。

示例:SQL Server Browser 和 Microsoft SQL Server VSS Writer。

在 SQL Server

SQL Server 版本在所有实例之间共享某些组件。 如果在升级过程中选择了这些共享的组件,现有组件将升级到最新版本。

示例: Integration Services、 Master Data Services、 SQL Server Management Studio、 SQL Server Data Tools (SSDT)和 SQL Server 联机丛书。

跨次要版本共享的组件

SQL Server 版本共享组件。

示例:安装程序支持文件。

特定于 SQL Server

某些 SQL Server 组件或服务特定于 SQL Server 实例(实例感知)。 它们与托管它们的实例共用相同的版本,并且仅用于相应实例。

示例: 数据库引擎、 Analysis Services和 Reporting Services。

有关 Windows 上 SQL Server 各版本支持的功能列表,请参阅:

有关 Linux 上 SQL Server 各版本支持的功能列表,请参阅:

独立于 SQL Server 版本的组件

在 SQL Server 安装过程中将安装某些组件,但这些组件独立于 SQL Server的版本。 它们可在主版本之间共享,或者由所有 SQL Server 版本共享。

示例:Microsoft Sync Framework、SQL Server Compact。

有关 SQL Server Compact 安装的详细信息,请参阅使用安装向导安装 SQL Server(安装程序)。 有关如何卸载 SQL Server Compact 的详细信息,请参阅卸载现有 SQL Server 实例(安装程序)

并行使用 SQL Server 与其早期版本 SQL Server

可以在已运行 SQL Server 早期版本实例的计算机上安装 SQL Server 。 如果计算机上已存在默认实例,则 SQL Server 必须作为命名实例安装。

下表显示了对安装有必需版本 .NET 的通常受支持版本 Windows 上的每个 SQL Server 版本的并行支持:

现有实例 并行支持
SQL Server 2022 (16.x) SQL Server 2008 (10.0.x) 到 SQL Server 2019 (15.x)
SQL Server 2019 (15.x) SQL Server 2008 (10.0.x) 到 SQL Server 2017 (14.x)
SQL Server 2017 (14.x) SQL Server 2008 (10.0.x) 到 SQL Server 2016 (13.x)
SQL Server 2016 (13.x) SQL Server 2008 (10.0.x) 到 SQL Server 2014 (12.x)

有关详细信息,请参阅在 Windows 8 及更高版本中使用 SQL Server

SysPrep 注意事项

SQL Server SysPrep 不支持在同一台计算机上并行安装 SQL Server 的已准备实例和早期版本的 SQL Server 。 但是,可以在同一台计算机上并行安装 SQL Server 的相同主版本的多个已准备实例。 有关详细信息,请参阅 Considerations for Installing SQL Server Using SysPrep

不能在运行 Windows Server 2008 R2 Server Core SP1 的计算机上并行安装 SQL Server 2016 (13.x) 及更高版本和早期版本的 SQL Server。 有关 Server Core 安装的详细信息,请参阅在 Server Core 上安装 SQL Server

防止 IP 地址冲突

并行安装 SQL Server 故障转移群集实例与 SQL Server 数据库引擎 的独立实例时,请注意避免 IP 地址上的 TCP 端口号冲突。 当 数据库引擎 的两个实例都配置为使用默认 TCP 端口 (1433) 时,通常会发生冲突。

要避免冲突,请将一个实例配置为使用非默认的固定端口。 在独立实例上配置固定端口通常是最简单的。 若将数据库引擎配置为使用不同的端口,则在 SQL Server 故障转移群集实例失败到备用节点时,将防止出现会阻止实例启动的意外 IP 地址/TCP 端口冲突。