CentOS 6 环境下安装与配置 MongoDB 实践指南

对于仍在使用 CentOS 6 操作系统的用户而言,部署 MongoDB 数据库可能面临一些兼容性挑战,本文将从环境准备、安装流程、基础配置到安全优化,提供一套完整的操作指南,帮助用户快速搭建稳定可靠的 MongoDB 服务。

**一、环境准备与兼容性说明
CentOS 6 发布于 2011 年,官方支持已于 2020 年终止,若需在其上运行 MongoDB,需注意版本兼容性:
- MongoDB 3.2 及更早版本支持 CentOS 6;
- MongoDB 4.0 以上版本需依赖 GLIBC 2.17+,而 CentOS 6 默认 GLIBC 版本为 2.12,强行安装可能导致运行时错误。
推荐方案:
1、选择 MongoDB 3.2 长期支持版(EOL 为 2018 年);
2、升级系统至 CentOS 7 或更高版本以获得更好的兼容性;

3、若必须使用 CentOS 6,建议通过源码编译 MongoDB,但需自行解决依赖问题。
二、安装 MongoDB 3.2 详细步骤
1. 添加 MongoDB 官方仓库
创建仓库配置文件 vi /etc/yum.repos.d/mongodb-org-3.2.repo
粘贴以下内容:
[mongodb-org-3.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
2. 安装 MongoDB 核心组件
yum install -y mongodb-org
若提示依赖错误(如libcurl 版本过低),需手动安装兼容包:
示例:从 CentOS Vault 获取旧版依赖 wget http://vault.centos.org/6.10/os/x86_64/Packages/libcurl-7.19.7-54.el6.x86_64.rpm rpm -Uvh libcurl-7.19.7-54.el6.x86_64.rpm
**3. 启动服务并设置开机自启
service mongod start chkconfig mongod on
**三、基础配置与性能调优
**1. 配置文件调整
默认配置文件路径为/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 # 生产环境建议绑定内网IP
资源限制(根据服务器配置调整)
operationProfiling:
mode: slowOp
slowOpThresholdMs: 100**2. 权限与目录设置
数据目录权限:
chown -R mongod:mongod /var/lib/mongo chmod 755 /var/lib/mongo
日志轮转:
编辑/etc/logrotate.d/mongodb,添加:
/var/log/mongodb/*.log {
daily
rotate 30
compress
missingok
notifempty
sharedscripts
postrotate
/bin/kill -SIGUSR1 $(cat /var/run/mongodb/mongod.pid 2> /dev/null) 2> /dev/null || true
endscript
}**四、安全加固与维护建议
**1. 启用身份验证
- 创建管理员账户:
mongo
> use admin
> db.createUser({
user: "admin",
pwd: "StrongPassword123",
roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})- 修改配置文件启用认证:
security: authorization: enabled
重启服务生效:
service mongod restart
**2. 防火墙与网络隔离
- 限制 MongoDB 端口访问:
iptables -A INPUT -p tcp --dport 27017 -s 192.168.1.0/24 -j ACCEPT # 仅允许内网IP段 iptables -A INPUT -p tcp --dport 27017 -j DROP service iptables save
**3. 定期备份与监控
逻辑备份:使用mongodump:
mongodump --host localhost --port 27017 -u admin -p StrongPassword123 --authenticationDatabase admin --out /backup/mongodb/
物理备份:直接复制数据目录(需停止服务)。
监控工具:部署mongostat 或第三方工具(如 Prometheus + MongoDB Exporter)。
**五、常见问题与解决方案
1、启动失败:GLIBC 版本不兼容
错误提示:/lib64/libc.so.6: version 'GLIBC_2.14' not found
解决:降级 MongoDB 版本或升级系统。
2、连接数不足
修改配置文件中的net.maxIncomingConnections(默认 65536),并调整系统文件句柄限制:
ulimit -n 65535 echo "mongod soft nofile 65535" >> /etc/security/limits.conf
3、数据目录磁盘空间不足
扩展磁盘或迁移数据目录:
service mongod stop mv /var/lib/mongo /new/path/ ln -s /new/path/mongo /var/lib/mongo service mongod start
观点
CentOS 6 作为已终止维护的系统,长期运行 MongoDB 存在安全与兼容性风险,建议优先升级至 CentOS 7/8 或迁移至云数据库服务,若受限于环境,需严格遵循最小权限原则,定期审计日志与备份数据,以降低潜在故障的影响。
