在没有服务器的情况下安装 MongoDB shell 客户端

Vit*_*iev 22 package-management mongodb 18.04

MongoDB 的 shell 客户端在哪里,我在 Ubuntu 18.04 LTS 中找到了许多与 MongoDB 相关的软件包,但似乎无法找到该客户端究竟在哪里以及我应该安装什么的信息。

我知道如果我安装 MongoDB 包,shell 将被包含在内,但我不需要服务器和其他东西,因为我有 Atlas(云数据库服务器)。

以下是我在互联网上找到的链接:

解决上述所有问题是否有意义,我应该简单地安装 MongoDB 包吗?

Ste*_*nie 26

如果您只想要mongo外壳,则可以安装mongodb-clients问题中提到的软件包。但是,请注意,这包括较旧的 shell 版本 (3.6.3)。

官方 MongoDB 包随每个次要版本更新,理想情况下,您应该安装与 MongoDB 服务器的主要版本(3.6、4.0)相匹配的 shell 版本。shell 与服务器版本的严重不匹配会导致一些细微的错误以及缺少或过时的帮助程序。例如,MongoDB 3.6.x shell 没有事务的助手(在 4.0 中添加)。

MongoDB 文档包含有关在 Ubuntu安装官方软件包的信息。有一个mongodb-org-shell只包含 MongoDB shell的包,您可能还想mongodb-org-tools为其他命令行工具(mongodumpmongorestore、 ...)安装。

最好按照 MongoDB 文档中的说明进行操作,因为某些细节将来可能会发生变化(例如签名密钥),但在 Ubuntu 18.04(仿生)上运行 MongoDB 4.0 的一般步骤是:

  1. 从 MongoDB, Inc 导入用于对包进行签名的公钥

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
    
    Run Code Online (Sandbox Code Playgroud)
  2. 为 MongoDB 创建包列表文件

    echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
    
    Run Code Online (Sandbox Code Playgroud)
  3. 更新您的本地包数据库

    sudo apt-get update
    
    Run Code Online (Sandbox Code Playgroud)
  4. 安装所需的 MongoDB 包

    sudo apt-get install -y mongodb-org-shell
    
    Run Code Online (Sandbox Code Playgroud)

  • PS 我最终从 Ubuntu 代表那里安装了客户端软件包,我总是喜欢官方支持的软件包(我的意思是 Ubuntu,大多数时候它更容易)而不是从互联网安装,我需要它用于测试目的(shell),3.6 .3有SSL和一切。但是,我同意为了避免尽可能多的问题,应该安装最新版本的软件(尤其是在生产和其他方面)。再说一遍 - 伟大而完整的答案,非常有帮助! (2认同)