乐趣区

关于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…

退出移动版