如何安装在 CentOS 8 上的 MongoDB

MongoDB 是一个免费且开源的文档数据库。它属于一个名为 NoSQL 的数据库系列,它不同于传统的基于表的 SQL 数据库,如 MySQL 和 PostgreSQL。

在 MongoDB 中,数据存储在灵活的JSON 文档中,其中字段可能因文档而异。它不需要预定义的架构,并且数据结构可以随着时间的推移而更改。

本教程介绍如何在 CentOS 8 服务器上安装和配置 MongoDB 社区版。

安装 MongoDB

MongoDB 在 CentOS 8 核心存储库中不可用。我们将启用官方的 MongoDB 存储库并安装包。

在撰写本文时,从官方 MongoDB 存储库提供的最新版本的 MongoDB 是 4.2 版。在开始安装之前,请访问 MongoDB 文档的红帽安装部分,并检查是否有新版本可用。

以 root 或用户为对象执行以下步骤,这些权限是将 MongoDB 安装在 CentOS 8 系统上:

  1. 通过创建在目录中命名的新存储库文件来启用 MongoDB 存储库:mongodb-org.repo/etc/yum.repos.d/
    sudo nano /etc/yum.repos.d/mongodb-org.repo
    /etc/yum.repos.d/mongodb-org.repo
    [mongodb-org-4.2]
    name=MongoDB Repository
    baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
    gpgcheck=1
    enabled=1
    gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

    如果要安装旧版本的 MongoDB,请将 的每个实例替换为首选版本。4.2

  2. 安装元包:mongodb-org
    sudo dnf install mongodb-org

    在安装过程中,您将提示您导入 MongoDB GPG 密钥。键入并点击 。yEnter

    以下软件包将作为包的一部分安装在您的系统上:mongodb-org

    • mongodb-org-server– 守护进程,以及相应的 init 脚本和配置。mongod
    • mongodb-org-mongos-守护神mongos
    • mongodb-org-shell– mongo shell 是 MongoDB 的交互式 JavaScript 接口,用于执行管理任务,用于执行命令行。
    • mongodb-org-tools– 包含多个用于导入和导出数据、统计信息以及其他实用程序的 MongoDB 工具。
  3. 安装完成后,启用并启动 MongoDB 服务:
    sudo systemctl enable mongod --now
  4. 要验证安装,请连接到 MongoDB 数据库服务器并打印服务器版本:
    mongo

    运行以下命令以显示 MongoDB 版本:

    db.version()

    输出将类似:

    Output
    4.2.3

配置 MongoDB

MongoDB 配置文件已命名,位于目录中。该文件采用YAML格式。mongod.conf/etc

在大多数情况下,默认配置设置就足够了。但是,对于生产环境,我们建议取消注释安全部分并启用授权,如下所示:

/etc/mongod. conf

security:
  authorization: enabled

该选项启用基于角色的访问控制 (RBAC),用于规范用户对数据库资源和操作的访问。如果禁用此选项,则每个用户都将有权访问任何数据库并执行任何操作。authorization

更改 MongoDB 配置文件后,重新启动 mongod 服务:

sudo systemctl restart mongod

有关 MongoDB 配置选项的详细信息,请访问配置文件选项文档页面。

创建管理蒙格DB用户

如果启用了 MongoDB 身份验证,则需要创建一个管理用户,该用户可以访问和管理 MongoDB 实例。

首先,使用以下命令访问 MongoDB 外壳:

mongo

键入以下命令以连接到数据库:admin

use admin
switched to db admin

创建一个使用角色命名的新用户:mongoAdminuserAdminAnyDatabase

