如何在Ubuntu上安装MongoDB

 如何在Ubuntu上安装MongoDB

本教程介绍了在 Ubuntu 和基于 Ubuntu 的 Linux 发行版上安装 MongoDB 的两种方法。

MongoDB 是一个越来越流行的自由开源的 NoSQL 数据库,它将数据存储在类似 JSON 的灵活文档集中,这与 SQL 数据库中常见的表格形式形成对比。

你很可能发现在现代 Web 应用中使用 MongoDB。它的文档模型使得使用各种编程语言能非常直观地访问和处理它。

在本文中,我将介绍两种在 Ubuntu 上安装 MongoDB 的方法。

在基于 Ubuntu 的发行版上安装 MongoDB

  1. 使用 Ubuntu 仓库安装 MongoDB。简单但不是最新版本的 MongoDB
  2. 使用其官方仓库安装 MongoDB。稍微复杂,但你能得到最新版本的 MongoDB。

第一种安装方法更容易,但如果你计划使用官方支持的最新版本,那么我建议使用第二种方法。

有些人可能更喜欢使用 snap 包。Ubuntu 软件中心提供了 snap,但我不建议使用它们,因为他们现在已经过期了,因此我这里不会提到。

方法 1:从 Ubuntu 仓库安装 MongoDB

这是在系统中安装 MongoDB 的简便方法,你只需输入一个命令即可。

安装 MongoDB

首先,确保你的包是最新的。打开终端并输入:

  1. <span class="kwd">sudo</span><span class="pln"> apt update </span><span class="pun">&&</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> apt upgrade </span><span class="pun">-</span><span class="pln">y</span>

继续安装 MongoDB:

  1. <span class="kwd">sudo</span><span class="pln"> apt install mongodb</span>

这就完成了!MongoDB 现在安装到你的计算机上了。

MongoDB 服务应该在安装时自动启动,但要检查服务状态:

  1. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> status mongodb</span>

如何在Ubuntu上安装MongoDB

Check if the MongoDB service is running.

你可以看到该服务是活动的。

运行 MongoDB

MongoDB 目前是一个 systemd 服务,因此我们使用 systemctl 来检查和修改它的状态,使用以下命令:

  1. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> status mongodb</span>
  2. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> stop mongodb</span>
  3. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> start mongodb</span>
  4. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> restart mongodb</span>

你也可以修改 MongoDB 是否自动随系统启动(默认:启用):

  1. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> disable mongodb</span>
  2. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> enable mongodb</span>

要开始使用(创建和编辑)数据库,请输入:

  1. <span class="pln">mongo</span>

这将启动 mongo shell。有关查询和选项的详细信息,请查看手册

注意:根据你计划使用 MongoDB 的方式,你可能需要调整防火墙。不过这超出了本篇的内容,并且取决于你的配置。

卸载 MongoDB

如果你从 Ubuntu 仓库安装 MongoDB 并想要卸载它(可能要使用官方支持的方式安装),请输入:

  1. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">systemctl</span><span class="pln"> stop mongodb</span>
  2. <span class="kwd">sudo</span><span class="pln"> apt purge mongodb</span>
  3. <span class="kwd">sudo</span><span class="pln"> apt autoremove</span>

这应该会完全卸载 MongoDB。确保备份你可能想要保留的任何集合或文档,因为它们将被删除!

方法 2:在 Ubuntu 上安装 MongoDB 社区版

这是推荐的安装 MongoDB 的方法,它使用包管理器。你需要多打几条命令,对于 Linux 新手而言,这可能会感到害怕。

但没有什么可怕的!我们将一步步说明安装过程。

安装 MongoDB

由 MongoDB Inc. 维护的包称为 mongodb-org,而不是 mongodb(这是 Ubuntu 仓库中包的名称)。在开始之前,请确保系统上未安装 mongodb。因为包之间会发生冲突。让我们开始吧!

首先,我们必须导入公钥:

  1. <span class="kwd">sudo</span><span class="pln"> apt</span><span class="pun">-</span><span class="pln">key adv </span><span class="pun">--</span><span class="pln">keyserver hkp</span><span class="pun">:</span><span class="com">//keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4</span>

现在,你需要在源列表中添加一个新的仓库,以便你可以安装 MongoDB 社区版并获得自动更新:

  1. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/4.0 multiverse"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">tee</span><span class="pln"> </span><span class="pun">/</span><span class="pln">etc</span><span class="pun">/</span><span class="pln">apt</span><span class="pun">/</span><span class="pln">sources</span><span class="pun">.</span><span class="kwd">list</span><span class="pun">.</span><span class="pln">d</span><span class="pun">/</span><span class="pln">mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">-</span><span class="lit">4.0</span><span class="pun">.</span><span class="kwd">list</span>

