mongosync
版本控制
Cluster-to-Cluster Sync 使用 语义版本控制2.0.0 。版本号的形式为X.Y.Z
,其中X
为主要版本, Y
为次要版本, Z
为补丁版本。
MongoDB 使用以下准则来确定何时递增 Cluster-to-Cluster Sync 的版本号:
主要版本号:该版本破坏了向后兼容性。
次要版本号:该版本包含向后兼容的重要新功能。
补丁号:此版本仅包含向后兼容的小型更改。
当前支持的版本
MongoDB 仅支持每个主要版本的最新补丁版本。 例如, mongosync
1.8.0是1.8的最新补丁版本。 如果您使用的mongosync
版本不受支持,系统可能会要求您升级才能获得支持。
与版本相关的注意事项
Cluster-to-Cluster Sync 有以下与版本相关的注意事项:
支持生命周期
从该系列的第一个版本开始,主要版本的支持时间至少为一年。
如果某个版本的 Cluster-to-Cluster Sync 仅适用于不支持的 MongoDB Server 版本,则该版本的 Cluster-to-Cluster Sync 也不受支持。
补丁版本
只有每个主要版本系列中的最新版本才会收到新的补丁版本。 例如,当发布 Cluster-to-Cluster Sync 2.1.0 版本时,2.0 版本将不再接收补丁版本。同时,1.3 版本将继续接收补丁,直到 1.4 版本发布。
实时升级
1.7.0 版本的新增功能。
从mongosync
1.7.0开始, 您可以升级mongosync
,而无需从头开始重新启动数据同步操作。 您只能从mongosync
1实时升级到mongosync
1.7.3或更高版本。 7 。 2 或更高版本。
实时升级后, mongosync
会继续升级前正在进行的操作。
要实时升级mongosync
,请执行以下步骤:
(可选)暂停mongosync
进程
要暂停mongosync
,请在每个运行的mongosync
进程上运行 pause
。
您可以稍后从暂停状态恢复mongosync
进程,如最后一步所示。
提示
如果您不想在实时升级后立即恢复数据同步操作,请考虑暂停mongosync
进程。 如果您要协调多个mongosync
进程的操作,这非常有用。
下载并安装新的mongosync
二进制文件
要下载并安装新的mongosync
二进制文件,请参阅下载和安装 mongosync。
初始化mongosync
进程
要初始化mongosync
进程,请参阅快速入门。 在实时升级后的初始化期间, mongosync
会更新持久性元数据。
恢复mongosync
进程
如果您之前在可选的第一步中暂停了任何mongosync
进程,请对所有mongosync
进程运行resume
。
如果在实时升级之前已经在进行数据同步操作,则在实时升级后,可能无法全部支持最新mongosync
版本中添加的新功能。 实时升级后始终支持性能改进和错误修复。 有关实时升级后可能支持的新功能的更多信息,请参阅1.7.0 版本。
非实时升级或降级
如果您使用的是实时升级过程不支持的早期mongosync
版本,或者需要降级mongosync
,请执行以下步骤:
警告
新的mongosync
进程不会恢复任何可能正在进行的工作。 启动新进程时,同步操作将从头开始。
持久元数据
在正常操作期间, mongosync
会创建持久保存到目标数据库磁盘的元数据。 此元数据没有版本控制,可能随时更改。
日志消息
日志消息格式没有版本控制,可能随时更改。 这包括对消息文本的更改,以及消息中其他字段是否存在或内容。
用户脚本和应用程序不应依赖日志输出。 脚本和应用程序应使用监控 API来确定mongosync
的当前状态。
示例
以下示例说明了可能导致每种版本号更新的变更类型。
主要发布版本
某些更改会导致新旧版本的
mongosync
在目标集群上针对同一组输入产生不同的结果。 不包括:修复了旧版本的
mongosync
无法复制数据的错误。当早期行为被明确记录为不支持时。
更改已记录的 CLI 参数或配置键,导致
mongosync
拒绝以前有效的输入。 不包括:错误修复,例如解析或类型错误。
尽管 CLI 参数或配置键可能已弃用,但记录的 CLI 参数或配置键的含义永远不会改变。 如果需要,新参数或键将替换旧的、已弃用的实体。
破坏与受支持的 MongoDB Server 版本的兼容性的更改。
删除 REST API 的一个版本。
mongosync
可能会放弃所有旧端点,转而使用新版本的 API。 REST API 中永远不会出现任何其他类型的向后不兼容的更改。如果
mongosync
仍然支持支持该功能的 MongoDB Server 版本,则删除对以前支持的 MongoDB Server 功能的支持。如果
mongosync
已支持某个主要版本的 MongoDB Server,则需要新的权限才能继续支持该版本的 MongoDB Server。
次要版本
添加对以前不兼容的 MongoDB Server 版本的支持。
对于以前不受支持的 MongoDB Server 主要版本,需要新的权限。
添加对以前不支持的collection类型的支持。
添加对以前不支持的索引类型的支持。
在 REST API 中添加新端点、新字段或新接受的输入。
添加新记录的 CLI 选项。
添加新的配置键或接受的值。
补丁版本
向后兼容的错误修复。
性能回归修复。
性能改进。
帮助文本字符串的更改。
对日志文本字符串的更改。
对 API 响应中的信息文本进行更改,但不对“状态”等枚举样式的字符串字段进行更改。
错别字修复。