适用于:SQL Server - Linux
本文详细介绍 Linux 上各种版本的 SQL Server 2025 (17.x) 预览版支持的功能。
有关 Windows 上的 SQL Server 的版本和支持的功能,请参阅 SQL Server 2025 预览版的版本和支持的功能。
有关 SQL Server 2025 (17.x) 预览版中的新增功能的详细信息,请参阅:
根据应用程序的需要,安装要求会有所不同。 不同版本的 SQL Server 能够满足单位和个人独特的性能、运行时以及价格要求。 安装哪些 SQL Server 组件还取决于您的具体需要。 下面各节将帮助您了解如何在 SQL Server的不同版本和可用组件中做出最佳选择。
有关最新的发行说明和新增功能,请参阅 Linux 上的 SQL Server 2025 预览版发行说明。
有关 Linux 上不可用的 SQL Server 功能的列表,请参阅不支持的功能和服务。
SQL Server 版本
下表介绍 SQL Server的各个版本。
| 版本 | 定义 |
|---|---|
| Enterprise | 作为高级产品/服务,SQL Server Enterprise Edition 提供了全面的高端数据中心功能,具有极高的性能和无限虚拟化 1,还具有端到端商业智能,可为任务关键工作负载和最终用户访问数据见解提供高服务级别。 企业版可用于评估。 评估部署的有效期为 180 天。 有关详细信息,请参阅 SQL Server 许可资源和文档。 |
| 标准 | SQL Server Standard 版提供了基本数据管理和商业智能数据库,使部门和小型组织能够顺利运行其应用程序并支持将常用开发工具用于内部部署和云部署,有助于以最少的 IT 资源获得高效的数据库管理。 |
| Web | 对于 Web 主机托管服务提供商(包括在 Azure 上的 IaaS 上选择 Web 版)和 Web VAP 而言,SQL Server Web 版本是一项总拥有成本较低的选择,可针对从小规模到大规模 Web 资产等内容提供可伸缩性、经济性和可管理性能力。 |
| 企业开发人员 | 企业 SQL Server 开发人员版允许开发人员在 SQL Server 的基础上生成任何类型的应用程序。 它包括 企业版的所有功能,但许可用作开发和测试系统,而不是生产服务器。 SQL Server Developer 是构建和测试应用程序的人员的理想之选。 |
| 标准开发人员 | 标准 SQL Server 开发人员版允许开发人员在 SQL Server 的基础上生成任何类型的应用程序。 它包括 标准版的所有功能,但许可用作开发和测试系统,而不是生产服务器。 SQL Server Developer 是构建和测试应用程序的人员的理想之选。 |
| 快速 | SQL Server Express Edition 是入门级的免费数据库,是学习和构建桌面及小型服务器数据驱动应用程序的理想选择。 它是独立软件供应商、开发人员和热衷于构建客户端应用程序的人员的最佳选择。 如果您需要使用更高级的数据库功能,则可以将 SQL Server Express 无缝升级到其他更高端的 SQL Server版本。 SQL Server Express LocalDB 是 Express 版本的一种轻型版本,该版本具备所有可编程性功能,在用户模式下运行,并且具有快速零配置安装和必备组件要求较少的特点。 |
1 Enterprise Edition 上提供有面向具有软件保障的客户的无限虚拟化。 部署必须遵守许可指南。 有关详细信息,请参阅 SQL Server 许可资源和文档。
将 SQL Server 用于客户端/服务器应用程序
在运行直接连接到 SQL Server 实例的客户端/服务器应用程序的计算机上,只能安装 SQL Server客户端组件。 如果要在数据库服务器上管理 SQL Server 实例,或者打算开发 SQL Server 应用程序,那么客户端组件安装也是一个不错的选择。
SQL Server 组件
Linux 上的 SQL Server 2025 (17.x) 预览版支持 SQL Server 数据库引擎。 下表介绍了数据库引擎中的功能。
| 服务器组件 | DESCRIPTION |
|---|---|
| SQL Server 数据库引擎 | SQL Server 数据库引擎 包括 数据库引擎(用于存储、处理和保护数据安全的核心服务)、复制、全文搜索、用于管理关系数据和 XML 数据以及数据库分析集成中的工具。 |
Developer 版、Enterprise Core 版和 Evaluation 版
有关企业开发人员、标准开发人员、企业核心版和评估版支持的功能,请参阅下表中列出的 SQL Server Enterprise 版本的功能。
开发人员版本继续仅支持 SQL Server Distributed Replay 的一个客户端。
注释
SQL Server 2025 (17.x) 预览版引入了单独的 SQL Server 企业开发人员版和标准开发人员版本。
规模限制
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 单个实例使用的最大计算能力(SQL Server 数据库引擎1) | 操作系统支持的最大值 | 限制为 4 个插槽或 24 核,取二者中的较小值 | 限制为 4 个插槽或 16 核,取二者中的较小值 | 限制为 1 个插槽或 4 核,取二者中的较小值 |
| 单个实例使用的最大计算能力 - Analysis Services 或 Reporting Services | 操作系统支持的最大值 | 限制为 4 个插槽或 24 核,取二者中的较小值 | 限制为 4 个插槽或 16 核,取二者中的较小值 | 限制为 1 个插槽或 4 核,取二者中的较小值 |
| 每个 SQL Server 数据库引擎实例的缓冲池的最大内存 | 操作系统支持的最大值 | 128 GB | 64 GB | 1,410 MB |
| 每个 SQL Server 数据库引擎 实例的的缓冲池扩展的最大容量 | 32 *(最大服务器内存配置) | 4 *(最大服务器内存配置) | 无 | 无 |
| 每个 SQL Server 数据库引擎实例的列存储段缓存的最大内存 | 不受限制的内存 | 32 GB | 16 GB | 352 MB |
| SQL Server 数据库引擎 中每个数据库的最大内存优化数据大小 | 不受限制的内存 | 32 GB | 16 GB | 352 MB |
| 最大关系数据库大小 | 524 PB | 524 PB | 524 PB | 10 GB |
1 对于具有基于服务器 + 客户端访问许可证 (CAL) 的许可的 Enterprise 版本(不适用于新协议),每个 SQL Server 实例的内核数上限为 20。 基于内核的服务器许可模型没有限制。 有关详细信息,请参阅按 SQL Server 版本划分的计算能力限制。
RDBMS 高可用性
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 日志传送 | 是的 | 是的 | 是的 | 否 |
| 备份压缩 | 是的 | 是的 | 否 | 否 |
| 数据库快照 | 是的 | 是的 | 否 | 否 |
| AlwaysOn 故障转移群集实例1 | 是的 | 是的 | 否 | 否 |
| AlwaysOn 可用性组2 | 是的 | 否 | 否 | 否 |
| 基本可用性组3 | 否 | 是的 | 否 | 否 |
| 最小副本提交可用性组 | 是的 | 是的 | 否 | 否 |
| 无群集的可用性组 | 是的 | 是的 | 否 | 否 |
| 联机页面和文件还原 | 是的 | 否 | 否 | 否 |
| 联机索引 | 是的 | 否 | 否 | 否 |
| 可恢复的联机索引重新生成 | 是的 | 否 | 否 | 否 |
| 联机架构更改 | 是的 | 否 | 否 | 否 |
| 快速恢复 | 是的 | 否 | 否 | 否 |
| 镜像备份 | 是的 | 否 | 否 | 否 |
| 热插拔内存和 CPU | 是的 | 否 | 否 | 否 |
| 加密备份 | 是的 | 是的 | 否 | 否 |
| Azure 的混合备份(URL 的备份) | 是的 | 是的 | 否 | 否 |
1 在 Enterprise 版本中,节点数是操作系统支持的最大值。 Standard 版本中支持两个节点。
2 Enterprise 版本支持最多 8 个辅助副本,包括 2 个同步辅助副本。
3 Standard 版本支持基本可用性组。 基本可用性组支持两个副本,一个数据库。 有关基本可用性组的详细信息,请参阅适用于单一数据库的基本 Always On 可用性组。
RDBMS 可伸缩性和性能
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 列存储 1 | 是的 | 是的 | 是的 | 是的 |
| 聚集列存储索引中的大型对象二进制文件 | 是的 | 是的 | 是的 | 是的 |
| 联机非聚集列存储索引重新生成 | 是的 | 否 | 否 | 否 |
| 内存中 OLTP 1 | 是的 | 是的 | 是的 | 是的 |
| 永久性主内存 | 是的 | 是的 | 是的 | 是的 |
| 表和索引分区 | 是的 | 是的 | 是的 | 是的 |
| 数据压缩 | 是的 | 是的 | 是的 | 是的 |
| 资源调控器 | 是的 | 否 | 否 | 否 |
| 已分区表并行度 | 是的 | 否 | 否 | 否 |
| NUMA 感知、大型页内存和缓冲区数组分配 | 是的 | 否 | 否 | 否 |
| IO 资源调控 | 是的 | 否 | 否 | 否 |
| 延迟持续性 | 是的 | 是的 | 是的 | 是的 |
| 自动优化 | 是的 | 否 | 否 | 否 |
| 批处理模式自适应联接 | 是的 | 否 | 否 | 否 |
| 批处理模式内存授予反馈 | 是的 | 否 | 否 | 否 |
| 多语句表值函数的交错执行 | 是的 | 是的 | 是的 | 是的 |
| 大容量插入改进 | 是的 | 是的 | 是的 | 是的 |
1 内存中 OLTP 数据大小和列存储段缓存限制为不超过版本在“缩放限制”部分中指定的内存量。 最大并行度是有限的。 对于 Standard Edition,索引生成的进程并行度 (DOP) 限制为 2 DOP,对于 Web 和 Express Edition,索引生成的进程并行度 (DOP) 限制为 1 DOP。 这是指在基于磁盘的表和内存优化表上创建的列存储索引。
RDBMS 安全性
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 行级安全性 | 是的 | 是的 | 是的 | 是的 |
| 始终加密 (Always Encrypted) | 是的 | 是的 | 是的 | 是的 |
| 动态数据掩码 | 是的 | 是的 | 是的 | 是的 |
| 基本审核 | 是的 | 是的 | 是的 | 是的 |
| 精细化审核 | 是的 | 是的 | 是的 | 是的 |
| 透明数据库加密 (TDE) | 是的 | 是的 | 否 | 否 |
| 使用 Azure Key Vault 的可扩展密钥管理 (EKM) | 是的 | 是的 | 是的 | 是的 |
| 用户定义的角色 | 是的 | 是的 | 是的 | 是的 |
| 包含的数据库 | 是的 | 是的 | 是的 | 是的 |
| 备份加密 | 是的 | 是的 | 否 | 否 |
RDBMS 可管理性
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 专用管理连接 | 是的 | 是的 | 是的 | 是 1 |
| PowerShell 脚本支持 | 是的 | 是的 | 是的 | 是的 |
| 支持数据层应用程序组件操作 - 提取、部署、升级、删除 | 是的 | 是的 | 是的 | 是的 |
| 策略自动执行(检查计划和更改) | 是的 | 是的 | 是的 | 否 |
| 性能数据收集器 | 是的 | 是的 | 是的 | 否 |
| 标准性能报表 | 是的 | 是的 | 是的 | 否 |
| 计划指南和计划指南的计划冻结 | 是的 | 是的 | 是的 | 否 |
索引视图的直接查询(使用 NOEXPAND 提示) |
是的 | 是的 | 是的 | 是的 |
| 自动索引视图维护 | 是的 | 是的 | 是的 | 否 |
| 分布式分区视图 | 是的 | 否 | 否 | 否 |
| 并行索引操作 | 是的 | 否 | 否 | 否 |
| 查询优化器自动使用索引视图 | 是的 | 否 | 否 | 否 |
| 并行一致性检查 | 是的 | 否 | 否 | 否 |
| SQL Server 实用工具控制点 | 是的 | 否 | 否 | 否 |
1 使用跟踪标志。
可编程性
| 功能 / 特点 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| JSON | 是的 | 是的 | 是的 | 是的 |
| 查询存储库 | 是的 | 是的 | 是的 | 是的 |
| 临时 | 是的 | 是的 | 是的 | 是的 |
| 本机 XML 支持 | 是的 | 是的 | 是的 | 是的 |
| XML 索引 | 是的 | 是的 | 是的 | 是的 |
MERGE 和 UPSERT 功能 |
是的 | 是的 | 是的 | 是的 |
| 日期和时间数据类型 | 是的 | 是的 | 是的 | 是的 |
| 国际化支持 | 是的 | 是的 | 是的 | 是的 |
| 全文和语义搜索 | 是的 | 是的 | 是的 | 是的 |
| 查询中的语言规范 | 是的 | 是的 | 是的 | 是的 |
| Service Broker(消息传递) | 是的 | 是的 | 否 1 | 否 1 |
| Transact-SQL 端点 | 是的 | 是的 | 是的 | 否 |
| Graph | 是的 | 是的 | 是的 | 是的 |
1 仅客户端。
集成服务
有关 SQL Server 各个版本支持的 Integration Services (SSIS) 功能的信息,请参阅 SQL Server 各个版本支持的 Integration Services 功能。
空间和位置服务
| 功能名称 | Enterprise | 标准 | Web | 快速 |
|---|---|---|---|---|
| 空间索引 | 是的 | 是的 | 是的 | 是的 |
| 平面和大地测量数据类型 | 是的 | 是的 | 是的 | 是的 |
| 高级空间库 | 是的 | 是的 | 是的 | 是的 |
| 导入/导出业界标准的空间数据格式 | 是的 | 是的 | 是的 | 是的 |
使用控制组 (cgroup) v2 配置内存限制
从 SQL Server 2025 (17.x) 预览版和 SQL Server 2022 (16.x) CU 20 开始,SQL Server 检测并遵循控制组 (cgroup) v2 约束,提高 Docker、Kubernetes 和 OpenShift 环境的性能稳定性和资源隔离。 控制组通过 CPU 和内存等系统资源在 Linux 内核中启用精细控制。
借助 cgroup v2 支持,SQL Server 可缓解容器化部署中以前观察到的内存不足(OOM)错误,尤其是在 Kubernetes 群集(例如 AKS v1.25+)上,其中未强制实施容器规范中定义的内存限制。
检查 cgroup 版本
stat -fc %T /sys/fs/cgroup
结果如下所示:
| 结果 | DESCRIPTION |
|---|---|
cgroup2fs |
你使用的是 cgroup v2 |
cgroup |
你使用的是 cgroup v1 |
切换到 cgroup v2
最简单的路径是选择支持现装的 cgroup v2 的分发版。
如果需要手动切换,请将以下行添加到 GRUB 配置:
systemd.unified_cgroup_hierarchy=1
然后运行以下命令以更新 GRUB:
sudo update-grub
有关详细信息,请参阅以下资源:
不支持的功能和服务
以下功能和服务不适用于 Linux 上的 SQL Server 2025 (17.x) 预览版。 随着时间的推移,对这些功能的支持将越来越多。
| 面积 | 不支持的功能或服务 | 注释 |
|---|---|---|
| 数据库引擎 | 合并复制 | |
| 具有第三方连接的分布式查询 | ||
| 除 SQL Server 之外的数据源的链接服务器 | 在 Linux 上安装 PolyBase 以使用 Transact-SQL 语法查询 SQL Server 中的其他数据源。 如果遇到安装 PolyBase 不起作用的情况,则将反馈提交到 Microsoft Azure 论坛。 | |
系统扩展存储过程(xp_cmdshell 等) |
此功能已弃用。 如有特定需求,请将反馈提交到 Microsoft Azure 论坛。 | |
| FileTable、FILESTREAM | 如有特定需求,请将反馈提交到 Microsoft Azure 论坛。 | |
具有 EXTERNAL_ACCESS 或 UNSAFE 权限集的 CLR 汇编程序 |
||
| 缓冲池扩展 | ||
| 备份到 URL - 页 blob | 使用共享访问签名备份到 URL 支持块 blob。 | |
| SQL Server 代理 | 子系统:CmdExec、PowerShell、队列读取器、SSIS、SSAS、SSRS | |
| 警报 | ||
| 托管备份 | ||
| 高可用性 | 数据库镜像 | 此功能已弃用。 请改用 Always On 可用性组。 |
| 安全性 | 可扩展的密钥管理 (EKM) | 从 SQL Server 2022 (16.x) CU 12 开始,使用 Azure Key Vault 的可扩展密钥管理适用于 Linux 环境下的 SQL Server。 按照从步骤 5:配置 SQL Server 开始的说明进行操作。 |
| 链接服务器的 Windows 集成身份验证 | ||
| 可用性组 (AG) 终结点的 Windows 集成身份验证 | 为可用性组创建并使用基于证书的终结点身份验证。 有关详细信息,请参阅配置 SQL Server Always On 可用性组以在 Linux 上实现高可用性 | |
| 具有安全 Enclave 的 Always Encrypted | ||
| Linux 上的 SQL Server 部署不符合 FIPS | ||
| 服务 | SQL Server 浏览器 | Linux 上不需要 SQL Server Browser 服务,因为每个主机仅支持单个默认实例。 与 Windows 不同,没有要解析的命名实例,在安装过程中显式配置端口。 |
| SQL Server R Services | SQL Server 中支持 SQL Server R,但不支持作为单独包的 SQL Server R Services。 可以在 Linux 上为 SQL Server 2019 和 SQL Server 2022 安装机器学习服务。 |
|
| Analysis Services | ||
| 报告服务 | 为 Linux 上的 SQL Server 配置 Power BI 报表服务器目录数据库。 在 Windows 上运行 SQL Server Reporting Services (SSRS),并在 Linux 上的 SQL Server 部署上托管 SSRS 的目录数据库。 |
注释
SQL Server 2025 (17.x) 预览版功能依赖于 Azure Arc 代理,包括Microsoft Entra 身份验证(以前称为 Azure Active Directory 身份验证)、Microsoft Purview、即用即付(PAYG)和 Defender 集成,目前不支持在容器中部署的 SQL Server。 已启用 Azure Arc 的 SQL Server 不支持容器中运行的 SQL Server。
有关 Windows 上 SQL Server 各版本支持的功能列表,请参阅:
- SQL Server 2025 预览版的版本和支持的功能
- SQL Server 2022 各个版本及其支持的功能
- SQL Server 2019 各个版本及其支持的功能
- 版本和 SQL Server 2017 支持的功能
- 版本和 SQL Server 2016 支持的功能