对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。

MongoDB 版本和升级路径

MongoDB 会定期发布新版本。您如何接收这些版本以及您对时间安排的控制程度取决于您运行 MongoDB 的方式。根据您的部署类型,您应该以不同的方式为运行新版本做好准备。

本页面介绍了 MongoDB 版本号的含义、发布类型以及升级的一般工作方式。有关您部署的具体程序和策略,请参阅各处的链接。

MongoDB 版本号的格式为 X.Y.Z:

  • X 是主版本号。此处的更改表示该版本可能包含向后不兼容的更改和新功能,这些功能会以早期版本无法读取的格式持久保存数据。

  • Y 是次要版本。次要版本在主要版本之间提供增量功能,其可用性取决于您的部署类型。

  • Z 是补丁版本。补丁版本包含修复程序,并且在其发布系列内向后兼容。

驱动程序、MongoDB Shell 以及 MongoDB Database Tools 的版本独立于数据库服务器。驱动程序版本号与服务器版本号不对应。要了解哪些驱动程序版本适用于哪些服务器版本,请参阅您的驱动程序的兼容性页面。

主要版本会引入新功能,并可能包含向后不兼容的更改。MongoDB 为 Atlas 和自管理部署提供主要版本支持。

次要版本在主要版本之间以更快的节奏提供功能。在新的次要版本可用后,MongoDB 将停止对上一个次要版本进行修补。要继续接收安全更新和错误修复,请升级到最新次要版本的最新补丁版本。

从 MongoDB 8.2 开始,次要版本可用于 自动升级 上的 Atlas 集群。它们也适用于 Enterprise Advanced 和 Community 自管理部署。

从 MongoDB 9.0 开始:

  • 开启自动升级的 Atlas 集群可使用次要版本。

  • 手动升级的 Atlas 集群或自管理部署无法使用次要版本。

有关增量功能发布的信息,请参阅 功能更新发布。

注意

次要版本可能不支持所有功能,特别是 Atlas 实时迁移 和 mongosync。

从 MongoDB 9.0 开始,功能更新版本是年度次要版本,编号为 x.5,适用于 Atlas 和自管理部署。采用手动升级的 Atlas 集群和自管理部署可以使用功能更新版本来获取增量功能,而无需等待下一个主要版本。

功能更新版本的生命周期结束时间表和扩展生命周期支持资格与它们所扩展的主要版本相同。

重要

要接收 MongoDB 9.0 及更高版本的所有次要版本,请配置您的 Atlas 集群以执行 Latest Version With Auto Upgrades。所有其他部署仅有资格进行功能更新发布,而不适用于其他次要版本。

补丁版本包含修复程序,并且仅在其各自的主要和次要版本系列内向后兼容。您应始终运行适用于您的主要和次要版本的最新补丁版本。

发布候选版本是旨在评估新功能的预发布构建。它们不适合生产部署。

MongoDB 版本会先在 Atlas 上发布,然后再提供给自管理部署。

注意

Free 和 Flex 集群保持在同一个主版本。您无法选择发布节奏,Atlas 会自动升级它们。

Atlas 使用两种不同的方法来为您的部署提供升级:Atlas 中的手动升级和Atlas 中的自动升级。

  • Atlas 中的手动升级:您可以控制何时升级到新的主要版本。

    • Atlas Core 集群:您可以选择特定的主要版本,并控制升级到该版本的时间。
  • Atlas 自动升级:Atlas 会自动交付新版本。

    • Atlas Infinite 集群:Atlas Infinite 集群始终使用自动升级。对于 Atlas Infinite 集群,Atlas 用户界面中的 Latest Version With Auto Upgrades 选项始终处于启用状态。

    • Atlas Core 集群:Atlas Core 集群可以使用自动升级。要启用此行为,请在 Atlas 用户界面中选择选项 Latest Version With Auto Upgrades。

重要

处于自动升级状态的 Atlas 集群可能会在自管理部署中可供下载和安装之前运行某个版本。

对于自管理部署的手动升级(Enterprise Advanced 或 Community),您可以选择何时下载和安装每个版本。在您采取行动之前,一切都不会改变。

升级 MongoDB 二进制文件和启用新版本的功能是两个独立的步骤。

特征兼容性版本 (特征兼容性版本) 控制是否启用以早期版本无法读取的格式写入数据的功能。升级二进制文件后,您的部署将继续以之前的 FCV 运行,直到您提高它。这是故意的,当特征兼容性版本保持在早期版本时,您保留降级的能力。

