什么是 SQL Server 的外延安全更新程序?

适用范围:SQL Server 2012 (11.x)

本文介绍如何接收超出扩展支持期限的 SQL Server 版本的扩展安全更新程序 (ESU)。

现已提供 SQL Server 2012 (11.x) 的扩展安全更新程序 (ESU)。

下表包含最新 ESU 的列表(如果有)。

版本 知识库文章 日期
SQL Server 2012 KB 5021123 2023 年 2 月 14 日

一旦发现安全漏洞并被 Microsoft 安全响应中心 (MSRC) 评为“关键”,便会按需提供 ESU(若需要)。 因此,SQL Server ESU 不是定期发布。

ESU 不包括:

  • 新增功能
  • 功能改进
  • 客户请求的修补程序

有关 ESU 定价的信息,请参阅规划 Windows Server 以及 SQL Server 终止支持

有关其他选项的更多信息,请参阅 SQL Server 终止支持选项

还可查看常见问题解答

概述

在 SQL Server 的支持生命周期结束后,可以为服务器注册扩展安全更新程序 (ESU) 订阅,最长可继续获得三年保护,直到可以升级到新版 SQL Server 或迁移到 Azure SQL

接收扩展安全更新程序的方法由运行 SQL Server 的位置决定。

Azure 工作负载

如果将工作负载迁移到 Azure 服务(有关更多信息,请参阅概述部分),可在终止支持后长达三年内访问 SQL Server 2012 (11.x) 和 SQL Server 2014 (12.x) 的 ESU,除了 Azure 服务运行费用外,无需额外费用

运行 SQL Server 的 Azure 服务将通过现有 SQL Server 更新通道或 Windows 更新自动接收 ESU。 无需安装 SQL Server IaaS 代理扩展,即可在 Azure SQL 虚拟机上下载 ESU 修补程序。

注意

对于部署到 Nutanix 云群集的 SQL Server 工作负载(它们在 Azure 裸机基础结构上运行),或者对于 Azure Stack,你必须遵循与未连接到 Azure Arc 的本地或托管环境相同的过程。

本地或托管环境

如果将 SQL Server 实例部署到 Azure Stack HCI 或 Azure Stack Hub,可在终止支持后长达三年内访问 SQL Server 2012 (11.x) 和 SQL Server 2014 (12.x) 的 ESU,除了 Azure 服务运行费用外,无需额外费用。 你无需软件保障即可在 Azure 中接收 ESU。

在所有其他情况下,如果符合条件,可以购买扩展安全更新程序。 要符合接收扩展安全更新程序 (ESU) 的条件,必须在下列其中一项协议下拥有软件保障:

  • 企业协议 (EA)
  • 企业协议订阅 (EAS)
  • 服务器和云注册 (SCE)
  • 面向教育的许可登记表解决方案 (EES)

还可以将 SQL Server 2012 (11.x) 和 SQL Server 2014 (12.x) 实例连接到 Azure Arc 来获得资格,并启用即用即付计费选项。 有关更多信息,请参阅自动将 SQL Server 连接到 Azure Arc

购买 ESU 有两种方式:

下表显示了两个选项之间的差异:

选项 如何购买 关键功能
ESU 计划 批量许可中心 – 同时支持已连接到和未连接到 Azure Arc 的 SQL Server 实例
– 每年的保险必须单独购买,必须全额支付且价格不同
– 需要在 Azure 门户上注册
– 支持手动安装修补程序
ESU 订阅 Microsoft Azure – 覆盖的 SQL Server 实例必须连接到 Azure Arc
– 持续覆盖,直至取消
– 由 Azure 按小时计费
– 随时可以手动取消
– 迁移到 Azure 或升级到受支持的版本时自动取消
– 支持自动和手动安装修补程序

注意

连接或注册实例是免费的。 下载通过 Azure 门户传递的 ESU 时,已连接的实例和已注册的实例不会产生额外的费用。

有关详细信息,请参阅外延安全更新程序常见问题解答

支持

ESU 不包括对本地或托管环境的技术支持。 对于本地环境,可以通过其他有效支持合同(如软件保障或顶级/统一支持),获得对 ESU 涵盖的工作负载的技术支持。 或者,如果是在 Azure 上托管,你可以使用 Azure 支持计划来获取技术支持。

