小编Sy1*_*100的帖子

为什么 mongo 选择了错误的索引/执行计划?

在生产 mongod 日志文件中,我们可以看到很多慢查询。他们中的大多数没有使用最好的索引,因此没有使用最好的执行计划。但是,当我在 mongo shell 中自己运行相同的查询时,会使用正确的索引。那么为什么对于相同的查询,我们没有相同的执行计划?

Mongodb 版本:4.0.2(单机版)

mongod 日志文件的摘录:

2018-12-28T13:55:28.282+0100 I COMMAND [conn1032115] command mydb.products command: find { find: "products", filter: { origins_tags: "italia" }, sort: { last_modified_t: -1 }, skip: 320, limit: 20, singleBatch: false, maxTimeMS: 0, tailable: false, noCursorTimeout: false, awaitData: false, allowPartialResults: false, $readPreference: { mode: "secondaryPreferred" }, $db: "mydb" } planSummary: IXSCAN { last_modified_t: -1 } keysExamined:721542 docsExamined:721542 cursorExhausted:1 numYields:5637 nreturned:3 reslen:23886 locks:{ Global: { acquireCount: { r: 5638 } }, Database: { acquireCount: …
Run Code Online (Sandbox Code Playgroud)

mongodb

5
推荐指数
1
解决办法
6204
查看次数

标签 统计

mongodb ×1