user3330705
user3330705

Reputation: 846

How to connect mongodb clients to local Meteor MongoDB

How can I connect Robomongo (or any other mongodb client) to the mongodb instance that is created by my local Meteor application?

Upvotes: 80

Views: 57574

Answers (8)

Parth mehta
Parth mehta

Reputation: 1446

Use SSH tunneling by the following command :

ssh -L 3001:localhost:3001 user-name@host

It forwards connections from your local port 3001 to localhost:3001 on your server. Now we can simply connect to our database.

Create a Robomongo connection on your localhost and hit Test (Out of two checks, Authentication may fail) :

enter image description here

Upvotes: 2

Brunno Vodola Martins
Brunno Vodola Martins

Reputation: 1692

@imal365 answer is perfect. Just to add my insight on it:

I realized that the default Meteor Mongo port number is the port number of the application with 1 added to it (as of version 0.7.1.1). In my case, I was running Meteor on port 1337 with the command meteor --port 1337 and my Meteor Mongo port was 1338.

Upvotes: 0

Nivir
Nivir

Reputation: 31218

From terminal run following command

meteor mongo -U

That will show you the local host IP address and in which port you application is running. Now run the Robomongo and configure as following two field as you got by running the previous command

enter image description here

Upvotes: 31

Imal Hasaranga Perera
Imal Hasaranga Perera

Reputation: 10029

Easiest way to get the current configuration details is to use the following command

meteor mongo -U

This will give you the connection string

Upvotes: 36

Jackal
Jackal

Reputation: 2692

This worked for me,Before connecting make sure meteor is running. I am using Robomongo to connect. Create new connection and add Address as : localhost; port as: 3001

Upvotes: 1

Serkan Durusoy
Serkan Durusoy

Reputation: 5472

Ensure Meteor is running on localhost. Open a terminal window and run meteor command. It will start running on localhost:3000 if you have not changed to port.

While it is running, open a separate terminal window and run meteor mongo command. This will open up a MongoDB shell and tell you what port it is connecting to This is normally 3001 as of version 0.7.1.1 or 3002 if earlier. It will say something like 127.0.0.1:3001/meteor

Go to Robomongo (or your favorite mongodb client software) and create a new connection, making sure to change the connection address to localhost and the given the port number. No need to additionally define /meteor if your client does not insist on a default database.

Also as pointed out in https://stackoverflow.com/a/22023284/1064151 some drivers may need specific line endings, delimeters or other character flow. For example, ObjCMongoDB a C based driver wants the url to be 127.0.0.1:3001/ with that extra / at the end, or it won't work. So make sure you check the documentation for your driver/client.

Upvotes: 123

Nate
Nate

Reputation: 1875

I'm using ObjCMongoDB, a C based mongoDB driver. With the new update instead of using the previous 127.0.0.1:3002 to connect to my localhost running meteor's mongodb, I now need to use 127.0.0.1:3001/ with the collection name still being meteor.collection. The important change is the port from :3002 to :3001/. Remember the /, it is critical for the connection.

Upvotes: 1

Sasikanth
Sasikanth

Reputation: 3043

I'm too using Robomongo and before the latest update V0.7.1,i used port 3002 to connect,as @Serkan Durusoy suggest's for the latest update it is working for 3001 port

Upvotes: 0

Related Questions