订阅 Azure Arc 启用的扩展安全更新程序

如果本地或托管环境中的 SQL Server 实例连接到 Azure Arc,可以将 ESU 作为订阅启用,这样就可随时灵活取消,无需单独购买 ESU 订阅。 ESU 订阅可在发布修补程序时自动部署修补程序。

可以通过修改 SQL Server 配置来订阅扩展安全更新程序。 有关更多信息,请参阅配置 Azure Arc 启用的 SQL Server

按照以下步骤,使用 Azure 门户订阅 ESU:

  1. 将 SQL Server 实例连接到 Azure Arc 时,可以在“概述”窗格中看到“ESU 状态”选项。 所有新实例的默认值均为“不适用”。

    显示 SQL Server 实例的“概述”窗格的屏幕截图。突出显示了 ESU 状态。

  2. 选择“不适用”,然后导航到“SQL Server 配置”窗格。 在“许可证类型”部分中,选择“具有软件保障的许可证”。

    显示用于选择软件保障的选项的屏幕截图。

  3. 选择“订阅扩展安全更新程序”,然后选择“保存”。

    突出显示了“订阅 ESU”选项的屏幕截图。

注意

若要订阅扩展安全更新程序,必须将许可证类型设置为即付即用或具有软件保障的许可证。 否则,将禁用“扩展安全更新程序”选项。

重要

如果断开 SQL Server 实例与 Azure Arc 的连接,会停止 ESU 费用,并且你将无法访问新的 ESU。 如果尚未使用 Azure 门户或 API 手动取消 ESU 订阅,那么在将 SQL Server 实例重新连接到 Azure Arc 后会立即恢复 ESU,并恢复 ESU 费用。 断开连接的时间会计入这些费用中。 若要详细了解断开 SQL Server 实例的连接时会发生什么情况,请参阅扩展安全更新程序:常见问题解答

使用 Azure Policy 大规模订阅扩展安全更新

可以使用名为将符合条件的启用Arc的SQL Server实例订阅到扩展安全更新 Azure Policy 定义在多台启用 Arc 的计算机上激活 ESU 订阅。 将此策略定义分配给所选范围时,其会在安装了适用于 SQL Server 的 Azure 扩展的所有已启用 Arc 的计算机上启用 ESU。 如果其中任一计算机具有合格的 SQL Server 实例,ESU 订阅将立即激活。

按照以下步骤激活该策略:

  1. 导航到 Azure 门户中的“Azure Policy”,然后选择“定义”
  2. 搜索将符合条件的启用Arc的SQL Server实例订阅到扩展安全更新,然后右键单击策略。
  3. 选择“分配策略”
  4. 选择订阅和资源组(可选)作为作用域。
  5. 确保“策略实施”设置为“已启用”
  6. 在“参数”选项卡上,将“启用扩展安全更新”的值设置为“True”
  7. 在“修正”选项卡上:
    1. 选择“创建修正任务”以将该策略应用到现有的资源。 如果未选择,该策略将仅应用到新创建的资源。
    2. 选择“创建托管标识”,然后选择“系统分配的托管标识”(推荐)或“用户分配的托管标识”,后者具有“用于 SQL Server 部署的 Azure 扩展”和“读者”权限。
    3. 选择标识的位置。
  8. 选择“查看 + 创建” 。
  9. 选择“创建”。

了解 ESU 订阅计费

ESU 许可证对关键更新的支持延长了三年。 如果在支持日期终止后开始订阅,则必须购买批量许可产品/服务或 ESU 订阅,才能涵盖以前的所有年份。 使用 ESU 订阅还可以获得额外权益,即可随时取消订阅和未来费用而不会产生罚金。

SQL Server 2012 ESU 计费

由于 ESU 订阅选项是在 SQL Server 2012 (11.x) 外延支持期的第 2 年引入的,因此必须先购买第 1 年批量许可 ESU 产品/服务,才能在第 2 年注册 ESU 订阅。 可以在第 2 年内随时注册 ESU 订阅,帐单会显示连续 ESU 覆盖的成本。 注册 ESU 订阅后,从 2023 年 7 月 12 日到激活日期间,次月账单会包含托管 SQL Server 2012 (11.x) 实例的每台计算机或具有有效 ESU 订阅的实例的一次性账单费用。

