如何在 Ubuntu 20.04 上安装 MongoDB

在 Ubuntu 系统上安装和管理 MongoDB 需要知道的一切

MongoDB 是一种 NoSQL、开源、面向文档的数据库,用于管理 Web 应用程序。它将数据动态存储在 JSON 格式的文档中,不需要像传统的基于表的数据库那样的预定义模式。

在本文中,我们将了解如何在 Ubuntu 20.04 LTS 系统上安装和配置 MongoDB。

先决条件

在我们开始之前,以启用 sudo 的用户身份登录并通过发出如下所示的命令更新和升级服务器上的软件包。

须藤 apt 更新 && 须藤 apt 升级

在 Ubuntu 20.04 上安装 MongoDB

有两种方法可以在您的 Ubuntu 机器上安装 MongoDB。首先,来自默认的 Ubuntu 存储库,其中包含旧版本 MongoDB 3.6。其次,通过将 MongoDB 的专用包存储库(包含最新版本 MongoDB 4.4)添加到 易于 你的系统资源。

MongoDB Inc 不支持 Ubuntu 存储库中的 mongoDB 包。它也不同于 mongodb-org 包。所以,建议通过将MongoDB的专用包存储库添加到安装MongoDB中 易于 资源。

通过添加官方仓库安装MongoDB

首先,导入最新版MongoDB的公有GPG密钥。要找到合适的密钥,请访问此 URL 并查找 服务器-x.x.asc 与当前最新版本的 MongoDB 对应的文件。

在撰写本文时,MongoDB 的最新版本是 4.4.因此,我们将选择它并使用以下命令导入 4.4 版的 GPG 密钥。

wget -qO - //www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key 添加 -

成功执行后,该命令将给出如下输出 .

由于我们需要 mongodb-org 要安装最新版本的 MongoDB,请使用以下命令将官方 MongoDB 存储库添加到您的系统。

echo "deb [ arch=amd64,arm64 ] //repo.mongodb.org/apt/ubuntu focus/mongodb-org/4.4 multiverse" |须藤三通/etc/apt/sources.list.d/mongodb-org-4.4.list

现在更新本地包数据库并安装 mongodb-org 通过一一运行下面的命令来打包。

须藤 apt-get 更新 -y 须藤 apt-get 安装 mongodb-org -y

安装 MongoDB 后,启动并启用 蒙哥 使用以下命令在您的系统上提供服务。

systemctl 启动 mongod systemctl 启用 mongod

要验证 MongoDB 是否在您的系统上运行,请使用以下命令。它应该输出状态为活动。

systemctl 状态 mongod
mongod.service - MongoDB 数据库服务器已加载:已加载(/lib/systemd/system/mongod.service;已启用;供应商 p> 活动:自 2020 年 8 月 18 日星期二 09:01:48 UTC 起处于活动状态(正在运行);45 秒前: //docs.mongodb.org/manual Main PID: 13739 (mongod) Memory: 79.1M CGroup: /system.slice/mongod.service └─13739 /usr/bin/mongod --config /etc/mongod.conf 

您还可以使用以下命令检查连接状态、当前版本、服务器地址和端口:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

如果连接状态显示 好的:1,则表示服务器正常工作,如下面的输出所示。

MongoDB shell 版本 v4.2.8 连接到:mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb 隐式会话:会话 { "id" : UUID("6ba987a2-30fc-4d84-8665-57fd28")服务器版本:4.2.8 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }

MongoDB 的默认端口号是 27017,继续运行 127.0.0.1,这是本地主机的环回地址。

配置 MongoDB

配置 MongoDB 是可选的,因为默认配置设置足以满足您的需求,但对于生产环境,建议启用授权。

MongoDB 的配置文件存在于 /等等 目录。要编辑它,请在终端中键入以下命令。

纳米 /etc/mongod.conf

现在转到文件底部并通过删除 # 符号和类型 授权:启用 如下所示。

安全:授权:启用

使用以下命令重新启动 MongoDB 以应用更改。

systemctl 重启 mongod

要了解有关配置 MongoDB 的更多信息,请访问此文档页面。

创建和验证 MongoDB 管理员

我们现在将创建一个可以访问 MongoDB 数据库的管理员用户。

创建 MongoDB 管理员

要访问 MongoDB shell,请使用 蒙戈 命令。

蒙戈

然后,使用以下命令访问 MongoDB 管理数据库。

使用管理员

现在使用以下命令创建具有角色的新用户和密码 userAdminAnyDatabase.

db.createUser( { user: "UserName", pwd: "PasswordOfYourChoice", roles: [{ role:"userAdminAnyDatabase",db:"admin"}] } )

笔记: 替换用户的值 (用户名) 和密码 (密码你的选择) 供您选择。

成功创建MongoDB用户后,输入 退出() 退出外壳。

退出()

验证管理员身份验证

要验证身份验证,请使用以下命令访问管理员帐户。

mongo -u 用户名 -p --authenticationDatabase 管理员

shell 会提示你输入密码。输入您在上述说明中为用户选择的密码,然后点击 进入.

然后,使用以下命令访问 admin 数据库。

使用管理员

现在,发出 显示用户 命令以获取所有经过身份验证的用户的详细信息。

显示用户
{ "_id" : "admin.UserName", "userId" : UUID("d5e186d7-0520-41a5-8f42-da3b7b8e8868"), "user" : "UserName", "db" : "admin", "roles" : [{“角色”:“userAdminAnyDatabase”,“db”:“admin”}],“机制”:[“SCRAM-SHA-1”,“SCRAM-SHA-256”]}

您应该会在输出中看到您在上述步骤中创建的用户名。

管理 MongoDB

为了管理 mongod 进程,我们使用内置的 在里面 Ubuntu 系统。从 16.04 Xenial 使用的 Ubuntu 版本 系统 管理 MongoDB,它使用 系统控制 命令。

停止 mongod 服务

停止 蒙哥 过程,使用以下命令。

须藤 systemctl 停止 mongod

启动mongod服务

启动 蒙哥 过程,使用以下命令。

须藤 systemctl 启动 mongod

重启 Mongod

重新启动 蒙哥 过程,使用以下命令。

须藤 systemctl 重启 mongod

我们已经在您的 Ubuntu 20.04 机器上成功安装了最新版本的 MongoDB。要了解有关 MongoDB 的更多信息,请参阅此文档。