注意

对于处于自动升级状态的 Atlas 集群,Atlas 会推进特征兼容性版本 (FCV) 以匹配每个新的 MongoDB 主版本。Atlas 首先会运行对 MongoDB 二进制文件的部署信号进行自动查看。您无法控制特征兼容性版本。

提高 特征兼容性版本 是无返回点。一旦启用了以新格式持久化数据的功能,就无法在 Atlas 上进行降级。

有关命令参考,请参阅 MongoDB 手册中的 setFeatureCompatibilityVersion。有关 特征兼容性版本 如何在 Atlas 上工作(包括在升级前固定 特征兼容性版本)的信息,请参阅 升级集群的 MongoDB 主要版本。

MongoDB 主版本均可获得五年的支持,并为 Enterprise Advanced 客户提供两年的可选 延长生命周期支持 (ELS) 期间。当某个版本停止支持时,它将不再收到修复,包括安全修复,并且 MongoDB 将不再维护其文档。

处理方式因部署类型而异:

  • 在 Atlas 上,MongoDB 会在版本达到生命周期结束前至少六个月发送电子邮件通知。通知中包含自行升级集群的说明。发送通知几个月后,Atlas 将停止允许在该版本上进行新部署。如果您未在通知中注明的日期之前升级,Atlas 会将您现有的集群升级到 MongoDB 当前的默认目标版本。如果您配置了维护窗口,Atlas 将在维护窗口期间执行升级。

    重要

    MongoDB 当前的默认目标版本并不总是紧随其后的主要版本。

  • 自管理部署需要在生命周期结束前进行升级。

要查看当前在哪些平台上支持哪些版本,请参阅 MongoDB Enterprise 支持的平台 或 MongoDB Community 支持的平台。

如果您运行
版本节奏
从这里开始

在 Atlas 中进行手动升级

您可以自行决定何时升级到下一个主要版本。

Atlas 中的自动升级

Atlas 会自动为您升级。使用维护窗口来控制跨环境的顺序。

自管理部署(Enterprise Advanced 和 Community)中的升级

由您决定时间。

对于自管理部署,升级过程因拓扑结构而异。每个版本的升级页面都链接到独立运行的实例、副本集和集群的升级过程。

在 9.0 之前的 MongoDB 版本中,您不能跳过次要版本。要从一个次要版本升级到另一个次要版本,请按顺序逐个升级。

要从次要版本升级到下一个主要版本,您可以:

  • 通过每个剩余的次要版本进行升级,然后升级到下一个主要版本。

  • 降级到上一个主要版本,然后升级到下一个主要版本。

每个升级或降级步骤都需要二进制升级和特征兼容性版本 (特征兼容性版本) 升级。

从 MongoDB 9.0 开始,Enterprise Advanced 部署除了主要版本外,仅接收年度功能更新版本。在一个发布周期内,不再有一系列需要跳过的次要版本。

在升级 MongoDB 的主要版本之前,无论您选择哪种升级类型,我们都建议您执行以下操作:

1

每个主要版本都会对可能影响针对早期版本编写的应用程序的更改进行文档记录。

2

执行这些操作的方式取决于您的部署。

  • 自管理:先升级非生产部署。

  • Atlas 中的手动升级:创建一个运行目标版本的预发布环境集群并进行测试。请参阅为集群升级 MongoDB 主版本。

  • Atlas 中的自动升级:使用维护波次按顺序升级预发布环境和生产环境。维护波次可能不会停止发布,也不会让您完全控制升级时间。对于 Atlas Core 集群,如果您需要更多时间来验证版本,可以切换到手动升级。要了解有关维护波次的更多信息,请参阅管理集群维护。

3

降级受到限制,具体限制取决于您的部署。选择与您的部署相匹配的选项,以查看适用于您的限制。

仅支持在相邻版本之间进行降级,并且需要针对您的集群配置执行特定程序。

  • 降级要求特征兼容性版本未提升,或者在原始升级之前已固定。

  • 集群只能降级到紧邻的前一个版本,即上一个主要版本或该主要版本的“功能更新”版本,且降级不能跨多个版本进行。

  • 处于“功能更新”(Feature Update) 版本上的集群可以降级到其自身的重大版本。

  • 除了极少数情况外,降级会落在目标版本的最新补丁版本上。

  • 降级后,新版本中引入的功能将不再可用,并且 MongoDB 不支持从新的较低版本进行第二次降级。

注意

您无法降级 Free 和 Flex 集群。