温馨提示×

MongoDB配置文件在CentOS中如何设置

小樊
44
2025-11-29 18:04:53
栏目: 云计算

在CentOS上配置MongoDB的关键步骤

一 配置文件位置与格式

  • 配置文件默认路径为:/etc/mongod.conf,采用 YAML 格式。
  • 常用基础项包括:systemLog.pathstorage.dbPathnet.portnet.bindIpsecurity.authorizationprocessManagement.fork
  • 修改配置后需重启服务:sudo systemctl restart mongod;查看服务状态:sudo systemctl status mongod
  • 注意:YAML 对缩进敏感,使用空格而非制表符;默认情况下 MongoDB 未启用认证。

二 最小可用配置示例

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

storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true

net:
  port: 27017
  bindIp: 127.0.0.1   # 如需远程访问,可改为 0.0.0.0 或指定内网IP

processManagement:
  fork: true
  pidFilePath: /var/run/mongodb/mongod.pid

# 可选:启用访问控制(推荐)
# security:
#   authorization: enabled
  • 说明:上述路径与参数为常见默认值;如启用 authorization,请在创建管理员用户后再重启以生效。

三 启用认证与创建管理员

  • 在配置文件中开启认证(取消注释或新增):
security:
  authorization: enabled
  • 重启服务:sudo systemctl restart mongod
  • 连接 Shell 并创建管理员(示例):
use admin
db.createUser({
  user: "admin",
  pwd: "YourStrongPassword",
  roles: ["root"]
})
  • 之后使用带认证的 URI 连接:mongo -u admin -p YourStrongPassword --authenticationDatabase admin

四 远程访问与防火墙

  • 允许远程访问需同时完成两处配置:
    • 配置文件中将 net.bindIp 设为 0.0.0.0(或指定服务器内网 IP),并重启服务。
    • 开放防火墙端口(默认 27017/tcp):
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
  • 建议仅在内网开放,并配合强密码与访问控制策略。

五 常见排错与验证

  • 查看服务状态与日志定位问题:sudo systemctl status mongodtail -f /var/log/mongodb/mongod.log
  • 验证配置是否生效:使用 mongod --config /etc/mongod.conf --version 检查配置文件语法与版本;必要时逐项核对 bindIpportdbPathlog path 等。

0