CNode

连接远程数据库时报错:Error: Error connecting to database: failed to connect to [127.0.0.1:27017]

Yyuedun发布于12 年前最后回复12 年前3 回复18918 浏览0 收藏

查看了mongodb中间件的源码中node_modules/mongodb/lib/mongodb/connection/connection.js有这么一行代码: this.socketOptions = socketOptions ? socketOptions : {host:'localhost', port:27017, domainSocket:false};这行代码看似像连接的本地,不知道是不是bug

查看回复

回复 (3)

Y
yuedun#1·12 年前

后来仔细查看了下,不是bug,是默认设置

C
ChoCheckTsui#2·12 年前

@hpgt 请问,那要如何链接数据库呢?我现在也遇到这个问题了。

Y
yuedun#3·12 年前
 *  连接到mongodb
 *  使用mongoose而非mongodb中间件
 **/
var mongoose = require('mongoose');
function connection(){
//    mongoose.connect("mongodb://localhost:27017/test");//只需一次连接即可
//    mongoose.connect("mongodb://user:pass@localhost:port/database");//需要验证账户
    var db = mongoose.connection;
    db.on('error',console.error.bind(console,'connection error数据库连接失败'));
    db.once('open',function callback(){
        console.log('connection success数据库连接成功');
    });
}
//exports.getConnect=getConnect;//包含到一个对象中
module.exports = connection;//直接导出这个对象 ```

以上代码是用mongoose连接mongodb的,如果使用mongoose就不要使用mongodb了,因为可能出现你那样的问题,一处连接了数据库可能另一处没有连接上就会报那个错误,目前也没有用过其他连接数据库的组件,不过觉得mongoose比mongodb好用
参与回复
登录后即可参与回复。登录