关于mongodb:MongoDB-error-code-96-的解决办法或者说排序时内存使用超过32MB的问题的解决办法

景象:

返回json报错:

{
  code: 96 ,
  codeName: "OperationFailed" ,
  name: "MongoError"
}

起因:

mongodb用于排序的内存下限为32M,当一次排序的数据集超过32M的时候就会报这个错。

解决办法:

 1、db.adminCommand({setParameter: 1,internalQueryExecMaxBlockingSortBytes: xxxx}),xxxx的取值为本人想要的内存下限,比方,256M=256*1024*1024=268435456。此命令即时失效,不过,要留神的是,当MongoDB重启时,如果配置文件中未显示设置,则会复原默认的32M。
 2、批改/etc/mongod.conf,增加如下内容,确保重启之后不会复原到默认值:

setParameter:
internalQueryExecMaxBlockingSortBytes: 268435456

参考链接:
https://blog.sina.com.cn/s/bl…

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据