下面按从零开始在 CentOS 上安装并配置 MongoDB的思路给你讲,适用于 CentOS 7 / 8(包括常见的生产基本设置)。
sudo vi /etc/yum.repos.d/mongodb-org-6.0.repo
写入以下内容:
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
sudo yum install -y mongodb-org
安装完成后,主要目录:
/etc/mongod.conf/var/lib/mongo/var/log/mongodbsudo systemctl start mongod
sudo systemctl enable mongod
查看状态:
sudo systemctl status mongod
默认只监听 127.0.0.1,远程访问需修改:
net:
port: 27017
bindIp: 0.0.0.0 # 或指定IP,如 192.168.1.100
⚠️ 生产环境不建议直接 0.0.0.0,应配合防火墙和安全组。
mongo
use admin
db.createUser({
user: "root",
pwd: "StrongPassword",
roles: ["root"]
})
security:
authorization: enabled
重启 MongoDB:
sudo systemctl restart mongod
mongo -u root -p --authenticationDatabase admin
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
use mydb
db.createUser({
user: "appuser",
pwd: "AppPass",
roles: [{ role: "readWrite", db: "mydb" }]
})
连接:
mongo -u appuser -p --authenticationDatabase mydb
查看日志:
cat /var/log/mongodb/mongod.log
常见原因:
mkdir -p /data/mongo
chown -R mongod:mongod /data/mongo
修改配置:
storage:
dbPath: /data/mongo
✅ 开启认证
✅ 不使用 root 远程登录
✅ 限制 bindIp
✅ 定期备份(mongodump)
✅ 使用副本集(生产环境)
如果你愿意,我可以:
你现在是 学习 / 测试 / 生产 环境?