Docker下mongodb容器查询数据量超过限制的解决办法

问题:mongodb进行数据查询时报异常

主要异常信息

Query failed with error code 96 and error message 'Executor error during find command: OperationFailed: Sort operation used more than the maximum 33554432 bytes of RAM. Add an index, or specify a smaller limit.' on server 127.0.0.1:27017

根据错误信息描述,发现是因为获取数据并排序时,所获取的数据量超过量mongodb数据库的默认限制32M。

解决方法:

  1. 直接到docker mongodb容器下修改mongodb的配置文件——失败

    直接到对应的容器下修改mongodb的配置,理论上可行,但是修改完成后重启容器服务,配置不生效。

  2. 进入mongodb数据服务,使用admin账户对配置进行修改,执行以下语句进行修改——成功

db.adminCommand({setParameter:1, internalQueryExecMaxBlockingSortBytes:335544320})

这里将原来的32M更改为320M,修改后调用接口,测试成功!!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容