升级集群的 MongoDB 主版本
您可以随时通过 修改 Atlas 集群来升级 Atlas 集群的主要版本。
为了确保您顺利过渡到新的 MongoDB 版本并且不会影响您的应用程序,在生产 Atlas 集群上升级主要版本之前,请使用以下过程创建过渡集群并根据新的 MongoDB 版本测试您的应用程序。
Considerations
以下注意事项适用:
升级之前,您的集群必须处于正常状态。
如果您在主要版本升级前拍摄按需快照,请等待快照完成后再升级版本。
每次只能升级 Atlas 集群的一个主要版本。 升级集群时无法跳过任何主要版本。
每个主要版本均包含某些可能无法与以前版本向后兼容的功能。升级到新的主要版本时,请查看 发布说明,了解可能会影响应用程序的更改。另外,如果使用 Stable API,就能确保 MongoDB 版本之间的行为变化不会在升级后破坏应用程序。
MongoDB Stable API 包含应用程序用于读写数据、创建集合和索引以及执行其他常见任务的部分 MongoDB 命令。Stable API 允许您指定应用程序运行哪个版本的 MongoDB API,并为应用程序提供长期 API 稳定性。它支持更频繁的发布和自动服务器升级,使您的应用程序可以利用快速发布功能,而无需冒险执行会破坏向后兼容性的更改。
升级MongoDB主要版本后,您将无法降级到以前的版本,除非在升级之前固定集群的FCV 。
从 MongoDB 6.0 开始,
$$SEARCH_META
聚合变量不能在$searchMeta
阶段之后的任何后续阶段使用。如果您想从以前的版本升级到 MongoDB 6.0,并在 Atlas Search 使用
$searchMeta
查询中使用$$SEARCH_META
聚合变量,请在升级集群之前仔细检查,以免出错。
必需的访问权限
要升级集群,您必须具有项目的 Project Owner
或更高角色。
升级MongoDB主版本
要升级MongoDB主版本:
AtlasGoClusters在Atlas中,Go项目的 页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
如果尚未出现,请单击侧边栏中的 Clusters(集群)。
会显示集群页面。
为过渡环境创建 Atlas 集群。
注意
如果已经有 Atlas 集群作为过渡环境,则可以跳过此步骤。
单击 Create 按钮,打开集群创建模式。配置暂存集群以匹配生产集群。不必为暂存集群启用备份。
要了解如何创建新集群,请参阅创建集群。
重要
如果为暂存集群选择较小的集群层, 请考虑运行的任何性能测试 可能无法代表升级后的生产集群的性能。 您可能还需要根据 要镜像到暂存集群的数据量来选择更大的存储大小。
将您的暂存应用程序指向暂存集群。
更新暂存应用程序以指向暂存集群。有关检索暂存集群的 MongoDB 驱动程序友好连接字符串的说明,请参阅通过驱动程序连接。
确认应用程序可以成功连接到暂存集群并且应用程序按预期运行。
(可选)将您的应用程序升级到最新的 MongoDB 驱动程序。
将应用程序升级到适用于集群 MongoDB 版本的最新 MongoDB 驱动程序,就能完全使用较新 MongoDB 版本提供的功能。更新的驱动程序版本还能提高性能或稳定性。有关特定 MongoDB 版本的推荐 MongoDB 驱动程序文档和连接示例,请参阅通过驱动程序连接。通过使用 Stable API,您可以确保 MongoDB 版本之间的行为变化不会破坏应用程序。
如果升级应用程序后遇到错误,请在 JIRA 项目中为您的 MongoDB 驱动程序提交工单。
AtlasGoClusters在Atlas中,Go项目的 页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
如果尚未出现,请单击侧边栏中的 Clusters(集群)。
会显示集群页面。
将生产集群升级为目标 MongoDB 版本。
对过渡集群的性能和运行有信心后,对生产集群重复升级步骤。
当 Atlas 完成升级过程后, 请检查生产应用程序是否仍然连接并正常运行。
如果使用较新的 MongoDB 驱动程序升级了暂存应用程序且对性能和运行感到满意,请考虑安排一个维护期来升级您的生产应用程序。
如果升级后的生产集群出现问题, 请使用以下部分的过程提交一个高优先级支持票证。
在升级期间管理功能兼容性 (FCV)
Atlas和本地部署部署均支持MongoDB主要版本升级。 FCV启用或禁用保留与早期版本MongoDB不兼容的数据的功能。您可以在Atlas中升级之前锁定集群的FCV ,这样您就可以在升级后将MongoDB恢复到以前的版本,而不会遇到版本兼容性问题。
您可以通过以下步骤固定和取消固定集群的FCV 、将集群降级一个主要版本或文件支持票证。
警告
FCV是一种短期指标,在固定日期后最多仅持续 4周,并且不会模拟以前二进制版本的行为。它仅推迟升级某些支持新服务器功能的内部数据结构。在确信无需降级到以前的版本后,取消固定FCV以匹配当前的二进制版本。
限制
固定集群的FCV
当您的集群具有固定的FCV时,集群卡底部集群的 Version旁边会出现一个固定图标。如果将游标悬停在图钉图标上,则会出现显示FCV和到期日期的工具提示。
Atlas会在到期日期当日或之后开始的下一个维护窗口取消固定集群的FCV 。
如果您已经升级了集群的MongoDB版本,则Atlas会在 PIN 过期后升级其FCV以匹配其MongoDB版本。
要固定集群的FCV :
AtlasGoClusters在Atlas中,Go项目的 页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
如果尚未出现,请单击侧边栏中的 Clusters(集群)。
会显示集群页面。
设置到期日期。
所有日期均以 格式设立为 ISO8601 UTCMM/DD/YYYY
日期和时间格式的时间戳。将FCV到期日期设置为固定FCV之日起四个星期内。过期后,工具提示会显示 Expired XX/XX/XXXX
。您的FCV密码将在 4周后自动过期。
FCV固定到期后, Atlas会在到期日期当日或之后开始的下一个维护窗口取消固定集群的FCV 。如果您已经升级集群的MongoDB版本, Atlas会升级其FCV以匹配其MongoDB版本。
要使用API为集群固定FCV ,请参阅为一个项目中的一个集群固定FCV 。
取消固定集群的FCV
要为集群取消固定FCV :
将集群降级一个主要版本
应用集群版本时存在以下限制:
只有在升级之前固定集群的FCV ,才能降级。
您只能将集群降级到与固定的FCV匹配的主要版本。
仅当固定的FCV仅比当前FCV低一个主要版本并且您未启用快速发布时,您才能执行此动作。
您无法降级到生命周期结束后的版本。
要将集群降级一个主要版本,请执行以下操作:
AtlasGoClusters在Atlas中,Go项目的 页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
如果尚未出现,请单击侧边栏中的 Clusters(集群)。
会显示集群页面。
联系支持人员
如果您对迁移支持有任何超出本文档范围的问题, 或者在迁移过程中遇到错误, 请通过 Atlas 用户界面提交支持工单。