HCRM博客

如何在CentOS上配置MongoDB?

CentOS系统下MongoDB配置全流程指南

作为一款高性能、开源的NoSQL数据库,MongoDB在Web开发、大数据存储等场景中应用广泛,本文将以CentOS系统为例,详细讲解MongoDB的安装、配置、安全加固及性能优化步骤,帮助用户快速搭建稳定可靠的数据库环境。

如何在CentOS上配置MongoDB?-图1

**一、安装MongoDB

1、添加MongoDB官方仓库

CentOS默认仓库可能不包含最新版MongoDB,需手动添加官方源,执行以下命令:

  • sudo vi /etc/yum.repos.d/mongodb-org-7.0.repo

输入以下内容(以7.0版本为例):

  • [mongodb-org-7.0]
  • name=MongoDB Repository
  • baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/
  • gpgcheck=1
  • enabled=1
  • gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc

2、安装MongoDB服务端与工具

  • sudo yum install -y mongodb-org

安装完成后,系统会自动创建/var/lib/mongo(数据存储目录)与/var/log/mongodb(日志目录)。

**二、基础配置与启动服务

1、修改配置文件

如何在CentOS上配置MongoDB?-图2

MongoDB的配置文件位于/etc/mongod.conf,需调整以下核心参数:

  • storage:
  • dbPath: /var/lib/mongo # 数据存储路径
  • journal:
  • enabled: true # 启用日志功能,防止数据损坏
  • systemLog:
  • destination: file
  • path: /var/log/mongodb/mongod.log # 日志文件路径
  • logAppend: true
  • net:
  • port: 27017 # 默认端口
  • bindIp: 127.0.0.1 # 仅允许本地访问(生产环境需按需调整)

2、启动服务并设置开机自启

  • sudo systemctl start mongod
  • sudo systemctl enable mongod

通过systemctl status mongod可检查服务状态。

**三、安全加固措施

1. 启用身份验证

默认安装的MongoDB无需密码即可访问,需手动开启认证:

- 连接数据库:

如何在CentOS上配置MongoDB?-图3
  • mongo --host 127.0.0.1

- 创建管理员用户:

  • use admin
  • db.createUser({
  • user: "admin",
  • pwd: "YourSecurePassword", // 替换为高强度密码
  • roles: ["root"]
  • })

- 修改配置文件,启用认证:

  • security:
  • authorization: enabled

重启服务:sudo systemctl restart mongod

2. 配置防火墙与SELinux

防火墙开放端口(如需远程访问)

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

调整SELinux策略(可选)

若SELinux启用导致服务异常,可临时禁用或设置策略:

  • setsebool -P mongod_can_connect_ldap 1

**四、性能优化建议

1、内存分配

MongoDB会尽可能占用空闲内存缓存数据,可通过以下配置限制内存使用(单位:MB):

  • storage:
  • wiredTiger:
  • engineConfig:
  • cacheSizeGB: 2 # 根据服务器实际内存调整

2、存储引擎选择

默认的WiredTiger引擎支持数据压缩,适合大多数场景,若需更高写入性能,可考虑升级硬件或使用分片集群。

3、日志与备份

- 定期清理日志:通过logRotate命令或配置日志轮转工具(如logrotate)。

- 使用mongodump进行数据备份:

  • mongodump --host localhost --port 27017 --username admin --password "YourPassword" --out /backup/

**五、常见问题排查

服务启动失败

检查日志文件/var/log/mongodb/mongod.log,常见原因包括:

- 端口被占用

- 数据目录权限不足(需确保mongod用户有读写权限)

连接被拒绝

确认防火墙、SELinux策略及bindIp配置是否正确。

个人观点

MongoDB的灵活性使其成为现代应用开发的热门选择,但默认配置存在安全隐患,建议在部署后立即启用身份验证,并定期更新版本以修复漏洞,对于高并发场景,可结合副本集与分片技术提升可用性,合理监控数据库性能(如使用mongostat工具)是长期稳定运行的关键。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/31733.html

分享:
扫描分享到社交APP
上一篇
下一篇