从此时起,系统会按小时对每台计算机进行计费。 一次性计费和按小时收费都使用小时费率(核心数)x(100% 第 2 年 ESU 许可证价格) / 730。 因此,计费的费用取决于从 2023 年 7 月 12 日到激活时间的时长。 下列计费规则适用:

  • 如果在虚拟机上安装一个或多个 SQL Server 2012 (11.x) 实例,并且不使用无限制的虚拟化权益,则将按计算机的虚拟核心总数(至少四个核心)计费。 如果虚拟机有资格接收故障转移权限,则该计算机的虚拟核心无需计费。

  • 如果在不使用虚拟机的情况下在物理服务器上安装一个或多个 SQL Server 2012 (11.x) 实例,则将按该计算机的所有物理核心(至少四个核心)计费。 如果物理服务器有资格接收故障转移权限(受 SQL Server – 故障转移权限条款的约束),则该服务器的物理核心无需计费。 有关更多信息,请参阅产品条款

有关 SQL Server 2012 (11.x) ESU 定价的更多信息,请参阅计划 Windows Server 2012/2012 R2 以及 SQL Server 2012 终止支持

SQL Server 2014 ESU 计费

SQL Server 2014 (12.x) 的 ESU 订阅于延长支持期的第 1 年推出,开始时间为 2024 年 7 月 10 日。 可以在该日期之前或之后注册。 如果在该日期之前注册,则只会看到从 2024 年 7 月 10 日午夜开始的每小时 ESU 费用。 如果在 2024 年 7 月 10 日之后注册,则下月帐单包括从 2024 年 7 月 10 日到激活日期的计费。 下列计费规则适用:

  • 如果在虚拟机上安装一个或多个 SQL Server 2014 (12.x) 实例,并且不使用无限制的虚拟化权益,则将按计算机的虚拟核心总数(至少四个核心)计费。 如果虚拟机有资格接收故障转移权限,则该计算机的虚拟核心无需计费。

  • 如果在不使用虚拟机的情况下在物理服务器上安装一个或多个 SQL Server 2014 (12.x) 实例,则将按该计算机的所有物理核心(至少四个核心)计费。 如果物理服务器有资格接收故障转移权限(受 SQL Server – 故障转移权限条款的约束),则该服务器的物理核心无需计费。 有关更多信息,请参阅产品条款

  • 如果在同一物理计算机或虚拟机上同时安装 SQL Server 2012 (11.x) 和 SQL Server 2014 (12.x) 实例,对于 SQL Server 2012 (11.x) 和 SQL Server 2014 (12.x) ESU,将按计算机的物理或虚拟核心总数(至少四个核心)计费。 每个版本的计费都基于该版本的 ESU 价格。 如果虚拟机有资格接收故障转移权限,则该计算机的虚拟核心无需计费。

有关 SQL Server 2014 (12.x) ESU 定价的更多信息,请参阅计划 Windows Server 和 SQL Server 终止支持

连接丢失和其他中断期间的计费

如果你的 SQL Server 实例断开连接,计费将停止,订阅将暂停。 为了确保间歇性断开连接不会对 ESU 覆盖产生负面影响,在 30 天内重新连接的SQL Server 实例会自动重新激活,且不会产生罚金。 在这种情况下,对从服务器连接的最后一天开始进行另外计费。 如果手动终止了 ESU 订阅,在 30 天内重新激活,也不会产生罚金。 帐单包括自取消订阅起另外计费的费用。 如果服务器在断开连接 30 天后重新连接,订阅会终止。 若要恢复 ESU 覆盖,需要激活新的 ESU 订阅并支付所有的相关费用。

重要

费用在 ESU 订阅的第一小时内开始记录,看似是对启用 ESU 订阅的 SQL Server 实例进行了每小时计费。 由于该金额反映了自 2023 年 7 月 11 日以来 SQL Server 2012 (11.x) 或 2024 年 7 月 10 日以来 SQL Server 2014 (12.x) 的累计成本,因此要远高于常规的每小时 ESU 费用。 这是正常的,且这是一次性费用。 在接下来的几个月里,你应该只会看到常规的每小时费用。 连接中断可能会增加另外计费费用,但通常要低得多。

