Questions tagged «mongodb»

MongoDB是一个可扩展的,高性能,开源,面向文档的NoSQL数据库。它支持多种语言和应用程序开发平台。可以在https://dba.stackexchange.com上询问有关服务器管理的问题。



16
猫鼬模式尚未注册模型
我正在学习平均堆栈,当我尝试使用启动服务器时 npm start 我得到一个例外,说: schema hasn't been registered for model 'Post'. Use mongoose.model(name, schema) 这是我在/models/Posts.js中的代码 var mongoose = require('mongoose'); var PostSchema = new mongoose.Schema({ title: String, link: String, upvotes: { type: Number, default: 0 }, comments: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Comment' }] }); mongoose.model('Post', PostSchema); 如我所见,模式应该为模型“ Post”注册,但是什么可能导致异常抛出呢? 提前致谢。 编辑:这是异常错误 /home/arash/Documents/projects/personal/flapper-news/node_modules/mongoose/lib/index.js:323 …

2
如何在mongodb中查询子对象
我是mongodb的新手,正在尝试查询子对象。我有一个州的集合,每个州都有一个儿童城市。其中一个城市的Name属性为null,这在我的应用中导致错误。如何查询州集合以查找名称== null的子城市?
79 mongodb 

16
我可以确定字符串是否为MongoDB ObjectID吗?
我正在通过将字符串转换为BSON进行MongoDB查找。在转换之前,有没有办法让我确定我拥有的字符串是否是Mongo的有效ObjectID? 这是我当前的findByID函数的脚本。效果很好,但是如果我确定字符串不是ID,我想按其他属性查找。 db.collection "pages", (err, collection) -> collection.findOne _id: new BSON.ObjectID(id) , (err, item) -> if item res.send item else res.send 404

