在 CentOS 上设置(安装并配置)MongoDB,通常可以按下面的步骤来。以下以 CentOS 7 / 8 和 MongoDB 6.x/7.x 为例。
sudo vi /etc/yum.repos.d/mongodb-org.repo
写入以下内容(以 MongoDB 7.0 为例):
[mongodb-org-7.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc
[mongodb-org-7.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-7.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
sudo vi /etc/mongod.conf
常见配置示例:
net:
port: 27017
bindIp: 0.0.0.0 # 生产建议改为具体IP或127.0.0.1
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
systemLog:
destination: file
path: /var/log/mongodb/mongod.log
logAppend: true
修改后重启:
sudo systemctl restart mongod
进入 MongoDB:
mongo
创建管理员用户:
use admin
db.createUser({
user: "admin",
pwd: "你的密码",
roles: [{ role: "root", db: "admin" }]
})
开启认证,编辑配置文件:
security:
authorization: enabled
重启服务:
sudo systemctl restart mongod
登录方式:
mongo -u admin -p --authenticationDatabase admin
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
查看日志:
sudo tail -f /var/log/mongodb/mongod.log
临时关闭:
sudo setenforce 0
生产建议配置 SELinux 策略,而不是直接关闭。
如果你用的是 CentOS 6 / 特定版本 MongoDB / Docker 安装,可以告诉我,我可以给你对应方案。