MongoDB监控与诊断
使用内置命令和外部工具监控数据库健康状态、性能指标。 · 难度:入门 · +15XP
监控 MongoDB
监控是确保数据库稳定运行的关键。MongoDB 提供了 mongostat、mongotop 等命令行工具,以及 serverStatus、currentOp 等诊断命令。
1. mongostat
mongostat --host localhost:27017 --username admin --password pwd
// 输出:insert/s, query/s, update/s, delete/s, 内存使用等2. mongotop
显示每个集合的读写活动时间。
3. serverStatus
db.serverStatus();
// 关注:connections, network, opcounters, mem, metrics4. currentOp 与 killOp
// 查看当前运行的操作
db.currentOp({ "op": "query", "secs_running": { "$gt": 5 } });
// 终止慢操作
db.killOp(opid);5. 第三方工具
| 工具 | 用途 |
|---|---|
| MongoDB Atlas监控 | 托管集群的自动监控 |
| Prometheus + Grafana | 自定义指标面板 |
| MongoDB Ops Manager | 企业级监控与备份 |
6. 日志分析
设置日志级别:
db.setLogLevel(1, "query");练习提示: 使用 mongostat 观察一个有写入压力的数据库,找出 QPS 和连接数峰值。