在CentOS上进行MongoDB索引优化,可按以下步骤操作:
分析查询模式
使用db.collection.explain("executionStats")
分析查询计划,查看索引使用情况。
创建合适索引
db.collection.createIndex({字段: 1/-1})
。db.collection.createIndex({字段1: 1, 字段2: -1})
,注意字段顺序与查询条件匹配。删除冗余索引
通过db.collection.getIndexes()
查看索引,删除不再使用的索引。
维护索引性能
db.collection.reIndex()
。mongostat
、mongotop
或第三方工具(如Prometheus)分析慢查询。硬件与配置优化
/etc/mongod.conf
中storage.wiredTiger.engineConfig.cacheSizeGB
参数,合理分配内存。分片与高级优化(可选)
对于大规模数据,使用分片(sh.shardCollection()
)分散负载。
操作前建议先备份数据,并在测试环境验证优化效果。