node.js - mongoose 连接有效,mongo shell 连接失败

标签 node.js mongodb mongoose

使用 mongoose,我使用 url 连接到数据库:

console.log(mongourl);
mongoose.connect(mongourl);

mongoose.connection.on('connected', function() {
  console.log('mongodb: connected');
});

在控制台中:

mongodb://localhost:27017/appname_development
mongodb: connected

但是当我尝试使用交互式提示进行连接时:

$ mongo mongodb://localhost:27017/appname_development

它爆炸了:

Wed Oct  2 14:43:57.390   Assertion failure _setName.size() src/mongo/client/dbclientinterface.h 211
0x10017116b 0x100135396 0x100068356 0x100129bab 0x10010f92f 0x10024b2fa 0x11b21ae06362 0x11b21ae0ce93 0x11b21ae400c9 0x11b21ae0c76e 
 0   mongo                               0x000000010017116b _ZN5mongo15printStackTraceERSo + 43
 1   mongo                               0x0000000100135396 _ZN5mongo12verifyFailedEPKcS1_j + 310
 2   mongo                               0x0000000100068356 _ZN5mongo16ConnectionString5parseERKSsRSs + 1878
 3   mongo                               0x0000000100129bab _ZN5mongo17mongoConsExternalEPNS_7V8ScopeERKN2v89ArgumentsE + 187
 4   mongo                               0x000000010010f92f _ZN5mongo7V8Scope10v8CallbackERKN2v89ArgumentsE + 175
 5   mongo                               0x000000010024b2fa _ZN2v88internalL30Builtin_HandleApiCallConstructENS0_12_GLOBAL__N_116BuiltinArgumentsILNS0_21BuiltinExtraArgumentsE1EEEPNS0_7IsolateE + 618
 6   ???                                 0x000011b21ae06362 0x0 + 19456652764002
 7   ???                                 0x000011b21ae0ce93 0x0 + 19456652791443
 8   ???                                 0x000011b21ae400c9 0x0 + 19456653000905
 9   ???                                 0x000011b21ae0c76e 0x0 + 19456652789614
Wed Oct  2 14:43:57.393 JavaScript execution failed: Error: assertion src/mongo/client/dbclientinterface.h:211 at src/mongo/shell/mongo.js:L114
exception: connect failed

最佳答案

我可以在我的工作站上复制您的问题。

如果我删除 mongodb:// 并改为:

mongo localhost:27017/appname_development

无异常地连接。我不确定命令行控制台是否支持使用 mongodb 前缀。命令行解析更简单,遵循非常基本的 Mongo class constructor (这是主机:端口)。

关于node.js - mongoose 连接有效,mongo shell 连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19144489/

相关文章:

javascript - 如何动态加载大型视频文件并将其流式传输到不发送范围 header 的 IE?

Python + MongoDB,如何动态选择DB Collection

node.js - Jasmine 测试用例不会从 mongo 保存返回

express - 如何使用 mongoose 和 express 保存复选框中的 bool 值?

node.js - Node/快捷方式仅响应特定域

node.js - Mongoose 更新有限制

mongodb - 查询值小于等于的地方

MongoDB:如何将两个集合/数据库合并为一个?

javascript - Mongo - 多个引用对象数组中的值的总和

mysql - 连接 mySQL 和 Nodejs