CentOS 上配置 MongoDB 失败的原因通常可以归结为以下几类,你可以对照排查:
CentOS 7 / 8 / Stream 对应的 MongoDB 源不同,写错版本会直接失败。
示例(CentOS 7):
[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
常见错误:
CentOS 默认开启 SELinux,经常导致:
getenforce
临时关闭:
setenforce 0
永久关闭(不推荐生产):
vi /etc/selinux/config
SELINUX=disabled
或允许 MongoDB:
semanage port -a -t mongod_port_t -p tcp 27017
firewall-cmd --permanent --add-port=27017/tcp
firewall-cmd --reload
mongod 默认用户是 mongod
/var/lib/mongo 目录属主是 root
chown -R mongod:mongod /var/lib/mongo
chown -R mongod:mongod /var/log/mongodb
常见错误:
storage:
dbPath: /var/lib/mongo
systemLog:
destination: file
path: /var/log/mongodb/mongod.log
net:
bindIp: 0.0.0.0
port: 27017
检查配置:
mongod --config /etc/mongod.conf --check
systemctl status mongod
journalctl -xe
cat /var/log/mongodb/mongod.log
dnf如果你愿意,可以把下面信息发我,我可以精准定位:
cat /etc/redhat-release)我可以一步一步帮你配成功 ✅