8
MongoDB:如何更新数组中的单个子元素(由数组中的索引引用)?
我正在尝试更新mongodb文档中数组中包含的单个子元素。我想使用其数组索引引用该字段(数组中的元素没有任何我可以保证将是唯一标识符的字段)。看起来这样应该很容易,但是我无法弄清楚语法。 这是我要在伪json中执行的操作。 之前: { _id : ..., other_stuff ... , my_array : [ { ... old content A ... }, { ... old content B ... }, { ... old content C ... } ] } 后: { _id : ..., other_stuff ... , my_array : [ { ... old …
79 arrays  mongodb 


5
无法启动/启动本地mongo数据库
我是MongoDB的新手。我目前有一个mongo db(即.bson文件的目录)的转储,并且正在尝试将其导入mongo。 我按照http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/上的说明安装了mongo 。 我目前正在尝试通过运行mongod --dbpath / path / to / my / mongodata(这是一个空目录)来测试启动本地mongo实例。 我在标准输出中得到以下内容: Thu Sep 20 09:46:01 [initandlisten] MongoDB starting : pid=1065 port=27017 dbpath=/path/to/my/mongodata/ 64-bit host=dhcp-18-111-28-92.dyn.mit.edu Thu Sep 20 09:46:01 [initandlisten] Thu Sep 20 09:46:01 [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 266 processes, 2560 …

12
与MongoDB errno 111的连接被拒绝
我有一台运行Ubuntu 12.04 LTS和MongoDB实例(服务正在运行并且可以在本地连接)的Linode服务器,我无法从外部来源连接到该服务器。 我已将这两个规则添加到我的IP表中,其中<ip address>是我要连接FROM的服务器(如本MongoDB参考中所述): iptables -A INPUT -s < ip-address > -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -d < ip-address > -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT 而且我在IP表中看到一条规则,该规则允许27017与<ip地址>之间的连接,但是当我尝试使用以下命令从<ip地址>连接到mongo数据库时: mongo databasedomain/databasename -u username -p password 我收到此错误: 2014-07-22T23:54:03.093+0000 warning: Failed …

6
在node.js中模拟数据库?
我如何在我的node.js应用程序中模拟数据库,在本例mongodb中将其用作博客REST API的后端? 当然,我可以将数据库设置为特定的testing数据库,但是我仍然会保存数据,不仅要测试我的代码,还要测试数据库,所以我实际上不是在进行单元测试,而是在进行集成测试。 那该怎么办?创建数据库包装程序作为应用程序和数据库之间的中间层,并在测试时替换DAL? // app.js var express = require('express'); app = express(), mongo = require('mongoskin'), db = mongo.db('localhost:27017/test?auto_reconnect'); app.get('/posts/:slug', function(req, res){ db.collection('posts').findOne({slug: req.params.slug}, function (err, post) { res.send(JSON.stringify(post), 200); }); }); app.listen(3000); // test.js r = require('requestah')(3000); describe("Does some testing", function() { it("Fetches a blogpost by slug", function(done) { …



4
如何在mongodb中使用$ lookup加入多个集合
我想使用聚合在MongoDB中加入两个以上的集合$lookup。有可能参加吗?给我一些例子。 这里有三个集合: users: { "_id" : ObjectId("5684f3c454b1fd6926c324fd"), "email" : "admin@gmail.com", "userId" : "AD", "userName" : "admin" } userinfo: { "_id" : ObjectId("56d82612b63f1c31cf906003"), "userId" : "AD", "phone" : "0000000000" } userrole: { "_id" : ObjectId("56d82612b63f1c31cf906003"), "userId" : "AD", "role" : "admin" }

8
如何使用docker-compose播种mongo数据库?
我正在尝试分发在几个链接的容器中运行的一组连接的应用程序,这些容器包括一个mongo数据库,该数据库需要: 分发包含一些种子数据; 允许用户添加其他数据。 理想情况下,数据还将保存在链接的数据卷容器中。 我可以mongo使用mongo不装载任何卷的基本实例(dockerhub映像:psychemedia/mongo_nomount-本质上是不带该VOLUME /data/db语句的基本mongo Dockerfile )和Dockerfile配置的方式将数据放入容器中: ADD . /files WORKDIR /files RUN mkdir -p /data/db && mongod --fork --logpath=/tmp/mongodb.log && sleep 20 && \ mongoimport --db testdb --collection testcoll --type csv --headerline --file ./testdata.csv #&& mongod --shutdown 其中与Dockerfile./testdata.csv位于同一目录(./mongo-with-data)中。 我的docker-compose配置文件包括以下内容: mongo: #image: mongo build: ./mongo-with-data ports: - "27017:27017" #Ideally …

5
在MongoDB中使用UUID代替ObjectID
出于性能原因,我们正在将数据库从MySQL迁移到MongoDB,并考虑将哪些内容用于MongoDB文档的ID。我们在使用ObjectID(这是MongoDB的默认值)还是使用UUID(这是我们到目前为止在MySQL中一直在使用的东西)之间进行辩论。到目前为止,我们必须支持以下任何一个选项的参数如下: ObjectID: ObjectID是MongoDB的默认值,我假设(尽管不确定)这是有原因的,这意味着我希望MongoDB可以比UUID更有效地处理它们,或者有其他理由更喜欢它们。我还发现了这个stackoverflow答案,其中提到使用ObjectID可以使索引更有效,但是对一些“更有效”的大小有一些度量标准将是很好的。 UUID: 我们赞成使用UUID(这是非常重要的一个)的基本论据是,几乎任何数据库都以一种或另一种方式支持UUID。这意味着,如果将来由于某种原因我们决定从MongoDB切换到其他方式,并且我们已经有了一个API,该API可以根据数据库的ID从数据库中检索文档,因为该ID可以继续,因此该API的客户端没有任何变化完全一样。如果我们要使用ObjectID,我不太确定如何将它们迁移到另一个数据库。 是否有人对这些选择中的一种可能比另一种更好?为什么有任何见解?您是否曾经在MongoDB中使用UUID代替ObjectID,如果是,您遇到的优点/问题是什么?
77 mongodb 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.