Rocky Linux 8 安装和使用 MongoDB

MongoDB 是一个免费的、开源的、跨平台的面向文档的数据库系统,它使用带有可选模式的类 JSON 文档。 它是用 C++ 编写的,用于开发现代动态应用程序。 在 MongoDB 中,数据对象作为单独的文档存储在集合中,这与使用行和列的传统关系数据库不同。 它提供了一个聚合框架,并提供了简单的查询和索引功能,可帮助开发人员轻松查询复杂的基于文档的数据集。

在这篇文章中,我们将解释 Rocky Linux 8 上安装和使用 MongoDB。

先决条件

  • 在 云平台上运行 Rocky Linux 8 的服务器
  • 在我们的服务器上配置的 root 密码

创建 云服务器

首先,登录到我们的 云服务器。 创建一个新服务器,选择 Rocky Linux 8 作为至少 1GB RAM 的操作系统。 通过 SSH 连接到我们的云服务器并使用页面顶部突出显示的凭据登录。

添加 MongoDB 存储库

默认情况下,MongoDB 包不包含在 Rocky Linux 8 默认存储库中,因此我们需要将 MongoDB 官方存储库添加到我们的系统中。

我们可以使用以下命令创建它:

nano /etc/yum.repos.d/mongodb-org-4.4.repo

添加以下行:

[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

完成后保存并关闭文件。

在 Rocky Linux 8 上安装 MongoDB

我们现在只需运行以下命令即可安装 MongoDB 包:

dnf install mongodb-org -y

安装 MongoDB 后,使用以下命令启动并启用 MongoDB 服务:

systemctl start mongod
systemctl enable mongod

我们还可以使用以下命令验证 MongoDB 版本:

mongod --version

我们将获得以下输出:

db version v4.4.13
Build Info: {
    "version": "4.4.13",
    "gitVersion": "df25c71b8674a78e17468f48bcda5285decb9246",
    "openSSLVersion": "OpenSSL 1.1.1k  FIPS 25 Mar 2021",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "rhel80",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

配置 MongoDB

默认情况下,MongoDB 配置为无需任何身份验证即可连接。 出于安全目的,使用密码保护 MongoDB 是个好主意。

首先,编辑 MongoDB 配置文件并启用身份验证:

nano /etc/mongod.conf

添加以下行:

security:
 authorization: enabled

完成后保存并关闭文件。

为 MongoDB 创建管理员用户

接下来,我们将需要创建一个管理员用户来管理 MongoDB 数据库。

首先,使用以下命令连接到 MongoDB 实例:

mongo

连接后,使用以下命令创建一个名为 admin 的数据库:

use admin

接下来,创建一个管理员用户并使用以下命令设置密码:

db.createUser(
{
user: "mongoadmin",
pwd: passwordPrompt(),
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)

我们将被要求设置密码,如下所示:

Enter password: 
Successfully added user: {
	"user" : "mongoadmin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		},
		"readWriteAnyDatabase"
	]
}

接下来,使用以下命令退出 MongoDB shell:

exit

最后,重新启动 MongoDB 服务以应用更改:

systemctl restart mongod

我们现在可以使用管理员凭据连接到 MongoDB 实例:

mongo --port 27017 --authenticationDatabase "admin" -u "mongoadmin" -p

在 MongoDB 中创建数据库

要创建名为 testdb 的数据库,请运行以下命令:

use testdb

接下来,使用以下命令将一些数据添加到 testdb 数据库:

db.linux.insertOne(
  { "Debian" : "11",
   "Rocky Linux" : "8",
   "Alma Linux" : "8"
  }
)

我们现在可以使用以下命令列出可用数据库:

db

我们将获得以下输出:

testdb

要显示数据库中的文档,请运行以下命令:

show collections

我们将获得以下输出:

linux

要显示数据库集合的内容,请运行以下命令:

db.linux.find()

我们将获得以下输出:

{ "_id" : ObjectId("6245b6be2dff2ecebfbe59e0"), "Debian" : "11", "Rocky Linux" : "8", "Alma Linux" : "8" }

要将数据库切换到管理员,请使用以下命令:

use admin

要列出所有用户,请运行以下命令:

db.getUsers()

我们将在以下输出中获得所有用户的列表:

[
	{
		"_id" : "admin.mongoadmin",
		"userId" : UUID("2b632052-c1ca-4a26-bc1c-e883f24fc7f0"),
		"user" : "mongoadmin",
		"db" : "admin",
		"roles" : [
			{
				"role" : "userAdminAnyDatabase",
				"db" : "admin"
			},
			{
				"role" : "readWriteAnyDatabase",
				"db" : "admin"
			}
		],
		"mechanisms" : [
			"SCRAM-SHA-1",
			"SCRAM-SHA-256"
		]
	}
]

本文记录了, Rocky Linux 8 上安装 MongoDB 数据库。我们还解释了如何保护 MongoDB 实例并与 MongoDB 数据库交互。 尝试在 的专用主机上管理 MongoDB 数据库!

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论