在 Debian 上安装 MongoDB Community Edition

在本页面

概观

使用本教程从 Debian 上的.deb包安装 MongoDB Community Edition。

MongoDB 仅为 Debian 8 和 9 的 64-bit 版本提供包。

重要 由 Debian 提供的 mongodb 软件包不是由 MongoDB 公司维护的.mongodb-org 软件包由 MongoDB 公司正式维护和支持,并保留 up-to-date 与最新的 MongoDB 版本。此安装过程使用 mongodb-org 包。 Debian mongodb包与 MongoDB Inc. mongodb-org包冲突。 Run sudo apt list --installed | grep mongodb检查系统上是否已安装mongodb包。在尝试此过程之前,请使用sudo apt remove mongodbsudo apt purge mongodb完全删除并清除mongodb包。

MongoDB 在自己的 repository 中提供官方支持的包。该 repository 包含以下包:

包裹名字描述
mongodb-org一个metapackage将自动安装下面列出的四个 component 包。
mongodb-org-server包含mongod守护程序以及关联的 configuration 和 init 脚本。
mongodb-org-mongos包含mongos守护程序。
mongodb-org-shell包含mongo shell。
mongodb-org-tools包含以下 MongoDB 工具:mongoimport bsondumpmongodumpmongoexportmongofilesmongoperfmongorestoremongostatmongotop

mongodb-org-server包提供了一个初始化脚本,该脚本使用/etc/mongod.conf configuration 文件启动mongod

有关使用此初始化脚本的详细信息,请参阅Run MongoDB 社区版

这些包与 Debian 提供的mongodbmongodb-servermongodb-clients包冲突。

默认情况下,程序包提供的默认/etc/mongod.conf configuration 文件bind_ip设置为127.0.0.1。在初始化副本集之前,根据您的环境需要修改此设置。

安装 MongoDB Community Edition

注意 要安装 MongoDB 的其他 version,请参阅 version 的文档。要安装以前的 version,请参阅 version 3.4的教程。

本安装指南仅支持 64-bit 系统。有关详细信息,请参阅平台支持

Debian 软件包 management 工具(i.e .dpkgapt)通过要求经销商使用 GPG 密钥签名包来确保包的一致性和真实性。

Import 包 management 系统使用的 public key。

从终端发出以下命令以 import MongoDB 公共 GPG Key 从https://www.mongodb.org/static/pgp/server-3.6.asc

wget -qO - https://www.mongodb.org/static/pgp/server-3.6.asc | sudo apt-key add -

该操作应以OK响应。

为 MongoDB 创建/etc/apt/sources.list.d/mongodb-org-3.6.list 文件。

使用适合您的 Debian version 的命令创建列表文件:

  • Debian 8“Jessie”

    
    

echo“deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.6 main”| sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

 
- Debian 9 "Stretch"
 

    - ```java
echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/3.6 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

目前包可用于 Debian 8“Jessie”和 Debian 9“Stretch”。

重新加载本地包数据库。

发出以下命令以重新加载本地包数据库:

sudo apt-get update

安装 MongoDB 包。

安装 MongoDB 的最新稳定 version。

发出以下命令:

sudo apt-get install -y mongodb-org

安装 MongoDB 的特定版本。

要安装特定版本,必须单独指定每个 component 软件包以及 version number,如下面的示例所示:

sudo apt-get install -y mongodb-org=3.6.14 mongodb-org-server=3.6.14 mongodb-org-shell=3.6.14 mongodb-org-mongos=3.6.14 mongodb-org-tools=3.6.14

如果只安装mongodb-org=3.6.14并且不包含 component 软件包,则无论您指定了什么 version,都将安装每个 MongoDB 软件包的最新 version。

固定 MongoDB 的特定 version。

虽然您可以指定 MongoDB 的任何可用 version,但apt-get将在更新的 version 可用时升级包。为防止意外升级,请将包装固定。要在当前安装的 version 中固定 MongoDB 的 version,请发出以下命令序列:

echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections

Run MongoDB 社区版

大多数 Unix-like 操作系统限制了 session 可能使用的系统资源。这些限制可能会对 MongoDB 操作产生负面影响。有关更多信息,请参见UNIX ulimit 设置

MongoDB 实例默认存储/var/lib/mongodb中的数据 files 和/var/log/mongodb中的 log files,并使用mongodb用户帐户运行。您可以在/etc/mongod.conf中指定备用 log 和数据文件目录。有关其他信息,请参阅systemLog.pathstorage.dbPath

如果更改运行 MongoDB process 的用户,则必须**修改/var/lib/mongodb/var/log/mongodb目录的访问控制权限,以授予此用户访问这些目录的权限。

启动 MongoDB。

发出以下命令以启动mongod

sudo service mongod start

验证 MongoDB 是否已成功启动

通过在/var/log/mongodb/mongod.log处检查 log 文件的内容以获取 line 读取来验证mongod process 是否已成功启动

[initandlisten] waiting for connections on port 27017

<port>mongod监听的 port。如果修改了/etc/mongod.conf configuration 文件中的net.port设置,则 port 可能会有所不同。

如果修改了systemLog.path configuration 文件选项,请在指定给该设置的位置查找 log 文件。

您可能会在mongod输出中看到 non-critical 警告。当您看到上面显示的 log line 时,您可以在 MongoDB 的初始 evaluation 期间安全地忽略这些警告。

停止 MongoDB。

根据需要,您可以通过发出以下命令来停止mongod process:

sudo service mongod stop

重启 MongoDB。

发出以下命令以重新启动mongod

sudo service mongod restart

开始使用 MongoDB。

在与mongod相同的 host 机器上启动mongo shell。使用--host command line 选项指定mongod侦听的 localhost 地址和 port:

mongo --host 127.0.0.1:27017

稍后,要停止 MongoDB,请在mongod实例正在运行的终端中按Control+C

卸载 MongoDB Community Edition

要从系统中完全删除 MongoDB,必须删除 MongoDB applications 本身,configuration files 以及包含数据和日志的任何目录。以下部分将引导您完成必要的步骤。

警告此 process 将完全删除 MongoDB,其 configuration 和所有数据库。此 process 不可逆,因此请确保在继续之前备份所有 configuration 和数据。

停止 MongoDB。

通过发出以下命令停止mongod process:

sudo service mongod stop

删除包。

删除以前安装的所有 MongoDB 包。

sudo apt-get purge mongodb-org*

删除数据目录。

删除 MongoDB 数据库和 log files。

sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb