2017-02-23 47 views
1

建立一个新的项目的MongoDB正确的URL模式,我想有用于测试,开发和生产线独立的数据库:什么是用于连接多个数据库

d:/mongodb/project/test 
d:/mongodb/project/dev 
d:/mongodb/project/prod 

我这些了mongod --dbpath d:/monodb/project/<env>

当我尝试连接,我得到Error: More than 1 database name in URL

const { MongoClient } = require('mongodb') 
MongoClient.connect('mongodb://localhost:27017/project/dev') 

在API文档中给出的例子没有太多帮助

var MongoClient = require('mongodb').MongoClient, 
    test = require('assert'); 
// Connection url 
var url = 'mongodb://localhost:27017/test'; 
// Connect using MongoClient 
MongoClient.connect(url, function(err, db) { 

url连接的正确规范是什么? (或者,如果我要对这个错误的方式完全,什么是用于测试单独的数据库的最佳方法是什么?)

回答

0

您可以连接使用该驱动程序的MongoDB作为其文件中指示: http://mongodb.github.io/node-mongodb-native/2.2/quick-start/quick-start/

所以你在那里的URL是正确的。

如果你想拥有单独的数据库(也可能是与不同​​的凭据不同的主机),那么我建议你使用一个配置包: https://www.npmjs.com/package/config

这允许您定义每个环境中默认的配置如果环境变量无法与json文件匹配,将会成为一种捕捉。换句话说,NODE_ENV = PROD将映射到prod.jsonNODE_ENV =测试将映射到test.jsonNODE_ENV = [空]将映射到default.json。这是一个可能的设置。

您绝对不想为每个环境创建多个连接。这不是必需的。