【Linux】Linux安装并配置MongoDB

目录

1.添加仓库

[2.安装 MongoDB 包](#2.安装 MongoDB 包)

[3.启动 MongoDB 服务](#3.启动 MongoDB 服务)

[4. 验证安装](#4. 验证安装)

5.配置

5.1.进入无认证模式

5.2.1创建用户

5.2.2.开启认证

5.2.3重启

5.2.4.登录

6.端口变更

7.卸载

[7.1.停止 MongoDB 服务](#7.1.停止 MongoDB 服务)

[7.2.禁用 MongoDB 开机自启动](#7.2.禁用 MongoDB 开机自启动)

[7.3.卸载 MongoDB 包](#7.3.卸载 MongoDB 包)

7.4.删除数据和日志目录

7.5.删除配置文件(可选)

7.6.清理残留依赖(可选)


1.添加仓库

首先,创建一个 MongoDB 的 Yum 仓库文件 /etc/yum.repos.d/mongodb-org.repo 并添加以下内容

复制代码
sudo vi /etc/yum.repos.d/mongodb-org.repo

粘贴如下内容(根据你想要安装的 MongoDB 版本调整 4.4 或者其他版本号)

复制代码
[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

输入完成后按键盘 Esc按钮退出编辑模式,,再输入 :wq 保存。

2.安装 MongoDB 包

使用 DNF 命令来安装 MongoDB

复制代码
sudo dnf install -y mongodb-org

这将安装 MongoDB 数据库服务器以及相关的工具。

响应如下:

3.启动 MongoDB 服务

安装完成后,启动 MongoDB 服务,并将其配置为随系统启动时自动运行

复制代码
sudo systemctl start mongod
sudo systemctl enable mongod

4. 验证安装

检查 MongoDB 是否正在运行

复制代码
sudo systemctl status mongod

安装成功则显示一下响应

按 q 键(quit 的缩写),即可退出查看状态的分页界面,回到终端命令行环境。

5.配置

5.1.进入无认证模式

首先,确保你的 MongoDB 实例是以无认证模式运行的,因为你需要先创建用户才能启用认证。如果你当前的服务配置启用了认证,请先禁用它

  • 编辑 /etc/mongod.conf 文件,找到 security 部分,并注释掉或删除与授权相关的配置

    security:

    authorization: enabled

然后重启 MongoDB 服务

复制代码
sudo systemctl restart mongod

5.2.1创建用户

打开终端并输入以下命令来连接到 MongoDB 实例

复制代码
mongo

接下来,在 MongoDB shell 中执行以下命令以切换到 admin 数据库,并创建 root 用户

复制代码
use admin
db.createUser({
  user: "root",
  pwd: "123456",
  roles: [ { role: "root", db: "admin" } ]
})

这会创建一个名为 root 的用户,该用户具有 root 角色,可以在所有数据库上执行任何操作,完成后输入 exit 退出。

响应内容:

5.2.2.开启认证

现在你已经创建了 root 用户,你需要重新编辑 MongoDB 的配置文件 /etc/mongod.conf 来开启认证

复制代码
security:
  authorization: enabled

5.2.3重启

保存更改后,重启 MongoDB 服务使更改生效

复制代码
sudo systemctl restart mongod

5.2.4.登录

你可以通过指定用户名和密码的方式来验证是否能够使用刚刚创建的 root 用户登录

复制代码
mongo -u root -p --authenticationDatabase admin

系统会提示你输入密码,输入刚才设置的密码即可登录

6.端口变更

下图是 mongodb 的配置文件,地址在 /etc/mongod.conf。需要变更端口直接改 net 里的 port值。

6.1.查看端口

输入以下指令可查看端口是否变更成功。

复制代码
netstat -tuln | grep 改变后的端口

响应内容:

变更完后重启可输以下指令登录。

复制代码
mongo --host 127.0.0.1 --port 变更后端口 -u root -p 你的密码 --authenticationDatabase admin

响应内容:

7.卸载

7.1.停止 MongoDB 服务

首先,确保 MongoDB 服务已经被停止

复制代码
sudo systemctl stop mongod

7.2.禁用 MongoDB 开机自启动

如果你设置了 MongoDB 开机自动启动,可以通过下面的命令禁用它

复制代码
sudo systemctl disable mongod

7.3.卸载 MongoDB 包

使用 dnf 命令来卸载 MongoDB 相关的所有包。根据你安装的具体版本,可能需要调整包名称

复制代码
sudo dnf remove mongodb-org mongodb-org-server mongodb-org-shell mongodb-org-mongos mongodb-org-tools

7.4.删除数据和日志目录

复制代码
sudo rm -r /var/lib/mongo
sudo rm -r /var/log/mongodb

7.5.删除配置文件(可选)

如果你还想删除 MongoDB 的配置文件,可以删除或移动 /etc/mongod.conf 文件

复制代码
sudo rm /etc/mongod.conf

7.6.清理残留依赖(可选)

复制代码
sudo dnf autoremove
相关推荐
MilesShi19 分钟前
从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
linux·运维·单片机
真上帝的左手1 小时前
十一、容器化 vs 虚拟化-Kubernetes(K8s)
云原生·容器·kubernetes
落日漫游1 小时前
K8s ConfigMap配置管理全解析
云原生·容器·kubernetes
我真的是大笨蛋1 小时前
K8S-Pod(下)
java·笔记·云原生·容器·kubernetes
紫金修道3 小时前
k8s的容器操作指令
云原生·容器·kubernetes
方渐鸿3 小时前
【2024】k8s集群 图文详细 部署安装使用(两万字)
java·运维·容器·kubernetes·k8s·运维开发·持续部署
喝杯白开水!3 小时前
K8s中的控制器DaemonSet、StatefulSet、Job、CronJob、Server发现、健康检查、存储卷(PV),相关知识总结
云原生·容器·kubernetes
晓衣3 小时前
2025“獬豸杯”全国电子数据取证竞赛-k8s服务器取证wp
服务器·经验分享·程序人生·网络安全·容器·kubernetes·学习方法
学亮编程手记3 小时前
K8S v1.33 版本主要新特性介绍
java·容器·kubernetes
我爱云计算3 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes