在windows服务器配置了mongo数据库并已经开启,为什么mongoose依然无法连接?

在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版本太低,还是因为其他原因?求指教

阅读 3.6k
2 个回答

我也是window系统搞的nodejs,不过我用的是express+mongoose的,为了方便开启服务器,我小小地修改了一下bin/www里面的代码:

var exec = require('child_process').exec;
exec('mongod --dbpath e:/mongodb/db', {
    cwd: 'e:/mongodb/bin'
});

在启动服务器之前先开一个子进程,让这个子进程开启mongodb服务

通常来说还是意味着mongodb服务器没有正常启动。请先检查是否有mongod进程在运行,27017端口是否有监听。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题