下面以 CentOS 7 / 8 为例,系统讲解如何 安装、配置并运行 MongoDB(以 MongoDB 6.x / 7.x 为例)。如果你使用的是 CentOS Stream 或 Rocky / Alma,步骤基本一致。
cat /etc/centos-release
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
firewall-cmd --permanent --add-port=27017/tcp
firewall-cmd --reload
vi /etc/yum.repos.d/mongodb-org.repo
内容示例(MongoDB 7.0,适用于 CentOS 7/8):
[mongodb-org-7.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc
如需 6.0,把
7.0改为6.0
yum clean all
yum makecache
yum install -y mongodb-org
安装完成后,主要目录:
/etc/mongod.conf/var/lib/mongo/var/log/mongodb编辑配置文件:
vi /etc/mongod.conf
systemLog:
destination: file
path: /var/log/mongodb/mongod.log
logAppend: true
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
net:
port: 27017
bindIp: 127.0.0.1 # 允许远程访问改为 0.0.0.0
processManagement:
fork: true
pidFilePath: /var/run/mongodb/mongod.pid
✅ 允许远程访问
bindIp: 0.0.0.0
⚠️ 生产环境不建议直接暴露 27017,建议配合防火墙 + 认证
systemctl start mongod
systemctl enable mongod
systemctl status mongod
mongosh
use admin
db.createUser({
user: "admin",
pwd: "StrongPassword",
roles: [{ role: "root", db: "admin" }]
})
退出:
exit
编辑配置:
vi /etc/mongod.conf
添加:
security:
authorization: enabled
重启 MongoDB:
systemctl restart mongod
mongosh -u admin -p --authenticationDatabase admin
systemctl status mongod
systemctl restart mongod
systemctl stop mongod
tail -f /var/log/mongodb/mongod.log
journalctl -xe
常见原因:
chown -R mongod:mongod /var/lib/mongo
✅ 开启认证
✅ 不使用默认端口
✅ 限制 bindIp
✅ 定期备份
✅ 使用副本集(Replica Set)
如果你需要:
可以直接告诉我你的使用场景,我可以给你更针对性的配置方案。