问题描述
在windows服务器配置了mongo数据库并已经开启,为什么mongoose依然无法连接?
var mongoose = require(’mongoose’);var Schema = mongoose.Schema;var models = require(’./models’);var db = mongoose.connect('mongodb://localhost:27017');db.connection.on('error',function(err){ console.log('链接失败'+err)})db.connection.on('open',function(){ console.log('链接成功')})
链接的时候提示fail to connect to server
前提是mongodb的服务是已经打开的
是因为win32的mongodb版本太低,还是因为其他原因?求指教
问题解答
回答1:我也是window系统搞的nodejs,不过我用的是express+mongoose的,为了方便开启服务器,我小小地修改了一下bin/www里面的代码:
var exec = require(’child_process’).exec;exec(’mongod --dbpath e:/mongodb/db’, { cwd: ’e:/mongodb/bin’});
在启动服务器之前先开一个子进程,让这个子进程开启mongodb服务
回答2:通常来说还是意味着mongodb服务器没有正常启动。请先检查是否有mongod进程在运行,27017端口是否有监听。