温馨提示×

centos mongodb怎样配置

小樊
43
2026-09-02 20:04:16
栏目: 云计算

下面按生产可用的方式,给你一份 CentOS 上配置 MongoDB(以 CentOS 7/8 + MongoDB 6.x 为例) 的清晰步骤。


一、添加 MongoDB 官方 YUM 源

CentOS 7 / 8 通用

sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo << 'EOF'
[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
EOF

二、安装 MongoDB

sudo yum install -y mongodb-org

安装完成后:

  • 配置文件:/etc/mongod.conf
  • 数据目录:/var/lib/mongo
  • 日志目录:/var/log/mongodb

三、基础配置(核心)

编辑配置文件:

sudo vi /etc/mongod.conf

1️⃣ 绑定 IP(重要)

net:
  port: 27017
  bindIp: 127.0.0.1,192.168.1.100

⚠️ 不要直接 0.0.0.0 + 无鉴权,非常危险


2️⃣ 开启认证(必须)

security:
  authorization: enabled

3️⃣ 数据 & 日志(默认即可)

storage:
  dbPath: /var/lib/mongo

systemLog:
  destination: file
  path: /var/log/mongodb/mongod.log
  logAppend: true

四、启动 MongoDB

sudo systemctl start mongod
sudo systemctl enable mongod

查看状态:

sudo systemctl status mongod

五、创建管理员用户(关键步骤)

1️⃣ 先本地无密码进入

mongo

2️⃣ 创建管理员

use admin
db.createUser({
  user: "root",
  pwd: "StrongPassword",
  roles: ["root"]
})

退出:

exit

六、使用账号登录

mongo -u root -p --authenticationDatabase admin

七、防火墙配置(如开启)

sudo firewall-cmd --permanent --add-port=27017/tcp
sudo firewall-cmd --reload

八、SELinux(常见问题)

如果启动失败,可临时测试:

sudo setenforce 0

生产建议:

sudo semanage port -a -t mongod_port_t -p tcp 27017

九、常用优化(可选)

关闭 Transparent Huge Pages

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

十、验证是否成功

mongo -u root -p --authenticationDatabase admin
> show dbs

如果你需要:

  • MongoDB 副本集(Replica Set)
  • Docker 方式部署
  • 生产调优参数
  • 远程连接配置

告诉我你的使用场景,我可以直接给你对应配置。

0