在 CentOS 8 中安装和配置 MongoDB

本文将介绍如何在 CentOS 8 系统中安装和配置 MongoDB,以及如何进行基本的数据库操作。

发布于

MongoDB 是一个开源的文档型数据库,它使用 JSON 格式的文档来存储数据,支持灵活的查询和索引,以及分布式的横向扩展。MongoDB 适用于处理大量的非结构化或半结构化的数据,例如社交网络、电子商务、物联网等领域。

本文将介绍如何在 CentOS 8 系统中安装和配置 MongoDB,以及如何进行基本的数据库操作。

先决条件

在开始安装和配置 MongoDB 之前,您需要准备以下内容:

  • 一台运行 CentOS 8 的服务器,已经安装了最新的软件包更新,并具有 sudo 权限的用户账号。
  • 一个稳定的网络连接,可以访问 MongoDB 的官方软件源。

添加 MongoDB 的软件源

为了从 MongoDB 的官方软件源安装最新版本的 MongoDB,您需要先添加 MongoDB 的软件源到您的系统中。您可以通过以下命令来执行这一步骤:

sudo vi /etc/yum.repos.d/mongodb-org.repo

在打开的文件中,粘贴以下内容:

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

保存并关闭文件。

安装 MongoDB

添加了 MongoDB 的软件源之后,您就可以通过以下命令来安装 MongoDB:

sudo dnf install -y mongodb-org

这个命令会安装 MongoDB 的所有组件,包括服务器、客户端、工具和配置文件。

启动 MongoDB

安装完成后,您可以通过以下命令来启动 MongoDB:

sudo systemctl start mongod

您可以通过以下命令来检查 MongoDB 的运行状态:

sudo systemctl status mongod

如果 MongoDB 正常运行,您应该看到类似以下的输出:

● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2024-01-15 21:58:46 CST; 1min 30s ago
     Docs: https://docs.mongodb.org/manual
 Main PID: 1234 (mongod)
   CGroup: /system.slice/mongod.service
           └─1234 /usr/bin/mongod -f /etc/mongod.conf

设置初始密码

为了提高 MongoDB 的安全性,您需要为 MongoDB 的管理员账号设置一个初始密码。您可以通过以下步骤来完成这一操作:

  • 首先,您需要使用 mongo 命令来连接到 MongoDB 的 shell:
mongo
  • 然后,您需要切换到 admin 数据库:
use admin
  • 接下来,您需要创建一个名为 root 的管理员账号,并为其设置一个强密码。您可以通过以下命令来执行这一步骤:
db.createUser({user: "root", pwd: "your_strong_password", roles: ["root"]})
  • 最后,您需要退出 MongoDB 的 shell:
exit

启用身份验证

设置了初始密码后,您需要启用 MongoDB 的身份验证功能,以防止未经授权的访问。您可以通过以下步骤来完成这一操作:

  • 首先,您需要使用 sudo vi /etc/mongod.conf 命令来编辑 MongoDB 的配置文件。
  • 然后,您需要在 security 部分添加以下内容:
security:
  authorization: enabled
  • 最后,您需要重启 MongoDB 以使更改生效:
sudo systemctl restart mongod

验证安装

为了验证 MongoDB 的安装是否成功,您可以通过以下命令来连接到 MongoDB 的 shell,并使用之前创建的管理员账号进行身份验证:

mongo -u root -p your_strong_password --authenticationDatabase admin

如果连接成功,您应该看到类似以下的输出:

MongoDB shell version v5.0.3
connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("12345678-1234-1234-1234-123456789012") }
MongoDB server version: 5.0.3
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
	https://community.mongodb.com
>

基本的数据库操作

在本节中,我们将介绍一些基本的数据库操作,比如启动、停止、重启、加载配置、登录、退出等。

  • 启动 MongoDB:您可以通过以下命令来启动 MongoDB:
sudo systemctl start mongod
  • 停止 MongoDB:您可以通过以下命令来停止 MongoDB:
sudo systemctl stop mongod
  • 重启 MongoDB:您可以通过以下命令来重启 MongoDB:
sudo systemctl restart mongod
  • 加载配置:如果您修改了 MongoDB 的配置文件,您可以通过以下命令来重新加载配置,而不需要重启 MongoDB:
sudo systemctl reload mongod
  • 登录 MongoDB:您可以通过以下命令来登录 MongoDB 的 shell,并使用指定的账号进行身份验证:
mongo -u username -p password --authenticationDatabase database

其中,username 是您要使用的账号,password 是该账号的密码,database 是该账号所属的数据库。

  • 退出 MongoDB:您可以通过以下命令来退出 MongoDB 的 shell:
exit

结论

本文介绍了如何在 CentOS 8 系统中安装和配置 MongoDB,以及如何进行基本的数据库操作。您可以通过 MongoDB 的官方文档来了解更多的信息和功能。