草庐IT

mongodb-cluster

全部标签

mongodb - 如何更改 MongoDB 的 _id 字段?

这个问题在这里已经有了答案:Howtoupdatethe_idofoneMongoDBDocument?(7个答案)关闭8年前。我正在开发一个使用MongoDB的项目,并将用户数据与他们的电子邮件一起存储为_id字段。现在意识到这是一个愚蠢的想法,我想添加一个额外的字段,假设“userid”作为这个集合的新_id字段,并将电子邮件作为常规字段。这有可能吗?谢谢

mongodb - Mongo : db. cloneCollection 在 2.4.6 中不起作用?

我正在尝试将一个集合从一个Mongo主机克隆到另一个主机:我在两台主机上安装了两个mongo实例v.2.4.6:host1和host2(host1和host2实际上是IP,但已替换为名称以简化问题)。两台主机都在同一个网络中,我可以使用以下方法从第一台服务器成功打开其他服务器的mongo控制台:在host1上:mongo--hosthost2但是当我在第一个服务器的mongoshell中做的时候:在host1上:db.cloneCollection("host2:27017","my_db.my_collection")输出是:{"ok":1}但是my_db数据库没有在host1上创建

javascript - MongoDB 和 Node js 异步编程

我正在尝试解决考试问题,所以我无法按原样发布我的考试代码。所以我进行了简化,以解决我不理解的核心概念。基本上,我不知道如何减慢Node的异步执行速度,以便我的mongo代码能够catch它。这是代码:MongoClient.connect('mongodb://localhost:27017/somedb',function(err,db){if(err)throwerr;varorphans=[];for(vari;i因此,我正在尝试创建一组不符合我的查询条件的图像。我最终得到orphans.length值为0,因为Node不等待回调完成。如何修改代码,以便在计算数组中不符合查询条件

node.js - Facebook 喜欢 mongodb 中的聊天数据库模式

我正在node.js中规划一个TCP/IP聊天服务器,我想包括Facebook/gmail聊天的几乎所有功能。我对数据库模式有两个想法——首先-1)当user1开始与user2和user3聊天时,我将检查这些用户之前聊天过的数据库(是否为这些用户创建了任何房间?)如果没有,那么我将为这些用户创建一个房间.2)我将在消息集合中保存聊天消息,在单独的文档中保存每个聊天消息,我正在考虑保存与聊天消息相关的这些详细信息消息发件人用户房间时间戳附件这种方法的问题-1)我检查用户1、用户2和用户3之前是否聊天过的方式(之前是否为这些用户创建过任何房间)在查询中需要“$all”,这很慢且可扩展性不强

mongodb - mongodb中的复合索引或单一索引

我有一个像这样的查询,90%的情况下都会被调用:db.xyz.find({"ws.wz.eId":665,"ws.ce1.id":665)还有一个像这样的被调用次数为10%的:db.xyz.find({"ws.wz.eId":111,"ws.ce2.id":111)您可以看到两个查询中两个集合的id是相同的。现在我想知道我是否应该只为“ws.wz.eId”创建一个索引,或者我是否应该创建两个复合索引:一个用于{“ws.wz.eId”,“ws.ce.id”}另一个用于{"ws.wz.eId","ws.ce2.id"}在我看来,单一索引是最好的选择;但是我可能是错的;所以我想知道创建复合索

mongodb - 仅使用 id 字段按插入日期时间对集合进行排序

我有一个数据集合,我想按插入时间对它进行排序。我没有任何其他字段来存储插入时间。但正如我foundout我可以从Id中获取这个时间。我试过这段代码:returnbookmarks.find({},{sort:{_id.getTimestamp():1},limit:10});或returnbookmarks.find({},{sort:{ObjectId(_id).getTimestamp():1},limit:10});但得到错误信息:=>Yourapplicationhaserrors.Waitingforfilechange.有什么方法可以仅使用id字段按插入日期时间对集合进行排

mongodb - Openshift - 如何运行 mongoexport 以导出 mongodb 集合

我在Openshift上为我的应用程序使用MongoDB。但我无法找到数据库文件。如果我使用mongoexport命令保存这些文件(我知道--out选项)。mongoexport实用程序在哪里?而且我无法在openshift上成功运行mongoexport。谁能帮我解决这个问题? 最佳答案 首先转到您的repo文件夹。cdapp-root/repo/然后运行下面的mongoexport命令。mongoexport--hosthostname--portport--authenticationDatabaseadmin--userna

MongoDB 文本搜索和排序依据

我们正在使用MongoDB的文本搜索,到目前为止效果很好。但是,我们还想指定结果的顺序,例如:db.items.runCommand("text",{search:"\"testitem\"","$orderby":{votes:1}});这会执行,但它不按票数排序,它仍然按分数排序。有人知道怎么做吗?谢谢! 最佳答案 MongoDB的"text"命令不支持自定义排序,因此您必须在自己的代码中按votes对结果进行排序。列出了支持的选项here. 关于MongoDB文本搜索和排序依据,我

mongodb - 连接测试 mongoDB 失败

我是mongoDB新手我尝试在win8-32位上安装mongoDB我遵循了Apress的“TheDefinitiveGuideToMongoDB2010”。我将文件粘贴到C盘根目录“mongodb-win32-i386-2.4.6”然后我在C中创建了嵌套文件夹数据/数据库,正如书中提到的。之后我打开了cmd:cdC:\mongodb-win32-i386-2.4.6cdbin\到目前为止一切顺利然后我尝试连接到mongo但是:mongocouldn'tconnecttoserver127.0.0.1:27017atsrc/mongo/shell/mongo.js:145exceptio

mongodb:仅嵌入 id 或同时嵌入 id 和名称

我是mongodb的新手,请建议我如何针对以下情况更正设计模式:我有用户集合和产品集合。产品包含ID、标题、描述、价格等信息……用户可以为产品添加书签或点赞。目前,在用户集合中,我为喜欢的产品存储1个数组,为已添加书签的产品存储1个数组。因此,当我需要查看有关1个用户的信息时,我必须读出这2个数组,然后在产品集合中搜索以获取喜欢和添加书签的产品的标题。//Usercollection{_id:12345,name:"John",liked:[123,456,789],bkmark:[123,125]}//Productcollection{_id:123,title:"computer