我们的devops家伙正在使用Docker设置预生产的MongoDB副本集,而且他们已经用完了最新的稳定版本:3.2 MongoDB服务器但是开发和集成环境已经在2.4服务器上了与Java驱动程序2.12一起使用。
升级到v3.x驱动程序将破坏我们的构建,现在我们没有时间或资源来重构并使其与3.x驱动程序一起工作所以暂时我想知道我们是否可以保留2.x驱动程序,但使用MongoDb服务器3.x 。
该文档有点像vague about this,但似乎暗示它有效。
请注意,建议用户在升级到3.2服务器时升级到3.2 Java驱动程序。 2.14.0驱动程序仅用于帮助尚未升级到3.x Java驱动程序系列的用户。
答案 0 :(得分:1)
根据the driver compatibility matrix,2.14驱动程序应该可以正常工作。但是,由于存在一些API中断更改(正如您所注意到的),其中包括对新功能的支持,您将无法使用2.14驱动程序。引用:
2.14驱动程序不支持所有MongoDB 3.2功能(例如,读取问题);但是,如果您当前使用的是2.x版本的驱动程序并且希望针对MongoDB 3.2运行但无法升级到驱动程序版本3.2,请使用2.14驱动程序。
所以是的,使用它,但没有新的3.2客户端功能。
但是,您当然会受益于2.6.x,3.0.x和3.2.x中添加的服务器端功能,当然最突出的当然是wiredTiger。
只是为了确保提醒您:
您必须将更新的中间步骤更新为2.6.x,然后再从3.0.x更新到3.2.x
没有捷径,没有,但是。但