ubuntu

Ubuntu下MongoDB故障排查指南

小樊
46
2025-11-23 02:01:52
栏目: 云计算

Ubuntu 下 MongoDB 故障排查指南

一 快速定位与通用流程

二 常见故障场景与处理

症状 快速检查 处理要点
服务无法启动(Active: failed) 查看状态和日志首屏报错;核对配置文件语法与路径 修正配置后重启;若提示 Unit not found,执行 systemctl daemon-reload 或创建自定义服务单元
启动报错或反复崩溃,提示锁文件或异常退出 检查数据目录是否存在 mongod.lock;查看是否非法关闭 删除锁文件并以 repair 方式启动:mongod -f /etc/mongod.conf --repair;再正常启动
本机 mongo 连接被拒绝(Connection refused) systemctl status mongod;ss -lntp 启动服务;确认 bindIp 包含 127.0.0.1;如远程访问需开放 27017 并调整 bindIp
磁盘空间不足导致启动失败 df -h;日志含 “Insufficient free space for journal files” 清理磁盘;或在配置中启用 smallfiles=true 后启动
非法关闭后无法启动 日志提示锁或 WiredTiger 异常 先删除 mongod.lock,再以 --repair 启动以重建一致性
连接数或文件句柄耗尽 日志出现 “Too many open files” 提升系统 ulimit -n;在 /etc/security/limits.conf 为 mongod 设置更高 nofile
副本集心跳失败 查看 REPL 相关日志;检查网络连通 测试网络与端口;核查副本集成员状态与 oplog 窗口,必要时重新同步
查询很慢或 CPU 飙升 查看 COMMAND 与执行时间;explain 分析 为过滤/排序字段建立复合索引;优化查询与投影,减少 COLLSCAN

以上场景对应的命令与处理要点可参考下列实践:服务状态与端口检查、日志级别与过滤、配置文件与权限校验、锁文件与 repair 修复、磁盘空间与 smallfiles、连接被拒绝与防火墙/绑定地址、文件句柄限制与副本集异常、慢查询与索引优化。

三 日志分析与性能优化

四 安全与维护建议

五 命令速查

0
看了该问题的人还看了