首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将nodejs连接到mongodb

无法将nodejs连接到mongodb
EN

Stack Overflow用户
提问于 2018-02-16 19:03:22
回答 1查看 514关注 0票数 0

按照以下教程,我刚刚在DigitalOcean上创建了一个mongo数据库:当我从mongo shell访问数据库时,https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-mongodb-on-ubuntu-16-04一切正常,但我无法使用node.js连接到数据库

这是我的代码:

代码语言:javascript
复制
import mongoose from 'mongoose';
mongoose.connect('mongodb://user:pass@droplet_ip:27017/my_database', (err, res) => {
  if(err) {
    console.log(err);
  }
  else {
    console.log('connected');
  }
})

这就是错误:

代码语言:javascript
复制
{ MongoError: failed to connect to server [droplet_ip:27017] on first connect [MongoError: connection 0 to droplet_ip:27017 timed out]
    at Pool.<anonymous> (/node_modules/mongodb-core/lib/topologies/server.js:336:35)
    at emitOne (events.js:96:13)
    at Pool.emit (events.js:189:7)
    at Connection.<anonymous> (/node_modules/mongodb-core/lib/connection/pool.js:280:12)
    at Object.onceWrapper (events.js:291:19)
    at emitTwo (events.js:106:13)
    at Connection.emit (events.js:192:7)
    at Socket.<anonymous> (/node_modules/mongodb-core/lib/connection/connection.js:197:10)
    at Object.onceWrapper (events.js:291:19)
    at emitNone (events.js:86:13)
    at Socket.emit (events.js:186:7)
    at Socket._onTimeout (net.js:342:8)
    at ontimeout (timers.js:365:14)
    at tryOnTimeout (timers.js:237:5)
    at Timer.listOnTimeout (timers.js:207:5)
  name: 'MongoError',
  message: 'failed to connect to server [droplet_ip:27017] on first connect [MongoError: connection 0 to droplet_ip:27017 timed out]' }

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-02-16 20:05:55

您可能未启用 mongo port以从Remote位置访问。

首先在droplet上运行以下命令

sudo ufw启用

sudo ufw允许OpenSSH

sudo ufw允许27017

现在打开mongo配置文件并添加append your droplet ip in bindIp部分。

文件路径:

代码语言:javascript
复制
sudo nano /etc/mongod.conf

添加以下代码,使用您的服务器ip编辑droplet_ip

代码语言:javascript
复制
 . . .
net:
  port: 27017
  bindIp: 127.0.0.1, droplet_ip
 . . .

现在通过以下命令重启mongo

代码语言:javascript
复制
sudo systemctl restart mongod
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48825381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档