Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in Web Technology by (47.6k points)

I get the following error:

Warning { MongoError: failed to connect to server [mongodb:27017] on first connect at Pool.<anonymous> (/Users/michaelks/Desktop/users/node_modules/mongodb-core/lib/topologies/server.js:325:35) at emitOne (events.js:96:13) at Pool.emit (events.js:188:7) at Connection.<anonymous> (/Users/michaelks/Desktop/users/node_modules/mongodb-core/lib/connection/pool.js:270:12) at Connection.g (events.js:292:16) at emitTwo (events.js:106:13) at Connection.emit (events.js:191:7) at Socket.<anonymous> (/Users/michaelks/Desktop/users/node_modules/mongodb-core/lib/connection/connection.js:173:49) at Socket.g (events.js:292:16) at emitOne (events.js:96:13) at Socket.emit (events.js:188:7) at connectErrorNT (net.js:1025:8) at _combinedTickCallback (internal/process/next_tick.js:74:11) at process._tickCallback (internal/process/next_tick.js:98:9) name: 'MongoError', message: 'failed to connect to server [mongodb:27017] on first connect' }

Even though I get this in the terminal window where I run Mongo:

2016-12-25T03:45:23.715+0100 I NETWORK [initandlisten] connection accepted from 127.0.0.1:58868 #8 (8 connections now open)

It kinda looks like there is a connection.

I've tried both

$ mongod

and

$ brew services start mongo

This is my test_helper.js

const mongoose = require('mongoose'); mongoose.connect('mongodb:localhost/users_test'); mongoose.connection .once('open', () => console.log('Good to go!')) .on('error', (error) => { 

console.warn('Warning', error); 

});

I have not specifically made the db "users_test" as I am under the impression that mongoose or mongo or both will do this on the fly.

I've tried both "localhost" and "127.0.0.1​". I'm on OSX 10.11.5 I'm running Node 7.3.0 and Mongo 3.2.9

What am I doing wrong? How do I figure out what's wrong?

1 Answer

0 votes
by (106k points)

By using the below-mentioned codes you can connect to mongodb with mongoose, you can use :

mongoose.connect('mongodb://localhost/users_test');

or

mongoose.connect('localhost/users_test');

or

mongoose.connect('localhost','users_test');

But not mongoose.connect('mongodb:localhost/users_test');it doesn't match the right hostname (mongodb instead of localhost)

Browse Categories

...