db.createUser(
  {
    user: "mongoAdmin", 
    pwd: "changeMe", 
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)
Successfully added user: {
	"user" : "mongoAdmin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

您可以设置管理 MongoDB 用户的名称。

退出蒙戈外壳:

quit()

 

若要测试更改,请使用以前创建的管理用户访问 mongo shell:

mongo -u mongoAdmin -p --authenticationDatabase admin
MongoDB shell version v4.2.3
Enter password:
use admin
switched to db admin

现在,使用以下功能打印用户:

show users
{
	"_id" : "admin.mongoAdmin",
	"user" : "mongoAdmin",
	"db" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	],
	"mechanisms" : [
		"SCRAM-SHA-1",
		"SCRAM-SHA-256"
	]
}

 

原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun35907.html

(0)
打赏 微信扫一扫不于多少! 微信扫一扫不于多少! 支付宝扫一扫礼轻情意重 支付宝扫一扫礼轻情意重
上一篇 2021年2月4日
下一篇 2021年2月4日

相关推荐

  • 如何在 Linux Mint 21 上安装 MongoDB

    MongoDB 是一个非常流行的 NoSQL 数据库,可以在 Linux 和 Windows 操作系统上使用。它将数据存储在类似 JSON 的文档中,具有高度的灵活性和动态性,因此…

    Linux命令 2022年10月6日
  • 如何在 Rocky Linux 9 上安装 MongoDB

    MongoDB 是常用的通用、面向对象的 NoSQL 数据库之一。与 MySQL、Oracle 和 SQL 服务器等关系型数据库根据刚性模式将数据存储在表中不同,MongoDB 将…

    Linux命令 2022年9月16日
  • 如何在 Ubuntu 22.04 LTS 上安装 MongoDB

    MongoDB 是一个面向文档的 NoSQL 数据库,用于大容量数据存储。而不是像在传统关系数据库中那样使用表和行。MongoDB 有两个版本:社区版和企业版。 在 Ubuntu …

    Linux命令 2022年5月31日
  • 如何在 Fedora 35 上安装 MongoDB

    MongoDB 是一个免费的开源文档数据库,旨在简化应用程序开发和扩展。它被归类为 NoSQL 数据库,因此它将数据存储在灵活的、类似 JSON 的文档中,这意味着字段可以因文档而…

    2021年12月29日
  • 如何修复 Windows 11 中的视频 DXGKRNL 致命错误

    一些用户抱怨他们的计算机经常崩溃并显示停止代码VIDEO DXGKRNL FATAL ERROR。 此特定问题仅偶尔发生,并且错误检查值为 0x00000113,这表明 Micro…

    2021年12月9日 Win 11
  • 如何在 Debian 11 上安装 MongoDB

    MongoDB 是一个 NoSQL 数据库,它是一个简单、面向对象、可扩展和动态的数据库。它也被称为 NoSQL 数据库,因为它不依赖于传统的基于表的关系数据库结构。它以 JSON…

    2021年11月3日
  • 如何在 CentOS 8 上安装 MicroK8s

    MicroK8s 是一个面向开发人员、物联网和 Edge的小型、快速、单包Kubernetes。一个命令在 Linux、Windows 和 macOS 上安装带有精心挑选的附加组件…

    2021年9月4日
  • 如何在 CentOS 8 上安装 ArangoDB

    ArangoDB 是一个开源 NoSQL 数据库管理器,提供现代 Web 应用程序所需的所有数据库功能。ArangoDB 不像 MySQL 或 PostgreSQL 那样使用传统的…

    Linux命令 2021年8月1日
  • 如何在 CentOS 8 上安装 OpenSSL

    OpenSSL 是一个强大的、商业级的、功能齐全的传输层安全 (TLS) 协议开源工具包以前称为安全套接字层 (SSL) 协议。协议实现基于全功能通用密码库,也可以独立使用。Ope…

    2021年7月12日
  • 如何在 CentOS 8 上安装 Monit

    Monit 是 Linux 操作系统的开源进程跟踪工具,可帮助您监控系统进程。它会自动对特定过程进行维护和修复,并确保它重新上线。Monit 还可用于处理和监控包、文件、目录、文件…

    2021年7月5日
  • 如何在 CentOS 8 上安装 Google Cloud SDK

    Google Cloud SDK 包含的工具和库使您能够在 Google Cloud Platform 上轻松创建和管理资源。它也支持 Linux、Mac 和 Windows。 在…

    2021年6月29日
  • 如何在 CentOS 8 上安装 WebERP

    webERP 是一个免费、开源且完整的基于 Web 的会计和业务管理系统。您只需要一个网络浏览器和 PDF 阅读器即可使用 webERP。使用 webERP,您可以管理许多事情,包…

    2021年6月23日
  • 如何在 CentOS 8 上安装 VeraCrypt

    VeraCrypt 是适用于 Windows、Mac OS X 和 Linux 的免费开源磁盘加密软件。如果攻击者强迫您透露密码,VeraCrypt 会提供合理的否认。相比之下,对…

    2021年6月15日
  • 六月的补丁星期二修复了 7 个零日 Windows 漏洞,这些漏洞在野外被利用最多

    点击进入:ChatGPT工具插件导航大全 Windows 11 Pro ISO文件在哪下载最新版?如何下载原装纯净版Win11 ?点击进入   持续更新! 本月的更新很糟糕,修复了…

    2021年6月9日
  • 如何在 CentOS 8 上安装 Caddy

    Caddy Web 服务器是一个用Go编写的开源 Web 服务器。它围绕简单性和安全性而设计,具有许多对托管网站有用的功能。Caddy 旨在支持所有流行平台,这就是为什么它适用于 …

    2021年6月8日
  • 如何在CentOS 8上安装Jitsi Meet

    Jitsi Meet是市场上流行的开源视频会议工具之一。Jitsi Meet是Zoom,Skype和Google Meet的一种简单,优雅且安全的替代方案,它支持所有常见的浏览器以…

    2021年5月28日
  • 如何在CentOS 8上安装Roundcube Webmail

    Roundcube是使用PHP编程语言编写的流行Webmail接口。您可以通过Roundcube Web界面上的POP / IMAP访问在Linux服务器上创建的邮箱。 在Cent…

    2021年5月25日
  • 如何在CentOS 8上安装Polr

    Porr是一种快速,现代且开源的链接简化程序。它允许您托管自己的URL缩短器,标记URL并控制数据。Polr可以帮助您推广在线品牌,因为通过跟踪每个链接的点击可以更方便地共享短链接…

    2021年5月25日
  • 如何在CentOS 8上安装Samba

    Samba是一个免费的开源软件,可用于在Linux之间共享文件,文件夹和打印机。和Windows系统。 在CentOS 8上安装Samba 步骤1.首先,让我们首先确保您的系统是最…

    2021年5月17日
  • 如何在CentOS 8上安装Virtualmin

    Virtualmin是一个免费的服务器控制面板(也提供Pro版本)。它有助于使用Apache,Nginx,PHP,DNS,MySQL,FTP,SSH等管理网站(主机)。它基于著名的…

    2021年5月9日
  • 如何在CentOS 8上更改时区

    默认情况下,在配置服务器时,默认时区将自动使用协调世界时(UTC)进行配置。 。在CentOS上,系统的时区是在安装过程中设置的,但以后可以轻松更改。 在CentOS 8上更改时区…

    2021年5月5日
  • 如何在CentOS 8上安装Telnet远程工具

    Telnet是提供双向交互式基于文本的通信的应用程序层协议。它在服务器/客户端模式下工作,在该模式下,将Telnet服务器应用程序安装在主计算机上,并且所有其他计算机都使用Teln…

    2021年5月5日
  • 如何在CentOS 8上安装Telnet

    Telnet是提供双向交互式基于文本的通信的应用程序层协议。它在服务器/客户端模式下工作,在该模式下,将Telnet服务器应用程序安装在主计算机上,并且所有其他计算机都使用Teln…

    2021年4月30日
  • 如何在CentOS 8上安装NTP服务器

    Chrony是网络时间协议(NTP)的实现。Chrony通常将计算机与Internet时间服务器或其他资源(例如无线电或卫星接收器或电话调制解调器服务)同步。它也可以用作客户端系统…

    2021年4月23日
  • 如何在CentOS 8上安装TeamSpeak

    TeamSpeak是跨平台的语音服务器或VOIP应用程序,用于通过Internet进行实时语音聊天。游戏玩家通常使用它来与队友进行交流,以提供清晰的声音,无延迟的性能,军事级的安全…

    2021年4月23日