开发程序报错信息:

Caused by: com.mongodb.MongoException: Executor error:

  OperationFailed: Sort operation used more than the maximum 33554432 bytes of RAM. Add an index, or specify a smaller limit.

从程序报错中可以看到是排序的内存不足。

解决办法:3.x版本

  use admin

  db.adminCommand({getParameter:"*"})    #查看参数的配置

  db.adminCommand({setParameter:1, internalQueryExecMaxBlockingSortBytes:335544320})  #修改内存为排序为320M

其他解决方案:(通过创建索引方式)  

  db.你的collection.createIndex({"你的字段": -1}),此处 -1 代表倒序,1 代表正序;

  db.你的collecton.getIndexes();

  

参考官方文档:

  https://docs.mongodb.com/manual/reference/method/cursor.sort/#cursor.sort

  https://docs.mongodb.com/manual/tutorial/optimize-query-performance-with-indexes-and-projections/

对于以上问题推荐解决方案:

  1.优化查询和索引。
  2.减少输出列(限制输出列个数)或行(如limit函数,或限制输入查询_id数量)。
  3.将查询分2步,第1步只输出_id,第2步再通过_id查明细。
  都可以解决内存中排序溢出问题。

转载于:https://www.cnblogs.com/fanxuanhui-linux/p/8324926.html

mongodb报错一例相关推荐

  1. mysql pos点是什么,MySQL 5.6 主从报错一例

    原标题:MySQL 5.6 主从报错一例 作者:八怪(高鹏) 中亦科技数据库专家 1. 问题现象 版本:MySQL 5.6,采用传统 binlog file & pos 方式配置的主从复制结构 ...

  2. MySQL 5.6 主从报错一例

    1. 问题现象 版本:MySQL 5.6,采用传统 binlog file & pos 方式配置的主从复制结构. 实例重启后,主从复制报错如上图所示. 2. 错误含义 错误分为2部分. 第一部 ...

  3. mongodb报错:Problem inserting to mongo collection: no reachable servers

    文章目录 mongodb报错:Problem inserting to mongo collection: no reachable servers mongodb报错:Problem inserti ...

  4. 解决MongoDB报错:Cannot create collection “None“ as a capped collection as it already exist

    解决MongoDB报错:Cannot create collection "None" as a capped collection as it already exist Roo ...

  5. WSL2使用Python访问Windows 10上的MongoDB报错:pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Er

    WSL2使用Python访问Windows 10上的MongoDB报错:pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Er ...

  6. sudo brew install mongodb报错

    报错信息如下: Error: Running Homebrew as root is extremely dangerous and no longer supported. As Homebrew ...

  7. php mongodb 连接失败,解决PHP使用普通账号连接mongodb报错问题

    起先使用mongodb来开发,未加上账号密码验证功能. mongodb一直正常,准备放到线上之时加上账号密码功能,整个过程如下 增加mongodb账号 增加用户a_ttlsa_com对a_ttlsa_ ...

  8. mongodb报错 An error occurred while loading navigation: topology was destroyed

    情况描述,关了电脑,第二天查询数据,报错An error occurred while loading navigation: topology was destroyed 我的数据库连接代码如下: ...

  9. [mongoDB]使用Studio 3T连接MongoDB报错Illegal argument: For input string: “23-28-g865b4f6a96“

    使用Studio 3T做MongoDB客户端连接报错,但是使用robo3t正常连接 如图,MongoDB正常启动: 但Studio 3T连接报错: 通过报错我们可以明白,这是由于MongoDB的版本中 ...

最新文章

  1. javascript--arguments callee caller
  2. python比java简单好学-是不是Python比Java更容易学,更容易就业?
  3. HTTP与HTTPS——密码学笔记(九)
  4. python读写xlsx文件_python读写Excel文件--使用xlrd模块读取,xlwt模块写入
  5. 切片slice(python)
  6. SAP UI5 application - model propagation
  7. bash 的相关配置
  8. arraylist 初始化_ArrayList(JDK1.8)源码解析
  9. jspspy database help
  10. Java的split()用法
  11. JSJquery中的循环/遍历
  12. android iptables清空,android中的iptables错误:iptables-save和iptables-restore无法正常工作...
  13. Windows 查看端口占用情况并关闭端口
  14. 京瓷p5018cdn教程_京瓷P5018cdn驱动-京瓷ECOSYS P5018cdn打印机驱动下载 v7.4.1411官方版-下载啦...
  15. cad线加粗怎么设置_CAD图形中线条如何加粗?
  16. java-->if顺序结构-->骰子游戏(小案例)
  17. 十九个国内外主流的三维GIS软件
  18. oracle重启rac2监听,RAC监听服务
  19. js基础系列之函数调用与this
  20. rpm -e卸载mysql_rpm

热门文章

  1. word文档中插入特殊字符
  2. 获取硬盘总容量,柱面数,磁道数,扇区数
  3. 简单的封装axios 不包含状态码和提示
  4. [react] 怎么在React中引入其它的UI库,例如Bootstrap
  5. 前端学习(3274):js中this的使用三
  6. react学习(59)--this.props语法糖
  7. [jQuery] jQuery和Zepto的区别?各自的使用场景?
  8. [vue] 写出你知道的表单修饰符和事件修饰符
  9. [vue-cli]vue-cli3插件有写过吗?怎么写一个代码生成插件?
  10. 前端学习(2617):删除品牌