mongo --version 和 mongosh --version 的区别

3
在终端中,当我输入mongosh --version时,我得到的是1.0.7,但当我输入mongo --version时,我得到的是
Build Info: {
    "version": "5.0.2",
    "gitVersion": "6d9ec525e78465dcecadcff99cce953d380fedc8",
    "modules": [],
    "allocator": "system",
    "environment": {
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

这个有问题吗,因为mongosh和mongo是不同的版本?我能正常使用mongoDB吗?


2
它们只是不同的工具,因此版本不同。mongosh 是最近推出的,而 mongo shell 已经存在一段时间了。这两个都是用于访问 MongoDB 服务器的命令行工具。它们都具有类似的功能。 - prasad_
谢谢。@prasad_ - Bryan Hain
1个回答

5
正如@prasad所指出的,mongosh是较新的工具。
在这里查看公司博客文章:https://www.mongodb.com/blog/post/introducing-the-new-shell 引用上面博客文章中的内容:
自 MongoDB 开始以来,就有一个 shell(mongo),几乎每个使用 MongoDB 的人都出于某种原因使用它。从运行简单查询到脚本化管理操作,我们的用户几乎每天都会多次使用 shell。
随着 MongoDB 作为数据平台的不断增长和扩展,shell 需要做的越来越多。我们考虑如何扩展 mongo 以随着 MongoDB 平台的扩展而增长,但我们意识到这并不是正确的方法。
因此,我们回到了绘图板,并从头设计了一个全新的 MongoDB Shell。新的 MongoDB Shell 是可扩展的,因此我们可以轻松地添加新功能,因为新产品和服务被添加到 MongoDB 平台,它是可嵌入的,因此除了在终端中使用它之外,您还可以在其他产品中使用它(其中一个示例是 MongoDB for VS Code),最后但并非最不重要的是,它提供了现代命令行体验和增强的可用性功能。
MongoDB Shell 是一个独立的产品,与 MongoDB Server 分开开发,并在 Apache 2 许可下开源。

3
值得注意的是,遗留版的mongo shell在Mongo v5中已被弃用 (https://www.mongodb.com/docs/manual/reference/program/mongo/),我认为在v6中已经移除了(至少在docker镜像中是这样)。 - Mike Lippert
我希望这能更详细地解释何时使用其中之一。似乎mongo正在逐渐被淘汰。但我不确定是完全淘汰,还是只针对交互式 shell 部分。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接