要安装 mongodb-org,我们需要更新我们的包数据库,以便系统知道可用的新包:

  1. <span class="kwd">sudo</span><span class="pln"> apt update</span>

现在你可以安装最新稳定版的 MongoDB:

  1. <span class="kwd">sudo</span><span class="pln"> apt install </span><span class="pun">-</span><span class="pln">y mongodb</span><span class="pun">-</span><span class="pln">org</span>

或者某个特定版本(在 = 后面修改版本号)

  1. <span class="kwd">sudo</span><span class="pln"> apt install </span><span class="pun">-</span><span class="pln">y mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">=</span><span class="lit">4.0</span><span class="pun">.</span><span class="lit">6</span><span class="pln"> mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">-</span><span class="pln">server</span><span class="pun">=</span><span class="lit">4.0</span><span class="pun">.</span><span class="lit">6</span><span class="pln"> mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">-</span><span class="pln">shell</span><span class="pun">=</span><span class="lit">4.0</span><span class="pun">.</span><span class="lit">6</span><span class="pln"> mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">-</span><span class="pln">mongos</span><span class="pun">=</span><span class="lit">4.0</span><span class="pun">.</span><span class="lit">6</span><span class="pln"> mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">-</span><span class="pln">tools</span><span class="pun">=</span><span class="lit">4.0</span><span class="pun">.</span><span class="lit">6</span>

如果你选择安装特定版本,请确保在所有位置都修改了版本号。如果你修改了 mongodb-org=4.0.6,你将安装最新版本。

默认情况下,使用包管理器(apt-get)更新时,MongoDB 将更新为最新的版本。要阻止这种情况发生(并冻结为已安装的版本),请使用:

  1. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"mongodb-org hold"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> dpkg </span><span class="pun">--</span><span class="kwd">set</span><span class="pun">-</span><span class="pln">selections</span>
  2. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"mongodb-org-server hold"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> dpkg </span><span class="pun">--</span><span class="kwd">set</span><span class="pun">-</span><span class="pln">selections</span>
  3. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"mongodb-org-shell hold"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> dpkg </span><span class="pun">--</span><span class="kwd">set</span><span class="pun">-</span><span class="pln">selections</span>
  4. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"mongodb-org-mongos hold"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> dpkg </span><span class="pun">--</span><span class="kwd">set</span><span class="pun">-</span><span class="pln">selections</span>
  5. <span class="kwd">echo</span><span class="pln"> </span><span class="str">"mongodb-org-tools hold"</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">sudo</span><span class="pln"> dpkg </span><span class="pun">--</span><span class="kwd">set</span><span class="pun">-</span><span class="pln">selections</span>

你现在已经成功安装了 MongoDB!

配置 MongoDB

默认情况下,包管理器将创建 /var/lib/mongodb/var/log/mongodb,MongoDB 将使用 mongodb 用户帐户运行。

我不会去更改这些默认设置,因为这超出了本指南的范围。有关详细信息,请查看手册

/etc/mongod.conf 中的设置在启动/重新启动 mongodb 服务实例时生效。

运行 MongoDB

要启动 mongodb 的守护进程 mongod,请输入:

  1. <span class="kwd">sudo</span><span class="pln"> service mongod start</span>

现在你应该验证 mongod 进程是否已成功启动。此信息(默认情况下)保存在 /var/log/mongodb/mongod.log 中。我们来看看文件的内容:

  1. <span class="kwd">sudo</span><span class="pln"> </span><span class="kwd">cat</span><span class="pln"> </span><span class="pun">/</span><span class="kwd">var</span><span class="pun">/</span><span class="pln">log</span><span class="pun">/</span><span class="pln">mongodb</span><span class="pun">/</span><span class="pln">mongod</span><span class="pun">.</span><span class="pln">log</span>

如何在Ubuntu上安装MongoDB

Check MongoDB logs to see if the process is running properly.

只要你在某处看到:[initandlisten] waiting for connections on port 27017,就说明进程正常运行。

注意:27017 是 mongod 的默认端口。

要停止/重启 mongod,请输入:

  1. <span class="kwd">sudo</span><span class="pln"> service mongod stop</span>
  2. <span class="kwd">sudo</span><span class="pln"> service mongod restart</span>

现在,你可以通过打开 mongo shell 来使用 MongoDB:

  1. <span class="pln">mongo</span>

卸载 MongoDB

运行以下命令:

  1. <span class="kwd">sudo</span><span class="pln"> service mongod stop</span>
  2. <span class="kwd">sudo</span><span class="pln"> apt purge mongodb</span><span class="pun">-</span><span class="pln">org</span><span class="pun">*</span>

要删除数据库日志文件(确保备份你要保留的内容!):

相关推荐