【发布时间】:2020-12-29 07:54:37
【问题描述】:
我有一个在 3.6 版中运行的高效 mongodb 副本集(3 个成员)。正如标题所料,我想升级到 4.0 版。我已按照此处的说明进行操作: https://docs.mongodb.com/manual/release-notes/4.0-upgrade-replica-set/ 因此 setFeatureCompatibilityVersion 设置为“3.6”,副本集协议版本已设置为 pv1。 关闭成员,升级二进制文件,重新启动并重新连接到副本集的说明很遗憾。与每个副本集成员一一对应。
我稍微修改了这个工作流程。而不是关闭一个成员,我只想将运行 4.0 版的第四个成员添加到集合中。初始同步完成后,我想从集合中删除一个旧成员。然后添加下一个运行版本 4.0 的成员,删除下一个旧成员,依此类推。
当我从 3.4 升级到 3.6 时,我已经使用过这种技术,并且效果很好。
现在真正的问题:
我将版本 4.0 的第四个成员添加到我的 3.6 副本集
rs.add("serverip") 并命令悲伤“好的”。
但是当我查找副本集状态时,新成员是 “(不可访问/健康)” 并且最后一个心跳消息悲伤 “服务器最小和最大线路版本不兼容(7,7)与客户端最小有线版本 (6,6)"
我在这里做错了什么?我没有找到很多关于“有线版本”以及它们受到什么影响或配置的信息。那么如何将现有副本集中的这些线版本“升级”为 7,或者如何强制新版本 4.0 成员使用版本 6?
【问题讨论】:
标签: mongodb