查看 ESU 订阅

可以使用 Azure Resource Graph 查询 ESU 订阅。 以下示例介绍如何查看所有合格 SQL Server 2012 (11.x) 实例及其 ESU 订阅状态。

resources
| where type == 'microsoft.azurearcdata/sqlserverinstances'
| extend Version = properties.version
| extend Edition = properties.edition
| extend containerId = tolower(tostring (properties.containerResourceId))
| where Version contains "2012"
| where Edition in ("Enterprise", "Standard")
| where isnotempty(containerId)
| project containerId, SQL_instance = name, Version, Edition
| join kind=inner (
    resources
    | where type == "microsoft.hybridcompute/machines"
    | extend machineId = tolower(tostring(id))
    | project machineId, Machine_name = name
)
on $left.containerId == $right.machineId
| join kind=inner (
    resources
    | where type == "microsoft.hybridcompute/machines/extensions"
    | where properties.type in ("WindowsAgent.SqlServer","LinuxAgent.SqlServer")
    | extend machineIdHasSQLServerExtensionInstalled = tolower(iff(id contains "/extensions/WindowsAgent.SqlServer" or id contains "/extensions/LinuxAgent.SqlServer", substring(id, 0, indexof(id, "/extensions/")), ""))
    | project machineIdHasSQLServerExtensionInstalled, Extension_State = properties.provisioningState, License_Type = properties.settings.LicenseType, ESU = iff(notnull(properties.settings.enableExtendedSecurityUpdates), iff(properties.settings.enableExtendedSecurityUpdates == true,"enabled","disabled"), ""), Extension_Version = properties.instanceView.typeHandlerVersion
)
on $left.machineId == $right.machineIdHasSQLServerExtensionInstalled
| project-away machineId, containerId, machineIdHasSQLServerExtensionInstalled

取消 Azure Arc 启用的扩展安全更新程序

你可以随时使用 Azure 门户、Azure PowerShell 或 Azure CLI 来取消 Azure Arc 启用的扩展安全更新程序。 取消后会立即停止 ESU 费用。

按照以下步骤,使用 Azure 门户来取消 ESU 订阅:

  1. 导航到已连接的 SQL Server 实例。 “概述”窗格中的 ESU 状态选项显示“已启用”值。

  2. 选择“已启用”,然后导航到“SQL Server 配置”窗格。

  3. 在“扩展安全更新程序”部分,选择“取消扩展安全更新程序的订阅”,然后选择“保存”

重要

不要在迁移到 Azure 之前或之后取消 Azure Arc 启用的扩展安全更新程序。 在你将本地 SQL Server 实例迁移到 Azure 虚拟机或 Azure VMware 解决方案上的 SQL Server 时,会自动停止 ESU 费用,但是你仍然可以完全访问扩展安全更新程序。 有关详细信息,请参阅扩展安全更新程序:常见问题解答

注册通过批量许可购买的扩展安全更新程序

如果通过批量许可 (VL) 购买了 ESU 产品,则必须在 Azure 门户上注册已购产品才能访问以前的或将来的扩展安全更新程序。 如果为未连接到 Azure Arc 的 SQL Server 实例购买了 ESU 产品,则必须先在 Azure 门户中注册这些服务器。 如果为已启用 Arc 的 SQL Server 实例购买了 ESU 产品,则无需注册这些服务器,因为它们已连接到 Azure Arc。要完成 ESU VL 产品的注册,必须链接 ESU 发票。

在 Azure 门户上注册已断开连接的 SQL Server 实例

如果本地或托管环境中的 SQL Server 实例无法连接到 Azure Arc,你可以在 Azure 门户中手动注册 SQL Server 实例来启用对 ESU 的访问。 如果希望利用 Azure Arc 启用的扩展安全更新程序的灵活性,请将服务器连接到 Azure Arc。若要连接,请按照自动将 SQL Server 连接到 Azure Arc 中的步骤操作。

以下示例演示如何在 Azure 门户中手动注册处于断开连接状态的 SQL Server 实例。

必备条件

  1. 如果还没有 Azure 订阅,可以使用以下方法之一创建帐户:

  2. 创建断开连接的已启用 Arc 的 SQL Server 资源的用户必须具有以下权限:

    • Microsoft.AzureArcData/sqlServerInstances/read
    • Microsoft.AzureArcData/sqlServerInstances/write

    可以将用户分配到 Azure Connected SQL Server Onboarding 角色以获取这些特定权限,也可以将用户分配给具有这些权限的内置角色,如参与者或所有者。 有关详细信息,请参阅使用 Azure 门户分配 Azure 角色

  3. Microsoft.AzureArcData Azure 订阅中注册资源提供程序:

    • 登录到 Azure 门户。

    • 导航到你的订阅,然后选择“资源提供程序”

    • 如果未列出 Microsoft.AzureArcData 资源提供程序,可使用“注册”选项将其添加到订阅。

  4. 如果使用的 Azure 策略仅允许创建特定资源类型,则需要允许 Microsoft.AzureArcData/sqlServerInstances 资源类型。 如果不允许,SQLServerInstances_Update 操作会失败,并在订阅的活动日志中显示“‘拒绝’策略操作”日志条目。

可以注册单个 SQL Server 实例,也可以上传 CSV 文件以批量注册多个 SQL Server 实例

单个 SQL Server 实例

  1. 登录到 Azure 门户

  2. 导航到“Azure Arc”并选择“基础结构”>“SQL Server”

  3. 若要注册已断开连接的计算机,请在屏幕顶部的菜单中选择“添加”

    Azure Arc 门户上 SQL Server 空列表的屏幕截图。

  4. 选择“注册服务器”以添加断开连接的 SQL Server 实例。

    用于添加连接或注册服务器的两个选项的屏幕截图。

  5. 在下一个屏幕上,可以选择添加一个或多个 SQL Server 实例。 默认已选择“单个 SQL 实例”选项。

    “添加 SQL 注册”选项的屏幕截图。

  6. 为已注册的 SQL Server 实例选择“订阅”和“资源组”。

  7. 提供必填信息(如下表所详述),然后选择“下一步”

    说明 其他信息
    实例名 输入命令 SELECT @@SERVERNAME 的输出,例如 MyServer\Instance01 如果你有命名实例,必须将反斜杠 (\) 替换为连字符 (-)。 例如,MyServer\Instance01 重命名为 MyServer-Instance01
    SQL Server 版本 从下拉列表中选择你的版本。
    版本 从下拉列表中选择适用版本:Datacenter、Developer(如果已购买 ESU,可免费部署此版本)、Enterprise、Standard、Web、Workgroup。
    核心数 输入此实例的核心数
    主机类型 从下拉列表中选择适用的主机类型:“虚拟机(本地)”、“物理服务器(本地)”、“Azure 虚拟机”、“Amazon EC2”、“Google Compute Engine”、“其他”。
  8. 必须使用提供的复选框确认你有权接收外延安全更新。 仅当选择 SQL Server 2012 (11.x) 时,ESU 复选框才可见。

多个 SQL Server 实例(批量)

可以通过上传 .CSV 文件来批量注册多个 SQL Server 实例。 正确设置 .CSV 文件的格式后,可按照以下步骤使用 Azure Arc 批量注册 SQL Server 实例:

  1. 登录到 Azure 门户

  2. 导航到“Azure Arc”并选择“基础结构”>“SQL Server”

  3. 若要注册已断开连接的计算机,请在屏幕顶部的菜单中选择“添加”

    Azure Arc 门户上 SQL Server 空列表的屏幕截图。

  4. 选择“注册服务器”以添加断开连接的 SQL Server 实例。

    用于添加连接或注册服务器的两个选项的屏幕截图。

  5. 在此屏幕上,可以选择添加一个或多个 SQL Server 实例。 选择“多个 SQL 实例”选项。

    “多个 SQL 实例”选项的屏幕截图。

  6. 选择“浏览”图标,上传包含多个已断开连接的 SQL Server 实例的 CSV 文件。

  7. 必须使用提供的复选框确认你有权接收外延安全更新。

