使用for循环时Mongodb超时

时间:2018-12-27 06:03:28

标签: mongodb

我正在尝试向集合中插入10万个文档。插入一些300-400个文档后,由于执行脚本失败而出现错误。我认为是由于超时所致。如果超时或任何解决方法。< / p>

我正在robo3T中使用以下代码。

var user=db.getCollection('User').findOne({"user_Email" : "anandkumar@yahoo.com"});


    for (i = 1; i <= 100000; i=i+1){ 

         user._id=user._id+i;

        db.getCollection('User2').insert(user);

    }

错误:

enter image description here

2 个答案:

答案 0 :(得分:1)

robo3T连接具有以下设置的高级选项卡检查

  • 最大连接空闲时间
  • 服务器选择超时
  • 套接字超时
  • 连接超时

答案 1 :(得分:0)

Mongo将自动分配一个_id,但这是一个对象,不能像这样递增。

此代码将有更好的工作机会:

var user=db.getCollection('User').findOne({"user_Email" : "anandkumar@yahoo.com"});


    for (i = 1; i <= 5000; i++){ 

         user.seq = ((user.seq) ? user.seq : 0) + i;

        db.getCollection('User2').insert(user);

    }

虽然不太确定您要达到什么目的:)