使用较新的Mongo Shell版本和较旧的MongoDB版本是否安全?

时间:2018-10-15 20:52:00

标签: mongodb mongo-shell

我在多个生产服务器上使用MongoDB,不同项目的版本不同。我的开发环境具有外壳程序的v3.6,但是当我使用MongoDB v3.4连接到服务器时,登录时会收到以下消息:

  

警告:外壳和服务器版本不匹配

使用较新的Mongo Shell和较旧的DB版本是否不安全? MongoDB是否提供了与此有关的任何官方答案/文档?

1 个答案:

答案 0 :(得分:1)

  

使用较新的Mongo Shell和较旧的DB版本是否不安全?

启动警告是关于期望而不是安全的:理想情况下,x.y shell和MongoDB部署的主要版本(mongo)应该属于同一发行系列。基本命令通常是向后兼容的(在适当情况下,默认情况下将默认为“传统模式”),但是不匹配的Shell版本肯定会导致意外或令人困惑的结果。

例如,3.6 mongo外壳程序包含helpers for new MongoDB 3.6 features之类的会话和可重试的写入。如果连接到较旧的MongoDB服务器,则使用帮助程序提供较新功能或选项可能并不总是会导致明显的错误或警告。

类似地,如果您使用3.4 mongo shell连接到MongoDB 3.6部署,您将缺少新服务器功能的助手。

如果您确信差异不会对您使用的命令造成任何问题,则可以选择忽略版本不匹配警告。

如果您经常需要连接到多个MongoDB服务器版本(并使用Linux或macOS),则m (MongoDB version manager)非常方便下载和在多个mongo版本之间进行切换。

相关问题