在CentOS 7系统中安装MongoDB需要遵循一系列规范的步骤,以确保安装过程顺利且服务稳定运行,以下是详细的安装指南,涵盖环境准备、官方仓库配置、安装部署、服务管理及基础配置等内容。

环境准备
在开始安装前,建议更新系统并检查系统版本,执行以下命令确保系统为最新状态:
sudo yum update -y sudo cat /etc/redhat-release
确保输出为"CentOS Linux release 7.x (Core)",同时关闭防火墙或配置相应端口规则(MongoDB默认端口27017):
sudo systemctl stop firewalld sudo systemctl disable firewalld
配置MongoDB官方仓库
CentOS 7的默认仓库不包含MongoDB,需添加官方仓库,首先创建MongoDB仓库文件:
sudo vi /etc/yum.repos.d/mongodb-org.repo ```以MongoDB 6.0为例): ```ini [mongodb-org-6.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/6.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
保存后,使用sudo yum makecache更新缓存。
安装MongoDB组件
MongoDB提供多个独立组件,可根据需求选择安装,完整安装命令如下:
sudo yum install -y mongodb-org mongodb-org-server mongodb-org-shell mongodb-org-mongos mongodb-org-tools
若需指定版本,可使用--setopt=obsoletes=0避免自动升级:

sudo yum install -y mongodb-org-6.0.0 mongodb-org-server-6.0.0 mongodb-org-shell-6.0.0 mongodb-org-mongos-6.0.0 mongodb-org-tools-6.0.0
启动并配置MongoDB服务
安装完成后,启动MongoDB服务并设置为开机自启:
sudo systemctl start mongod sudo systemctl enable mongod
检查服务状态:
sudo systemctl status mongod
若显示"active (running)",则启动成功。
修改配置文件(可选)
默认配置文件位于/etc/mongod.conf,可根据需求调整参数,如绑定IP、端口、日志路径等,允许远程连接需修改net.bindIp:
sudo vi /etc/mongod.conf
将bindIp: 127.0.0.1改为bindIp: 0.0.0.0或指定IP,保存后重启服务:
sudo systemctl restart mongod
防火墙与SELinux配置
若需开启防火墙,需添加MongoDB端口规则:

sudo firewall-cmd --permanent --add-port=27017/tcp sudo firewall-cmd --reload
对于SELinux,建议临时关闭测试(生产环境需配置策略):
sudo setenforce 0
基础操作验证
使用MongoDB Shell连接测试:
mongo
在Shell中执行简单命令:
db.version() # 查看版本 show dbs # 列出数据库 exit # 退出
常见问题处理
- 服务启动失败:检查
/var/log/mongodb/mongod.log日志,常见问题包括端口占用、配置文件语法错误。 - 权限问题:确保
mongod用户对数据目录(默认/var/lib/mongo)有读写权限:sudo chown -R mongod:mongod /var/lib/mongo
相关问答FAQs
Q1: 如何在CentOS 7上卸载MongoDB?
A1: 卸载MongoDB需删除软件包、数据目录及配置文件,执行以下步骤:
- 停止服务:
sudo systemctl stop mongod - 卸载软件包:
sudo yum erase mongodb-org* - 删除数据目录:
sudo rm -rf /var/lib/mongo - 删除日志文件:
sudo rm -rf /var/log/mongodb - 删除配置文件:
sudo rm -f /etc/mongod.conf
Q2: MongoDB启动后无法连接,如何排查?
A2: 可按以下步骤排查:
- 检查服务状态:
sudo systemctl status mongod,确认服务运行。 - 检查网络监听:
netstat -tuln | grep 27017,确认端口开放。 - 检查防火墙:若使用防火墙,确保27017端口已允许访问。
- 查看日志:
tail -f /var/log/mongodb/mongod.log,定位错误信息。 - 检查SELinux状态:
getenforce,若为Enforcing,需调整策略或临时关闭测试。