添加 SQL Server 实例几分钟后,在门户中就可以看到它们。 它们是手动添加的,因此始终显示为断开连接状态,并附带“已注册”说明。

Azure Arc 门户上两个已注册的 SQL Server 实例的屏幕截图。

CSV 文件的格式设置要求

  • 值以逗号分隔

  • 值不能包含单引号或双引号

  • 值可以包含字母、数字、连字符 (-) 和下划线 (_)。 不能使用其他特殊字符。 如果你有命名实例,必须将反斜杠 (\) 替换为连字符 (-)。 例如,MyServer\Instance01 重命名为 MyServer-Instance01

  • 列名区分大小写,并且必须按如下所示命名:

    • name
    • 版本
    • edition
    • cores
    • hostType

示例 CSV 文件

CSV 文件应如下所示:

name,version,edition,cores,hostType
Server1-SQL2012,SQL Server 2012,Enterprise,12,Other Physical Server
Server2-SQL2012,SQL Server 2012,Enterprise,24,Other Physical Server
Server3-SQL2012,SQL Server 2012,Enterprise,12,Azure Virtual Machine
Server4-SQL2012,SQL Server 2012,Standard,8,Azure VMware Solution

可以使用其 Microsoft 发票(如以下屏幕截图所示)中“发票摘要”下的“采购订单号”作为发票编码值,将 ESU 购买与 SQL Server 实例链接起来。

突出显示采购订单号的示例发票的屏幕截图。

按照以下步骤将 ESU 发票链接到 Azure Arc SQL Server 实例,以便能够访问扩展更新程序。 此示例包括处于“已连接”和“已注册”状态的服务器。

  1. 登录到 Azure 门户

  2. 导航到 Azure Arc 并选择“SQL Server 实例|实例”

  3. 使用你要链接的每个 SQL Server 实例旁边的复选框,然后选择“链接 ESU 发票”

    Azure Arc 部分中所有 SQL Server 实例的屏幕截图。

  4. 在“发票 ID”部分填写 ESU 发票编号,然后选择“链接发票”。

    “链接 ESU 发票”页上的发票 ID 的屏幕截图。

  5. 已链接到 ESU 发票的服务器现在会显示有效的 ESU 过期日期。

    具有有效 ESU 到期值的 SQL Server 实例的屏幕截图。

重要

如果为断开连接的 SQL Server 购买了 ESU VL 产品,则只能选择“状态”Registered 的实例。 如果为 Azure Arc 启用的 SQL Server 实例购买了 ESU VL 产品,则只能选择“状态”Connected 的实例。

下载 ESU

使用 Azure Arc 注册 SQL Server 实例后,便可以使用 Azure 门户中的链接下载扩展安全更新程序包(若有)。

若要下载 ESU,请按照以下步骤操作:

  1. 登录到 Azure 门户

  2. 导航到 Azure Arc 并选择“SQL Server 实例|实例”

  3. 从列表中选择服务器。

    服务器列表的屏幕截图,其中突出显示了一个服务器。

  4. 从其中下载安全更新程序(若有)。

    可用安全更新的屏幕截图。

支持的区域

已启用 Arc 的 SQL Server 在以下区域中可用:

  • 美国东部
  • 美国东部 2
  • 美国西部
  • 美国西部 2
  • 美国西部 3
  • 美国中部
  • 美国中北部
  • 美国中南部
  • 美国中西部
  • 加拿大中部
  • 加拿大东部
  • 英国南部
  • 英国西部
  • 法国中部
  • 西欧
  • 北欧
  • 瑞士北部
  • 印度中部
  • Brazil South
  • 南非北部
  • 阿拉伯联合酋长国北部
  • 日本东部
  • 韩国中部
  • 东南亚
  • 澳大利亚东部
  • 瑞典中部
  • 挪威东部

重要

为了成功登录和运行,请将同一区域分配给已启用 Arc 的服务器和已启用 Arc 的 SQL Server。

不支持政府区域。 有关更多信息,请参阅客户能否在 Azure 政府区域获取免费的外延安全更新程序?

常见问题解答

有关常见问题的完整列表,请查看扩展安全更新程序:常见问题解答