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

**一、安装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、修改配置文件

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无需密码即可访问,需手动开启认证:
- 连接数据库:

- 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
工具)是长期稳定运行的关键。