-
检查服务状态与日志
- 使用
sudo systemctl status mongod查看服务状态,若未运行则尝试启动:sudo systemctl start mongod。 - 查看MongoDB日志
/var/log/mongodb/mongod.log或系统日志journalctl -xe | grep mongod,定位错误信息。
- 使用
-
验证配置文件
- 检查
/etc/mongod.conf中的关键配置:dbPath:确保数据目录存在且权限正确(通常需chown -R mongodb:mongodb /data/db)。logPath:确认日志路径可写,避免因权限问题导致启动失败。port:确认端口未被占用(可通过netstat -tulnp | grep 端口检查)。
- 检查
-
处理文件与权限问题
- 若因非正常关机导致文件损坏,删除锁文件并修复:
rm -rf /data/db/mongod.lock /data/db/mongod.pid,然后执行mongod --repair --dbpath /data/db。 - 确保MongoDB相关文件(如二进制、配置文件)所属用户为
mongodb:chown -R mongodb:mongodb /var/lib/mongo /etc/mongod.conf。
- 若因非正常关机导致文件损坏,删除锁文件并修复:
-
排查系统资源与环境
- 检查磁盘空间:
df -h,确保数据目录所在分区有足够空间。 - 确认系统依赖库(如
libssl、libcrypto)已安装,CentOS 7可通过sudo yum install openssl-devel安装。 - 临时关闭SELinux(若启用):
sudo setenforce 0,并检查数据目录安全上下文是否正确。
- 检查磁盘空间:
-
版本与兼容性检查
- 若从其他系统迁移,确认MongoDB版本与CentOS内核兼容(如CentOS 7需使用对应RHEL 7的MongoDB包)。
- 升级或重新安装匹配系统的MongoDB版本,避免因版本不兼容导致启动失败。
操作前建议:备份数据目录 /data/db 和配置文件 /etc/mongod.conf,避免误操作导致数据丢失。若问题仍未解决,可根据日志中的具体错误信息进一步分析或参考MongoDB官方文档。