比较 SQL Server 版本
概览
Microsoft SQL Server 许可费用是 Windows 工作负载环境中的最大费用之一。SQL Server 的许可费用可能会远远超出运行工作负载所需的计算成本。如果选错了版本,您可能会为一些您根本不用或根本不需要的功能付费。本部分比较了以下 SQL Server 版本,包括其功能和相关成本:
-
企业版:SQL Server 企业版提供数据中心功能,包括高性能、无限虚拟化和多种商业智能(BI)工具。
-
标准版:SQL Server 标准版为规模较小的组织和部门提供基本的数据管理和商业智能服务。
-
Web 版:SQL Server Web 版适用于 Web 托管商或 Web 增值提供商(VAP)的公司。此版本具有较低的总拥有成本,并且为从小型到大型规模的 Web 应用程序提供可扩展性和管理能力。
重要
您可以使用 SQL Server Web 版支持公用且可通过互联网访问的网页、网站、Web 应用程序和 Web 服务。您不能使用 SQL Server Web 版来支持业务线应用程序(例如客户关系管理或企业资源管理应用程序)。
-
开发人员版:SQL Server 开发人员版包含企业版的所有功能,但仅用于开发目的。
-
精简版:SQL Server 精简版是一款免费的数据库软件,可用于学习或构建桌面应用程序。您可以将精简版更新到其它版本。
注意
SQL Server 评估版提供 180 天的试用期。
成本影响
您可以从 Microsoft 的经销商处购买 SQL Server 许可证,并使用软件保障将其带到 AWS。或者,您也可以使用基于按实际使用量付费模式的 SQL Server 许可证,该模式附带包含许可证的 Amazon EC2 AMI。
如果您从 Microsoft 经销商处购买 SQL Server 许可证,则核心许可证以两份为一包进行出售,每台服务器至少需要购买四份核心许可证。下表显示了企业版和标准版的成本比较。
| 版本 | SQL Server 企业版(2 个核心一包) | SQL Server 标准版(2 个核心一包) | 节省成本 |
|---|---|---|---|
| 2022 | 15123 美元 | 3945 美元 | 74% |
| 2019 | 13748 美元 | 3586 美元 | 74% |
注意
上表中的定价基于 Microsoft 对 SQL Server 2022
以下成本对比展示了使用包含许可证的 Amazon EC2 AMI 来托管不同版本的 SQL Server 的情况。在此比较中,SQL Server 托管在 us-east-1 区域的 r6i.xlarge(4 个 vCPU)上。
| 实例 | 计算成本 | Windows 许可证成本 | SQL Server 许可证成本 | Total |
|---|---|---|---|---|
| R6i.xlarge(Linux) | 183.96 美元 | – | – | 183.96 美元 |
| R6i.xlarge + Windows | 183.96 美元 | 134.32 美元 | – | 318.28 美元 |
| R6i.xlarge + SQL Server Web 版 | 183.96 美元 | 134.32 美元 | 49.35 美元 | 367.63 美元 |
| R6i.xlarge + SQL Server 标准版 | 183.96 美元 | 134.32 美元 | 350.4 美元 | 668.68 美元 |
| R6i.xlarge + SQL 企业版 | 183.96 美元 | 134.32 美元 | 1095 美元 | 1413.28 美元 |
通过为您的工作负载选择适当的 SQL Server 版本,您最多可以节省 95% 的 SQL Server 许可费用。下表比较了 r6i.xlarge 实例上 SQL Server 许可证的费用。
| 版本 | 节省成本 % |
|---|---|
| 标准版与企业版对比 | 68% |
| Web 版与标准版对比 | 86% |
| Web 版与企业版对比 | 95% |
在大多数情况下,组织会从企业版切换到标准版,但也有一些情况下可以从标准版或企业版切换到 Web 版。
成本优化建议
您可以根据扩展限制、高可用性、性能和安全性等因素,为您的工作负载选择最适合的版本。以下表格列出了各 SQL Server 版本所支持的功能。这能帮助您确定使用哪个版本。此比较适用于 SQL Server 2016 SP1 及更高版本
扩展限制
以下表格对比了不同 SQL Server 版本的扩展限制情况。
| 功能 | 企业版 | 标准版 | Web 版 | 精简版 |
|---|---|---|---|---|
| 单个 SQL Server 数据库引擎、SQL Server 分析服务(SSAS)或 SQL Server Reporting Services(SSRS)实例所使用的最大计算容量 | 操作系统最大值 | 最多只能选择 4 个插槽或者 24 个核心中的较少者 | 最多只能选择 4 个插槽或者 16 个核心中的较少者 | 最多只能选择 4 个插槽或者 4 个核心中的较少者 |
| 每个 SQL Server 数据库引擎实例的缓冲池最大内存 | 操作系统最大值 | 128 GB | 64 GB | 1410 MB |
| 每个 SQL Server 数据库引擎实例的缓冲池扩展的最大容量 | 已配置最大内存的 32 倍 | 已配置最大内存的 4 倍 | 不适用 | 不适用 |
| 最大关系数据库大小 | 524PB | 524PB | 524PB | 10 GB |
| Columnstore 缓存或内存优化型数据的最大内存 | 操作系统最大值 | 32 GB | 16 GB | 352MB |
如果您的应用程序所需的核心数少于 16 个(即 32 个 vCPU)且 RAM 为 64GB 以下,则您可以从 SQL Server Web 版本开始进行评估。如果您的工作负载需要超过 64 GB 的内存或者其他高可用性选项,则您必须升级到 SQL Server 标准版。
您可以使用 SQL Server Web 版来支持面向公众和互联网的网页、网站、Web 应用程序以及 Web 服务,但不能使用 SQL Server Web 版来支持业务线应用程序。有关 SQL Server Web 版使用案例的更多信息,请联系 Microsoft 许可支持部门
您可以使用 SQL Server 标准版来处理最多 24 核心(48 个 vCPU)和 128GB 内存的工作负载。但是,您可以使用缓冲池扩展
您可以通过在缓冲池和页生命周期
高可用性
以下表格对比了不同 SQL Server 版本的高可用性功能。
| 功能 | 企业版 | 标准版 | Web 版 | 精简版 |
|---|---|---|---|---|
| 服务器核心支持 1 | 支持 | 是 | 是 | 是 |
| 日志传送 | 支持 | 是 | 是 | 否 |
| 数据库镜像 | 是 | 完全安全模式 | 仅作为见证 | 仅作为见证 |
| 备份压缩 | 支持 | 是 | 否 | 否 |
| Always On 失效转移群集实例 | 16 个节点 | 2 个节点 | 否 | 否 |
| Always On 可用性组 | 最多 8 个辅助副本,包括 2 个同步辅助副本 | 否 | 否 | 否 |
| 基本可用性组 | 否 | 2 个节点 | 否 | 否 |
| 在线页面和文件恢复 | 是 | 否 | 否 | 否 |
| 在线索引 | 是 | 否 | 否 | 否 |
| 在线架构更改 | 是 | 否 | 否 | 否 |
| 快速恢复 | 是 | 否 | 否 | 否 |
| 镜像备份 | 是 | 否 | 否 | 否 |
| 热添加内存和 CPU | 是 | 否 | 否 | 否 |
| 加密备份 | 支持 | 是 | 否 | 否 |
| 混合备份到 Microsoft Azure(备份到 URL) | 支持 | 是 | 否 | 否 |
| 用于灾难恢复的失效转移服务器 | 支持 | 是 | 否 | 否 |
| 用于实现高可用性的失效转移服务器 | 支持 | 是 | 否 | 否 |
其他常见功能
以下表格对比了不同 SQL Server 版本的最常见功能。有关功能的详尽列表,请参阅 Microsoft 文档中的 SQL Server 2019 的版本和支持的功能
| 功能 | 企业版 | 标准版 | Web 版 | 精简版 |
|---|---|---|---|---|
| (性能)资源调控器 | 是 | 否 | 否 | 否 |
| (安全)透明数据库加密(TDE) | 支持 | 是 | 否 | 否 |
| (安全)可扩展密钥管理(EKM) | 是 | 否 | 否 | 否 |
| (复制)Oracle 出版物 | 是 | 否 | 否 | 否 |
| (复制)对等事务复制 | 是 | 否 | 否 | 否 |
| 更改数据捕获 | 支持 | 是 | 否 | 否 |
SQL Server 开发人员版
所有非生产工作负载(例如开发、QA、测试、暂存和 UAT 环境)都可以使用 SQL Server 开发人员版来节省 100% 的 SQL Server 许可费用。下载 SQL Server
切换版本
对于现有的工作负载而言,从一个版本切换到另一个版本需要进行大量的测试。遵循最佳实践是检查运行在企业版或标准版上的工作负载,以查看是否使用了特定于版本的功能,以及是否有针对这些功能的替代解决方案。例如,如果您想查看您的数据库是否使用了任何企业级功能,可以像下面的示例命令所示,在所有数据库上运行动态管理视图(DMV)
SELECT feature_name FROM sys.dm_db_persisted_sku_features;
GO
有些企业版的功能无法通过 T-SQL 来实现,比如作为 SQL 维护作业一部分的在线重新索引功能。这些功能必须手动验证。
迁移注意事项
您对 SQL Server 的许可方式将决定您切换版本的选项。包括 SQL Server AMI 在内的 AMI 将许可费用包含在 EC2 实例的价格中,即将许可费用与 AMI 绑定。您可以使用 AWS 账单代码来验证您的 AMI 中包含的 SQL Server 版本。对于 AWS 包含许可证的实例,在操作系统内更改 SQL Server 版本并不会改变与 AMI 相关的账单。您必须将您的数据库迁移至一个新的 EC2 实例,并使用运行新版本 SQL Server 的 AMI 来完成迁移操作。
如果您自带许可证,则可以拥有更大的灵活性。通常仍建议您迁移到运行新版本的另一个 EC2 实例上。这样一来,如果出现未按预期进行的情况,也能方便地进行失效自动恢复。然而,如果您必须使用现有服务器,您仍然可以进行 SQL Server 的并行安装,并在不同实例之间迁移数据库。有关并行版本降级的更详细步骤,请访问 MSSQLTips 网站上的 SQL Server 版本升级和降级
其他资源
-
SQL Server 2022 的版本和支持功能
(Microsoft Learn) -
sys.dm_db_persisted_sku_features(Transact-SQL)
(Microsoft Learn) -
您应该使用哪个 SQL Server 版本?
(Brent Ozar Unlimited) -
AWS 定价计算器
(AWS)